From 10e6953dc2534f33f9c098f4272238e591f35783 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 4 Jan 2024 16:12:20 -0800 Subject: [PATCH 001/124] small bug fixes --- flystar/align.py | 10 +++++----- flystar/analysis.py | 3 +++ flystar/match.py | 7 +++++-- flystar/plots.py | 25 +++++++++++++++++-------- flystar/transforms.py | 4 ++-- 5 files changed, 32 insertions(+), 17 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 3975510..e590436 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -304,7 +304,7 @@ def fit(self): self.ref_table.detections() ### Drop all stars that have 0 detections. - idx = np.where(self.ref_table['n_detect'] == 0)[0] + idx = np.where((self.ref_table['n_detect'] == 0) & (self.ref_table['ref_orig'] == False))[0] print(' *** Getting rid of {0:d} out of {1:d} junk sources'.format(len(idx), len(self.ref_table))) self.ref_table.remove_rows(idx) @@ -340,7 +340,7 @@ def fit(self): self.ref_table.detections() ### Drop all stars that have 0 detections. - idx = np.where(self.ref_table['n_detect'] == 0)[0] + idx = np.where((self.ref_table['n_detect'] == 0) & (self.ref_table['ref_orig'] == False))[0] print(' *** Getting rid of {0:d} out of {1:d} junk sources'.format(len(idx), len(self.ref_table))) self.ref_table.remove_rows(idx) @@ -1585,7 +1585,7 @@ def fit(self): self.match_and_transform(self.ref_mag_lim, self.dr_tol[nn], self.dm_tol[nn], self.outlier_tol[nn], self.trans_args[nn]) - + # Clean up the reference table # Find where stars are detected. self.ref_table.detections() @@ -1627,7 +1627,7 @@ def fit(self): self.ref_table.detections() ### Drop all stars that have 0 detections. - idx = np.where(self.ref_table['n_detect'] == 0)[0] + idx = np.where((self.ref_table['n_detect'] == 0) & (self.ref_table['ref_orig'] == False))[0] print(' *** Getting rid of {0:d} out of {1:d} junk sources'.format(len(idx), len(self.ref_table))) self.ref_table.remove_rows(idx) @@ -2445,7 +2445,7 @@ def find_transform(table1, table1_trans, table2, transModel=transforms.PolyTrans # calculate weights from *transformed* coords. This is where we use the # transformation object - if (table1_trans != None) and ('xe' in table1_trans.colnames): + if (table1_trans is not None) and ('xe' in table1_trans.colnames): x1e = table1_trans['xe'] y1e = table1_trans['ye'] diff --git a/flystar/analysis.py b/flystar/analysis.py index 85d7ef3..9f4f801 100644 --- a/flystar/analysis.py +++ b/flystar/analysis.py @@ -276,6 +276,9 @@ def rename_after_flystar(star_tab, label_dat_file, new_copy=True, dr_tol=0.05, d idx_lab, idx_star, dr, dm = match.match(x_lab, y_lab, m_lab, star_tab['x0'], star_tab['y0'], star_tab['m0'], dr_tol=dr_tol, dm_tol=dm_tol, verbose=verbose) + #print('idx_lab:') + #for iii in range(len(idx_lab)): + # print(label_tab["name"][idx_lab[iii]], star_tab["name"][idx_star[iii]]) print('Renaming {0:d} out of {1:d} stars'.format(len(idx_lab), len(star_tab))) diff --git a/flystar/match.py b/flystar/match.py index 67a04f3..ae1c86b 100644 --- a/flystar/match.py +++ b/flystar/match.py @@ -279,8 +279,11 @@ def match(x1, y1, m1, x2, y2, m2, dr_tol, dm_tol=None, verbose=True): idxs2 = np.ones(x1.size, dtype=int) * -1 # The matching will be done using a KDTree. - kdt = KDT(coords2, balanced_tree=False) - + #kdt = KDT(coords2, balanced_tree=False) + #KDTree handling of NaNs throws error in scipy v1.10.1 and newer. + #Replace NaNs in coords2 with zero (0). -SKT + kdt = KDT(np.where(np.isfinite(coords2), coords2, 0), balanced_tree=False) + # This returns the number of neighbors within the specified # radius. We will use this to find those stars that have no or one # match and deal with them easily. The more complicated conflict diff --git a/flystar/plots.py b/flystar/plots.py index 7abde6e..060c644 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -2361,6 +2361,10 @@ def plot_stars(tab, star_names, NcolMax=2, epoch_array = None, figsize=(15,25), epoch_array : None, array Array of the epoch indicies to plot. If None, plots all epochs. """ + + def rs(x): + return x.reshape(len(x)) + print( 'Creating residuals plots for star(s):' ) print( star_names ) @@ -2505,7 +2509,12 @@ def plot_stars(tab, star_names, NcolMax=2, epoch_array = None, figsize=(15,25), plt.plot(time, fitLineX + fitSigX, 'b--') plt.plot(time, fitLineX - fitSigX, 'b--') if not color_time: - plt.errorbar(time, x, yerr=xerr.reshape(len(xerr),), fmt='k.') + #print('x:',x) + #print('xerr:',xerr) + #print('xerr_reshaped:', xerr.reshape(len(xerr),)) + #plt.errorbar(time, x, yerr=xerr.reshape(len(xerr)), fmt='k.') + plt.errorbar(rs(time), rs(x), yerr=rs(xerr), fmt='k.') + #plt.errorbar(time, x, yerr=xerr, fmt='k.') else: norm = colors.Normalize(vmin=0, vmax=1, clip=True) mapper = cm.ScalarMappable(norm=norm, cmap='hsv') @@ -2537,7 +2546,7 @@ def plot_stars(tab, star_names, NcolMax=2, epoch_array = None, figsize=(15,25), plt.plot(time, fitLineY + fitSigY, 'b--') plt.plot(time, fitLineY - fitSigY, 'b--') if not color_time: - plt.errorbar(time, y, yerr=yerr.reshape(len(yerr),), fmt='k.') + plt.errorbar(rs(time), rs(y), yerr=rs(yerr), fmt='k.') else: norm = colors.Normalize(vmin=0, vmax=1, clip=True) mapper = cm.ScalarMappable(norm=norm, cmap='hsv') @@ -2567,7 +2576,7 @@ def plot_stars(tab, star_names, NcolMax=2, epoch_array = None, figsize=(15,25), plt.plot(time, fitLineM + fitSigM, 'g--') plt.plot(time, fitLineM - fitSigM, 'g--') if not color_time: - plt.errorbar(time, m, yerr=merr.reshape(len(merr),), fmt='k.') + plt.errorbar(rs(time), rs(m), yerr=rs(merr), fmt='k.') else: norm = colors.Normalize(vmin=0, vmax=1, clip=True) mapper = cm.ScalarMappable(norm=norm, cmap='hsv') @@ -2599,7 +2608,7 @@ def plot_stars(tab, star_names, NcolMax=2, epoch_array = None, figsize=(15,25), plt.plot(time, fitSigX*1e3, 'b--') plt.plot(time, -fitSigX*1e3, 'b--') if not color_time: - plt.errorbar(time, (x - fitLineX)*1e3, yerr=xerr.reshape(len(xerr),)*1e3, fmt='k.') + plt.errorbar(rs(time), rs(x - fitLineX)*1e3, yerr=rs(xerr)*1e3, fmt='k.') else: norm = colors.Normalize(vmin=0, vmax=1, clip=True) mapper = cm.ScalarMappable(norm=norm, cmap='hsv') @@ -2627,7 +2636,7 @@ def plot_stars(tab, star_names, NcolMax=2, epoch_array = None, figsize=(15,25), plt.plot(time, fitSigY*1e3, 'b--') plt.plot(time, -fitSigY*1e3, 'b--') if not color_time: - plt.errorbar(time, (y - fitLineY)*1e3, yerr=yerr.reshape(len(yerr),)*1e3, fmt='k.') + plt.errorbar(rs(time), rs(y - fitLineY)*1e3, yerr=rs(yerr)*1e3, fmt='k.') else: norm = colors.Normalize(vmin=0, vmax=1, clip=True) mapper = cm.ScalarMappable(norm=norm, cmap='hsv') @@ -2655,7 +2664,7 @@ def plot_stars(tab, star_names, NcolMax=2, epoch_array = None, figsize=(15,25), plt.plot(time, fitSigM*1e3, 'g--') plt.plot(time, -fitSigM*1e3, 'g--') if not color_time: - plt.errorbar(time, (m - fitLineM), yerr=merr.reshape(len(merr),), fmt='k.') + plt.errorbar(rs(time), rs(m - fitLineM), yerr=rs(merr), fmt='k.') else: norm = colors.Normalize(vmin=0, vmax=1, clip=True) mapper = cm.ScalarMappable(norm=norm, cmap='hsv') @@ -2682,8 +2691,8 @@ def plot_stars(tab, star_names, NcolMax=2, epoch_array = None, figsize=(15,25), paxes = plt.subplot(Nrows, Ncols, ind) if not color_time: - plt.errorbar(x,y, xerr=xerr.reshape(len(xerr),), - yerr=yerr.reshape(len(yerr),), fmt='k.') + plt.errorbar(rs(x),rs(y), xerr=rs(xerr), + yerr=rs(yerr), fmt='k.') else: sc = plt.scatter(x, y, s=0, c=dtime, vmin=0, vmax=1, cmap='hsv') clb = plt.colorbar(sc) diff --git a/flystar/transforms.py b/flystar/transforms.py index 0a1885a..ca2f7eb 100755 --- a/flystar/transforms.py +++ b/flystar/transforms.py @@ -288,7 +288,7 @@ def __init__(self, order, px, py, pxerr=None, pyerr=None, mag_offset=0.0): px_dict = PolyTransform.make_param_dict(px, self.poly_order, isY=False) py_dict = PolyTransform.make_param_dict(py, self.poly_order, isY=True) - fixed_params = {'c0_0': False, 'c1_0': True, 'c1_1': True} + fixed_params = {'c0_0': False, 'c1_0': True, 'c0_1': True} self.px = models.Polynomial2D(self.poly_order, **px_dict, fixed=fixed_params) self.py = models.Polynomial2D(self.poly_order, **py_dict, fixed=fixed_params) else: @@ -580,7 +580,7 @@ def derive_transform(cls, x, y, xref, yref, order, m=None, mref=None, init_gx = PolyTransform.make_param_dict(init_gx, poly_order, isY=False) init_gy = PolyTransform.make_param_dict(init_gy, poly_order, isY=True) - fixed_params = {'c0_0': False, 'c1_0': True, 'c1_1': True, 'c0_1': True} + fixed_params = {'c0_0': False, 'c1_0': True, 'c0_1': True} p_init_x = models.Polynomial2D(poly_order, **init_gx, fixed=fixed_params) p_init_y = models.Polynomial2D(poly_order, **init_gy, fixed=fixed_params) else: From 428c17da960521a1c116b74c90fb34d2d7cfe820 Mon Sep 17 00:00:00 2001 From: Jessica Lu Date: Tue, 13 Feb 2024 13:14:03 -0800 Subject: [PATCH 002/124] Adding some tests... not functional yet --- flystar/tests/test_align.py | 173 ++++++++++++++++++++++++++++++++++++ 1 file changed, 173 insertions(+) diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 026a8b1..45741d7 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -214,6 +214,7 @@ def test_MosaicSelfRef_vel(): return + def test_MosaicToRef(): make_fake_starlists_poly1_vel(seed=42) @@ -273,7 +274,76 @@ def test_MosaicToRef(): assert np.any(np.not_equal(msc.ref_table['vx'], ref_list['vx'])) return msc + +def test_MosaicToRef_acc(): + make_fake_starlists_poly1_acc(seed=42) + ref_file = 'random_acc_ref.fits' + list_files = ['random_acc_0.fits', + 'random_acc_1.fits', + 'random_acc_2.fits', + 'random_acc_3.fits'] + + ref_list = Table.read(ref_file) + + # Convert velocities to arcsec/yr + ref_list['vx'] *= 1e-3 + ref_list['vy'] *= 1e-3 + ref_list['vxe'] *= 1e-3 + ref_list['vye'] *= 1e-3 + + # Convert accelerations to arcsec/yr**2 + ref_list['ax'] *= 1e-3 + ref_list['ay'] *= 1e-3 + ref_list['axe'] *= 1e-3 + ref_list['aye'] *= 1e-3 + + # Switch our list to a "increasing to the West" list. + ref_list['x0'] *= -1.0 + ref_list['vx'] *= -1.0 + ref_list['ax'] *= -1.0 + + lists = [starlists.StarList.read(lf) for lf in list_files] + + msc = align.MosaicToRef(ref_list, lists, iters=2, + dr_tol=[0.2, 0.1], dm_tol=[1, 0.5], + trans_class=transforms.PolyTransform, + trans_args={'order': 2}, + motion_class=motion_model.Accel, + use_vel=True, + update_ref_orig=False, verbose=False) + + msc.fit() + + # Check our status columns + assert 'use_in_trans' in msc.ref_table.colnames + assert 'used_in_trans' in msc.ref_table.colnames + assert 'ref_orig' in msc.ref_table.colnames + assert msc.ref_table['use_in_trans'].shape == msc.ref_table['x0'].shape + assert msc.ref_table['used_in_trans'].shape == msc.ref_table['x'].shape + + # The velocities should be almost the same as the input + # velocities since update_ref_orig == False. + np.testing.assert_almost_equal(msc.ref_table['vx'], ref_list['vx'], 5) + np.testing.assert_almost_equal(msc.ref_table['vy'], ref_list['vy'], 5) + + + ########## + # Align and let velocities be free. + ########## + msc.update_ref_orig = True + msc.fit() + + # The velocities should be almost the same (but not as close as before) + # as the input velocities since update_ref == False. + np.testing.assert_almost_equal(msc.ref_table['vx'], ref_list['vx'], 1) + np.testing.assert_almost_equal(msc.ref_table['vy'], ref_list['vy'], 1) + + # Also double check that they aren't exactly the same for the reference stars. + assert np.any(np.not_equal(msc.ref_table['vx'], ref_list['vx'])) + + return msc + def make_fake_starlists_shifts(): N_stars = 200 @@ -463,6 +533,109 @@ def make_fake_starlists_poly1_vel(seed=-1): new_lis.write('random_vel_{0:d}.fits'.format(ss), overwrite=True) return (xy_trans, mag_trans) + +def make_fake_starlists_poly1_acc(seed=-1): + # If seed >=0, then set random seed to that value + if seed >= 0: + np.random.seed(seed=seed) + + N_stars = 200 + + x0 = np.random.rand(N_stars) * 10.0 # arcsec (increasing to East) + y0 = np.random.rand(N_stars) * 10.0 # arcsec + x0e = np.random.randn(N_stars) * 5.0e-4 # arcsec + y0e = np.random.randn(N_stars) * 5.0e-4 # arcsec + vx = np.random.randn(N_stars) * 5.0 # mas / yr + vy = np.random.randn(N_stars) * 5.0 # mas / yr + vxe = np.random.randn(N_stars) * 0.1 # mas / yr + vye = np.random.randn(N_stars) * 0.1 # mas / yr + ax = np.random.randn(N_stars) * 0.5 # mas / yr^2 + ay = np.random.randn(N_stars) * 0.5 # mas / yr^2 + axe = np.random.randn(N_stars) * 0.01 # mas / yr^2 + aye = np.random.randn(N_stars) * 0.01 # mas / yr^2 + m0 = (np.random.rand(N_stars) * 8) + 9 # mag + m0e = np.random.randn(N_stars) * 0.05 # mag + t0 = np.ones(N_stars) * 2019.5 + + # Make all the errors positive + x0e = np.abs(x0e) + y0e = np.abs(y0e) + m0e = np.abs(m0e) + vxe = np.abs(vxe) + vye = np.abs(vye) + axe = np.abs(axe) + aye = np.abs(aye) + + name = ['star_{0:03d}'.format(ii) for ii in range(N_stars)] + + # Make an StarList + lis = starlists.StarList([name, m0, m0e, + x0, x0e, y0, y0e, + vx, vxe, vy, vye, + ax, axe, ay, aye, + t0], + names = ('name', 'm0', 'm0e', + 'x0', 'x0e', 'y0', 'y0e', + 'vx', 'vxe', 'vy', 'vye', + 'ax', 'axe', 'ay', 'aye', + 't0')) + + sdx = np.argsort(m0) + lis = lis[sdx] + + # Save original positions as reference (1st) list + # in a StarList format (with velocities). + lis.write('random_acc_ref.fits', overwrite=True) + + ########## + # Propogate to new times and distort. + ########## + # Make 4 new starlists with different epochs and transformations. + times = [2018.5, 2019.5, 2020.5, 2021.5] + xy_trans = [[[ 6.5, 0.99, 1e-5], [ 10.1, 1e-5, 0.99]], + [[100.3, 0.98, 1e-5], [ 50.5, 9e-6, 1.001]], + [[ 0.0, 1.00, 0.0], [ 0.0, 0.0, 1.0]], + [[250.0, 0.97, 2e-5], [-250.0, 1e-5, 1.001]]] + mag_trans = [0.1, 0.4, 0.0, -0.3] + + # Convert into pixels (undistorted) with the following info. + scale = 0.01 # arcsec / pix + shift = [1.0, 1.0] # pix + + for ss in range(len(times)): + dt = times[ss] - lis['t0'] + + x = lis['x0'] + (lis['vx']/1e3) * dt + (lis['ax']/1e3) * dt**2 + y = lis['y0'] + (lis['vy']/1e3) * dt + (lis['ay']/1e3) * dt**2 + t = np.ones(N_stars) * times[ss] + + # Convert into pixels + xp = (x / -scale) + shift[0] # -1 from switching to increasing to West (right) + yp = (y / scale) + shift[1] + xpe = lis['x0e'] / scale + ype = lis['y0e'] / scale + + # Distort the positions + trans = transforms.PolyTransform(1, xy_trans[ss][0], xy_trans[ss][1], mag_offset=mag_trans[ss]) + xd, yd = trans.evaluate(xp, yp) + md = trans.evaluate_mag(lis['m0']) + + # Perturb with small errors (0.1 pix) + xd += np.random.randn(N_stars) * 0.1 + yd += np.random.randn(N_stars) * 0.1 + md += np.random.randn(N_stars) * 0.02 + xde = xpe + yde = ype + mde = lis['m0e'] + + # Save the new list as a starlist. + new_lis = starlists.StarList([lis['name'], md, mde, xd, xde, yd, yde, t], + names=('name', 'm', 'me', 'x', 'xe', 'y', 'ye', 't')) + + new_lis.write('random_acc_{0:d}.fits'.format(ss), overwrite=True) + + return (xy_trans, mag_trans) + def test_MosaicToRef_hst_me(): """ From d7be289a07132653cb162305c7081dfee5e1c490 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 30 May 2024 16:47:37 -0700 Subject: [PATCH 003/124] minor bug fixes --- flystar/analysis.py | 61 +++++++++++++++++- flystar/plots.py | 152 ++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 197 insertions(+), 16 deletions(-) diff --git a/flystar/analysis.py b/flystar/analysis.py index 9f4f801..9289343 100644 --- a/flystar/analysis.py +++ b/flystar/analysis.py @@ -54,6 +54,57 @@ def query_gaia(ra, dec, search_radius=30.0, table_name='gaiadr2'): return gaia +def check_gaia_parallaxes(ra,dec,search_radius=10.0,table_name='gaiadr3',target='(unnamed)', + file_ext=''): + """ + Query the Gaia database at the specified location + and with the specified search radius, and plot + parallaxes. + + Input + ---------- + ra : string + R.A. in hours in the format such as '17:45:40.3' + + dec : string + Dec. in degrees in the format such as '-29:00:28.0' + + search_radius : float + The search radius in arcseconds. + + Optional Input + -------------- + table_name : string + Options are 'gaiadr2' or 'gaiadr3' + """ + # Query Gaia + gaia = query_gaia(ra,dec,search_radius=search_radius,table_name=table_name) + # Set up reasonable histogram bins + plim0,plim1 = np.min(gaia['parallax']),np.max(gaia['parallax']) + pplim0,pplim1 = np.min(gaia['parallax']/gaia['parallax_error']),np.max(gaia['parallax']/gaia['parallax_error']) + binwidth = 1 + pbins = np.arange(np.floor(plim0),np.ceil(plim1)+binwidth,binwidth) + ppbins = np.arange(np.floor(pplim0),np.ceil(pplim1)+binwidth,binwidth) + # Find number where plx/plx_err>3 + p_perr = (gaia['parallax']/gaia['parallax_error']).compressed() + nppe3 = sum((p_perr>3).astype(int)) + nppen3 = sum((p_perr<-3).astype(int)) + print(table_name,'stars within',search_radius,'\" with plx/plx_err>3: ', nppe3, ' of ', len(gaia['parallax'])) + print(table_name,'stars within',search_radius,'\" with plx/plx_err<-3: ', nppen3, ' of ', len(gaia['parallax'])) + # Plot + plt.subplots(nrows=1,ncols=2,figsize=(12,6)) + plt.subplot(121) + plt.xlabel('parallax (mas)'); plt.ylabel('N stars') + plt.hist(gaia['parallax'],bins=pbins) + plt.yscale('log') + plt.title(table_name+' parallax histograms, '+str(search_radius)+'\" radius around '+target, loc='left') + plt.subplot(122) + plt.xlabel('parallax/parallax_error') + plt.hist(gaia['parallax']/gaia['parallax_error'],bins=ppbins) + plt.yscale('log') + plt.tight_layout() + plt.savefig('gaiaplx'+file_ext+'.png') + def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2): """ @@ -118,6 +169,13 @@ def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2) gaia_new['vy'][idx] = 0.0 gaia_new['vye'][idx] = 0.0 + #macy additions to try to fix wild magnitude values + gaia_new['ruwe'] = gaia['ruwe'] + try: + gaia_new = gaia_new[~gaia_new['m'].mask] + except: + print('no invalig mags') + gaia_new = gaia_new.filled() #convert masked colunms to regular columns if targets_dict != None: @@ -130,11 +188,10 @@ def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2) if dr[idx] < match_dr_max: gaia_new['name'][idx] = targ_name - print('Found match for: ', targ_name) + print('Found match for: ', targ_name, ' - ',gaia_new['source_id'][idx]) return gaia_new - def run_flystar(): test_file = '/u/jlu/work/microlens/OB150211/a_2018_10_19/a_ob150211_2018_10_19/lis/stars_matched2.fits' diff --git a/flystar/plots.py b/flystar/plots.py index 060c644..077f215 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -13,6 +13,8 @@ import math import astropy from astropy.io import ascii +from astropy.coordinates import SkyCoord +from astropy import units as u #################################################### # Code for making diagnostic plots for astrometry @@ -2221,23 +2223,23 @@ def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50): return -def plot_chi2_dist_per_epoch(tab, Ndetect, xlim, ylim = [-1, 1], target_idx = 0): +def plot_chi2_dist_per_epoch(tab, Ndetect, mlim=[14,21], ylim = [-1, 1], target_idx = 0): """ tab = flystar table Ndetect = Number of epochs star detected in """ - diffX_arr = -99 * np.ones((len(tab['xe']), Ndetect)) - diffY_arr = -99 * np.ones((len(tab['xe']), Ndetect)) - errX_arr = -99 * np.ones((len(tab['xe']), Ndetect)) - errY_arr = -99 * np.ones((len(tab['xe']), Ndetect)) - sigX_arr = -99 * np.ones((len(tab['xe']), Ndetect)) - sigY_arr = -99 * np.ones((len(tab['xe']), Ndetect)) - m_arr = -99 * np.ones((len(tab['xe']), Ndetect)) + diffX_arr = np.nan * np.ones((len(tab['xe']), Ndetect)) + diffY_arr = np.nan * np.ones((len(tab['xe']), Ndetect)) + errX_arr = np.nan * np.ones((len(tab['xe']), Ndetect)) + errY_arr = np.nan * np.ones((len(tab['xe']), Ndetect)) + sigX_arr = np.nan * np.ones((len(tab['xe']), Ndetect)) + sigY_arr = np.nan * np.ones((len(tab['xe']), Ndetect)) + m_arr = np.nan * np.ones((len(tab['xe']), Ndetect)) for ii in range(len(tab['xe'])): # Ignore the NaNs fnd = np.argwhere(~np.isnan(tab['xe'][ii,:])) - if len(fnd) == Ndetect: + if len(fnd) == Ndetect and tab['use_in_trans'][ii]: time = tab['t'][ii, fnd] x = tab['x'][ii, fnd] y = tab['y'][ii, fnd] @@ -2280,14 +2282,17 @@ def plot_chi2_dist_per_epoch(tab, Ndetect, xlim, ylim = [-1, 1], target_idx = 0) if target_idx is not None: ax2.plot(m_arr[target_idx, ii], sigX_arr[target_idx, ii], 's', color='black', ms=5) ax2.plot(m_arr[target_idx, ii], sigY_arr[target_idx, ii], 'o', color='black', ms=5) - ax2.set_xlim(xlim[0], xlim[1]) + ax2.set_xlim(mlim[0], mlim[1]) ax2.set_ylim(-5, 5) ax2.axhline(y=0, color='black', alpha=0.9, zorder=1000) + ax2.axhline(y=np.nanmean(sigX_arr[:, ii]), color='tab:blue', alpha=0.9,linestyle='dotted', zorder=1001) + ax2.axhline(y=np.nanmean(sigY_arr[:, ii]), color='tab:orange', alpha=0.9,linestyle='dotted', zorder=1002) ax2.set_xlabel('mag') ax2.set_ylabel('sigma') ax2.set_title('Epoch {0}'.format(ii)) ax2.legend() + #print(errX_arr[:, ii]) ax3.errorbar(m_arr[:, ii], diffX_arr[:, ii]*1E3, yerr=errX_arr[:, ii]*1E3, marker='s', label = 'X', ls='none', color='tab:blue', alpha=0.4, ms=5) ax3.errorbar(m_arr[:, ii], diffY_arr[:, ii]*1E3, yerr=errY_arr[:, ii]*1E3, @@ -2297,13 +2302,134 @@ def plot_chi2_dist_per_epoch(tab, Ndetect, xlim, ylim = [-1, 1], target_idx = 0) marker='s', ls='none', color='black', ms=5) ax3.errorbar(m_arr[target_idx, ii], diffY_arr[target_idx, ii]*1E3, yerr=errY_arr[target_idx, ii]*1E3, marker='o', ls='none', color='black', ms=5) - ax3.set_xlim(xlim[0], xlim[1]) + ax3.set_xlim(mlim[0], mlim[1]) ax3.set_ylim(ylim[0], ylim[1]) ax3.axhline(y=0, color='black', alpha=0.9, zorder=1000) + ax3.axhline(y=np.nanmean(diffX_arr[:, ii]*1E3), color='tab:blue', alpha=0.9,linestyle='dotted', zorder=1001) + ax3.axhline(y=np.nanmean(diffY_arr[:, ii]*1E3), color='tab:orange', alpha=0.9,linestyle='dotted', zorder=1002) ax3.set_xlabel('mag') ax3.set_ylabel('residual (mas)') return + +def plot_chi2_ecliptic_per_epoch(tab, Ndetect,ra,dec, mlim=[14,21], ylim = [-1, 1], target_idx = 0): + """ + tab = flystar table + Ndetect = Number of epochs star detected in + """ + diffX_arr = -99 * np.ones((len(tab['xe']), Ndetect)) + diffY_arr = -99 * np.ones((len(tab['xe']), Ndetect)) + errX_arr = 99 * np.ones((len(tab['xe']), Ndetect)) + errY_arr = 99 * np.ones((len(tab['xe']), Ndetect)) + sigX_arr = -99 * np.ones((len(tab['xe']), Ndetect)) + sigY_arr = -99 * np.ones((len(tab['xe']), Ndetect)) + m_arr = -99 * np.ones((len(tab['xe']), Ndetect)) + + rad_to_as = 180/np.pi * 60 * 60 + deg_to_as = 60 * 60 + def eq_to_ec(ra,dec): + e = 23.446 * np.pi/180 + sinb = np.sin(dec)*np.cos(e) - np.cos(dec)*np.sin(e)*np.sin(ra) + cosb = np.cos(np.arcsin(sinb)) + cosg = np.cos(ra)*np.cos(dec)/cosb + sing = (np.sin(dec)*np.sin(e) + np.cos(dec)*np.cos(e)*np.sin(ra))/cosb + g,b = np.arctan2(sing,cosg)*180/np.pi,np.arcsin(sinb)*180/np.pi + g = 360+g + return g*deg_to_as,b*deg_to_as + coord0 = SkyCoord(ra=ra,dec=dec,unit=(u.hourangle, u.deg),frame='icrs') + + for ii in range(len(tab['xe'])): + # Ignore the NaNs + fnd = np.argwhere(~np.isnan(tab['xe'][ii,:])) + if len(fnd) == Ndetect and tab['use_in_trans'][ii]: + time = tab['t'][ii, fnd] + x = tab['x'][ii, fnd] + y = tab['y'][ii, fnd] + m = tab['m'][ii, fnd] + vx = tab['vx'][ii] + vy = tab['vy'][ii] + lambda_0,beta_0 = eq_to_ec((coord0.ra - tab['x0'][ii]*u.arcsec).radian, + (coord0.dec + tab['y0'][ii]*u.arcsec).radian) + x1 = coord0.ra - u.arcsec*x + y1 = coord0.dec + u.arcsec*y + ra_rad,dec_rad = x1.radian, y1.radian + lambda_obs,beta_obs = eq_to_ec(ra_rad,dec_rad) + x2 = coord0.ra - tab['x0'][ii]*u.arcsec - (time-tab['t0'][ii])*vx*u.arcsec + y2 = coord0.dec + tab['y0'][ii]*u.arcsec + (time-tab['t0'][ii])*vy*u.arcsec + ra_rad,dec_rad = x2.radian, y2.radian + lambda_pm,beta_pm = eq_to_ec(ra_rad,dec_rad) + + xerr = tab['xe'][ii, fnd] + yerr = tab['ye'][ii, fnd] + + dt = tab['t'][ii, fnd] - tab['t0'][ii] + fitLineX = lambda_pm + fitLineY = beta_pm + + diffX = lambda_obs - fitLineX + diffY = beta_obs - fitLineY + sigX = diffX / xerr + sigY = diffY / yerr + + diffX_arr[ii] = diffX.reshape(Ndetect,) + diffY_arr[ii] = diffY.reshape(Ndetect,) + errX_arr[ii] = xerr.reshape(Ndetect,) + errY_arr[ii] = yerr.reshape(Ndetect,) + sigX_arr[ii] = sigX.reshape(Ndetect,) + sigY_arr[ii] = sigY.reshape(Ndetect,) + m_arr[ii] = m.reshape(Ndetect,) + + ts_folded = tab['t'][0]%1 + i_sort = np.argsort(ts_folded) + print(ts_folded,i_sort) + for ii in i_sort: +# fig, (ax1, ax2, ax3) = plt.subplots(1, 3, figsize=(15, 4), +# gridspec_kw={'width_ratios': [1, 2, 2]}) +# plt.subplots_adjust(wspace=0.5) +# ax1.hist(sigX_arr[:, ii], label = 'X', histtype='step', bins=np.linspace(-10, 10)) +# ax1.hist(sigY_arr[:, ii], label = 'Y', histtype='step', bins=np.linspace(-10, 10)) +# ax1.set_xlabel('sigma') +# ax1.legend() + + fig, (ax2, ax3) = plt.subplots(1, 2, figsize=(14, 4)) + plt.subplots_adjust(wspace=0.25) + + '''ax2.plot(m_arr[:, ii], sigX_arr[:, ii], 's', label = 'lambda', color='tab:blue', alpha=0.4, ms=5) + ax2.plot(m_arr[:, ii], sigY_arr[:, ii], 'o', label = 'beta', color='tab:orange', alpha=0.4, ms=5) + if target_idx is not None: + ax2.plot(m_arr[target_idx, ii], sigX_arr[target_idx, ii], 's', color='black', ms=5) + ax2.plot(m_arr[target_idx, ii], sigY_arr[target_idx, ii], 'o', color='black', ms=5) + ax2.set_xlim(mlim[0], mlim[1]) + ax2.set_ylim(-5, 5) + ax2.axhline(y=0, color='black', alpha=0.9, zorder=1000) + ax2.set_xlabel('mag') + ax2.set_ylabel('sigma')''' + ax2.set_title('Epoch {0}'.format(ii)+', phase='+str(tab['t'][0][ii]%1)[:5]) + + #print(errX_arr[:, ii]) + ax2.errorbar(m_arr[:, ii], diffX_arr[:, ii]*1E3, yerr=errX_arr[:, ii]*1E3, + marker='s', label = 'lambda', ls='none', color='tab:blue', alpha=0.4, ms=5) + ax3.errorbar(m_arr[:, ii], diffY_arr[:, ii]*1E3, yerr=errY_arr[:, ii]*1E3, + marker='o', label = 'beta', ls='none', color='tab:orange', alpha=0.4, ms=5) + if target_idx is not None: + #print('target',m_arr[target_idx, ii],diffX_arr[target_idx, ii]*1E3,diffY_arr[target_idx, ii]*1E3) + ax2.errorbar(m_arr[target_idx, ii], diffX_arr[target_idx, ii]*1E3, yerr=errX_arr[target_idx, ii]*1E3, + marker='s', ls='none', color='black', ms=5) + ax3.errorbar(m_arr[target_idx, ii], diffY_arr[target_idx, ii]*1E3, yerr=errY_arr[target_idx, ii]*1E3, + marker='o', ls='none', color='black', ms=5) + ax2.legend() + ax3.legend() + ax2.set_xlim(mlim[0], mlim[1]) + ax3.set_xlim(mlim[0], mlim[1]) + ax2.set_ylim(ylim[0], ylim[1]) + ax3.set_ylim(ylim[0], ylim[1]) + ax2.axhline(y=0, color='black', alpha=0.9, zorder=1000) + ax3.axhline(y=0, color='black', alpha=0.9, zorder=1000) + ax2.set_xlabel('mag') + ax2.set_ylabel('residual (mas)') + ax3.set_xlabel('mag') + ax3.set_ylabel('residual (mas)') + return def plot_chi2_dist_mag(tab, Ndetect, mlim=40, n_bins=30): """ @@ -2760,8 +2886,6 @@ def rs(x): return - - def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_list = None, figsize=(15,25), color_time=False, resTicRng=None): """ @@ -3319,7 +3443,7 @@ def plot_sky(stars_tab, label=label, picker=4) #for legend - if label is not '_nolegend_': + if label != '_nolegend_': line.set_label(str(label)) epochs_legend.append(line) From 295309b2304412e9b5357501cf4f882c4d941caf Mon Sep 17 00:00:00 2001 From: Jessica Lu Date: Tue, 11 Jun 2024 11:08:21 -0700 Subject: [PATCH 004/124] stub for new motion model --- flystar/motion_model.py | 128 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 128 insertions(+) create mode 100644 flystar/motion_model.py diff --git a/flystar/motion_model.py b/flystar/motion_model.py new file mode 100644 index 0000000..1333fa2 --- /dev/null +++ b/flystar/motion_model.py @@ -0,0 +1,128 @@ +from astropy.modeling import models, fitting +import numpy as np +from abc import ABC + +class MotionModel(ABC): + # Fit paramters: Shared fit parameters + fitter_param_names = [] + + # Fixed parameters: These are parameters that are required for the model, but are not + # fit quantities. For example, RA and Dec in a parallax model. + fixed_param_names = [] + + # Non-fit paramters: Custom paramters that will not be fit. + # These parameters should be derived from the fit parameters and + # they must exist as a variable on the model object + optional_param_names = [] + + def __init__(self, *args, **kwargs): + # Check that required phot_params are proper arrays. + # If not, then make them arrays of len(1). + for param in self.fitter_param_names: + param_var = getattr(self, param) + if not isinstance(param_var, (list, np.ndarray)): + setattr(self, param, np.array([param_var])) + + return + + def get_pos_at_time(self, t): + #return x, y + pass + + def fit_pos_at_time(self, t, x, y, xe, ye, update=True): + """ + Fit the input positions on the sky and errors + to determine new parameters for this motion model (MM). + Current MM parameters are used as the initial guess. + Best-fit parameters will be returned along with uncertainties + and updated if update=True. + """ + #return params, param_errors + pass + +class Linear(MotionModel): + """ + A 2D linear motion model for a star on the sky. + """ + fitter_param_names = ['x0', 'vx', 'y0', 'vy'] + + def __init__(x0, vx, y0, vy, t0): + self.x0 = x0 + self.vx = vx + self.y0 = y0 + self.vy = vy + self.t0 = t0 + + # Must call after setting parameters. + # This checks for proper parameter formatting. + super().__init__() + + self.poly_order = 1 + self.px = models.Polynomial1D(self.poly_order, c0=self.x0, c1=self.vx) + self.py = models.Polynomial1D(self.poly_order, c0=self.y0, c1=self.vy) + + return + + def get_pos_at_time(self, t): + dt = t - self.t0 + + x = self.px(dt) + y = self.py(dt) + + return x, y + + def fit_pos_at_time(self, t, x, y, xe, ye, update=False, fixed_t0=False): + fitter = fitting.LevMarLSQFitter() + + # Determine the new optimal t0. + # Unless t0 is fixed, calculate the t0 for the stars. + if fixed_t0 is False: + t_weight = 1.0 / np.hypot(xe, ye) + t0 = np.average(t, weights=t_weight) + elif fixed_t0 is True: + t0 = self.t0 + else: + t0 = fixed_t0 + + dt = t - t0 + + px_new = fitter(self.px, dt, x, weights=1/xe) + px_cov = fitter.fit_into['param_cov'] + + py_new = fitter(self.py, dt, y, weights=1/ye) + py_cov = fitter.fit_into['param_cov'] + + x0 = px.c0 + vx = px.c1 + y0 = py.c0 + vy = py.c1 + + px_param_errs = dict(zip(self.px.param_names, np.diag(px_cov)**0.5)) + py_param_errs = dict(zip(self.py.param_names, np.diag(py_cov)**0.5)) + + x0e = px_param_errors['c0'] + vxe = px_param_errors['c1'] + y0e = py_param_errors['c0'] + vye = py_param_errors['c1'] + + if update: + self.px = px_new + self.py = py_new + + self.x0 = self.px.c0 + self.vx = self.px.c1 + self.y0 = self.py.c0 + self.vy = self.py.c1 + + params = [x0, vx, y0, vy, t0] + param_errors = [x0e, vxe, y0e, vye] + + return params, param_errors + + + + + + + + From c69a630bfdfd400ae84923d32e0f38855f4264e6 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 17 Jun 2024 17:28:47 -0700 Subject: [PATCH 005/124] some initial basic implementation of MotionModel --- flystar/motion_model.py | 121 +++++++++++++++++++++++++++-------- flystar/startables.py | 137 +++++++++++++--------------------------- 2 files changed, 141 insertions(+), 117 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 1333fa2..1d4c8b9 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -29,7 +29,7 @@ def get_pos_at_time(self, t): #return x, y pass - def fit_pos_at_time(self, t, x, y, xe, ye, update=True): + def fit_motion_model(self, t, x, y, xe, ye, update=True): """ Fit the input positions on the sky and errors to determine new parameters for this motion model (MM). @@ -40,13 +40,53 @@ def fit_pos_at_time(self, t, x, y, xe, ye, update=True): #return params, param_errors pass +class Fixed(MotionModel): + """ + A non-moving motion model for a star on the sky. + """ + fitter_param_names = ['x0','y0'] + + def __init__(self, x0, y0, t0): + self.x0 = x0 + self.y0 = y0 + self.t0 = t0 + + # Must call after setting parameters. + # This checks for proper parameter formatting. + super().__init__() + + return + + def get_pos_at_time(self,t): + return self.x0, self.y0 + + def fit_motion_model(self, dt, x, y, xe, ye, update=False, fixed_t0=False): + # Handle single data point case + if len(x)==1: + return [x[0],y[0]],[xe[0],ye[0]] + + #TODO it seems like sometimes it's weighted by std and sometimes by var - confirm which to do here + x0 = np.average(x, weights=1/xe**2) + x0e = np.sqrt(np.average((x-x0)**2,weights=1/xe)) + y0 = np.average(y, weights=1/ye**2) + y0e = np.sqrt(np.average((y-y0)**2,weights=1/ye)) + + params = [x0, y0] + param_errors = [x0e, y0e] + + if update: + self.x0 = x0 + self.y0 = y0 + + return params, param_errors + class Linear(MotionModel): """ A 2D linear motion model for a star on the sky. """ fitter_param_names = ['x0', 'vx', 'y0', 'vy'] - def __init__(x0, vx, y0, vy, t0): + def __init__(self, x0, vx, y0, vy, t0): self.x0 = x0 self.vx = vx self.y0 = y0 @@ -71,39 +111,70 @@ def get_pos_at_time(self, t): return x, y - def fit_pos_at_time(self, t, x, y, xe, ye, update=False, fixed_t0=False): + def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=False): fitter = fitting.LevMarLSQFitter() - # Determine the new optimal t0. - # Unless t0 is fixed, calculate the t0 for the stars. - if fixed_t0 is False: - t_weight = 1.0 / np.hypot(xe, ye) - t0 = np.average(t, weights=t_weight) - elif fixed_t0 is True: - t0 = self.t0 - else: - t0 = fixed_t0 - - dt = t - t0 + # Handle 2-data point case + # TODO is this the best way to handle this case ? + if len(x)==2: + x0 = np.average(x, weights=1.0/xe**2) + y0 = np.average(y, weights=1.0/ye**2) + dx = np.diff(x)[0] + dy = np.diff(y)[0] + dt_diff = np.diff(dt)[0] + x0e = np.abs(dx) / 2**0.5 + y0e = np.abs(dy) / 2**0.5 + vx = dx / dt_diff + vy = dy / dt_diff + vxe = 0.0 + vye = 0.0 + return [x0, vx, y0, vy],[x0e, vxe, y0e, vye] px_new = fitter(self.px, dt, x, weights=1/xe) - px_cov = fitter.fit_into['param_cov'] + px_cov = fitter.fit_info['param_cov'] py_new = fitter(self.py, dt, y, weights=1/ye) - py_cov = fitter.fit_into['param_cov'] + py_cov = fitter.fit_info['param_cov'] x0 = px.c0 vx = px.c1 y0 = py.c0 vy = py.c1 - - px_param_errs = dict(zip(self.px.param_names, np.diag(px_cov)**0.5)) - py_param_errs = dict(zip(self.py.param_names, np.diag(py_cov)**0.5)) - - x0e = px_param_errors['c0'] - vxe = px_param_errors['c1'] - y0e = py_param_errors['c0'] - vye = py_param_errors['c1'] + + # Run the bootstrap + if bootstrap > 0: + edx = np.arange(N_good, dtype=int) + + fit_x0_b = np.zeros(bootstrap, dtype=float) + fit_vx_b = np.zeros(bootstrap, dtype=float) + fit_y0_b = np.zeros(bootstrap, dtype=float) + fit_vy_b = np.zeros(bootstrap, dtype=float) + + for bb in range(bootstrap): + bdx = np.random.choice(edx, N_good) + + px_b = fitter(self.px, dt[bdx], x[bdx], weights=1/xe[bdx]) + px_b_cov = fitter.fit_info['param_cov'] + py_b = fitter(self.py, dt[bdx], y[bdx], weights=1/ye[bdx]) + py_b_cov = fitter.fit_info['param_cov'] + + fit_x0_b[bb] = px_b.c0 + fit_vx_b[bb] = px_b.c1 + fit_y0_b[bb] = py_b.c0 + fit_vy_b[bb] = py_b.c1 + + # Save the errors from the bootstrap + x0e = fit_x0_b.std() + vxe = fit_vx_b.std() + y0e = fit_y0_b.std() + vye = fit_vy_b.std() + else: + px_param_errs = dict(zip(self.px.param_names, np.diag(px_cov)**0.5)) + py_param_errs = dict(zip(self.py.param_names, np.diag(py_cov)**0.5)) + x0e = px_param_errors['c0'] + vxe = px_param_errors['c1'] + y0e = py_param_errors['c0'] + vye = py_param_errors['c1'] if update: self.px = px_new @@ -114,7 +185,7 @@ def fit_pos_at_time(self, t, x, y, xe, ye, update=False, fixed_t0=False): self.y0 = self.py.c0 self.vy = self.py.c1 - params = [x0, vx, y0, vy, t0] + params = [x0, vx, y0, vy] param_errors = [x0e, vxe, y0e, vye] return params, param_errors diff --git a/flystar/startables.py b/flystar/startables.py index 6641800..42ffbb8 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -7,6 +7,7 @@ import pdb import time import copy +import motion_model class StarTable(Table): @@ -29,6 +30,9 @@ class StarTable(Table): Optional table columns (input as keywords): ------------------------- + motion_model : 1D numpy.array with shape = N_stars + string indicating motion model type for each star + xe : 2D numpy.array with shape = (N_stars, N_lists) Position uncertainties of N_stars in each of N_lists in the x dimension. @@ -67,7 +71,7 @@ class StarTable(Table): print(t['name'][0:10]) # print the first 10 star names print(t['x'][0:10, 0]) # print x from the first epoch/list/column for the first 10 stars """ - def __init__(self, *args, ref_list=0, **kwargs): + def __init__(self, *args, ref_list=0, motion_model_default='linear', **kwargs): """ """ @@ -159,6 +163,10 @@ def __init__(self, *args, ref_list=0, **kwargs): self.add_column(Column(data=kwargs[arg], name=arg)) if arg == 'name_in_list': self['name_in_list'] = self['name_in_list'].astype('U20') + if arg == 'motion_model': + self['motion_model'] = self['motion_model'].astype('U20') + if 'motion_model' not in kwargs: + self['motion_model'] = np.repeat(motion_model_default, len(self['names'])) return @@ -603,9 +611,6 @@ def fit_velocities(self, bootstrap=0, fixed_t0=False, verbose=False, def fit_velocity_for_star(self, ss, bootstrap=False, fixed_t0=False, mask_val=None, mask_lists=False): - def poly_model(time, *params): - pos = np.polynomial.polynomial.polyval(time, params) - return pos # Make a mask of invalid (NaN) values and a user-specified invalid value. x = np.ma.masked_invalid(self['x'][ss, :].data) @@ -712,104 +717,52 @@ def poly_model(time, *params): if fixed_t0 is False: t_weight = 1.0 / np.hypot(xe, ye) t0 = np.average(t, weights=t_weight) + elif fixed_t0 is True: + t0 = self.t0 else: - t0 = fixed_t0[ss] + t0 = fixed_t0 dt = t - t0 self['t0'][ss] = t0 self['n_vfit'][ss] = N_good - - # Catch the case where all the times are identical - if (dt == dt[0]).all(): - wgt_x = (1.0/xe)**2 - wgt_y = (1.0/ye)**2 - - self['x0'][ss] = np.average(x, weights=wgt_x) - self['y0'][ss] = np.average(y, weights=wgt_y) - self['x0e'][ss] = np.sqrt(np.average((x - self['x0'][ss])**2, weights=wgt_x)) - self['y0e'][ss] = np.sqrt(np.average((y - self['y0'][ss])**2, weights=wgt_x)) - + + # OK next, we need to decide which motion_model to fit. + motion_model_assigned = self['motion_model'][ss] + if motion_model_assigned=='fixed' or N_good==1 or (dt == dt[0]).all(): + # Either 'fixed' is selected, or is required because + # of no time-domain data + motion_model_use = 'fixed' + elif motion_model_assigned=='linear' and N_good>1: + # If 'linear' is selected and enough data exists + # to model linear motion + motion_model_use = 'linear' + self['motion_model'][ss] = motion_model_use + + if motion_model_use=='fixed': + mod = motion_model.Fixed(x[0],y[0],t[0]) + params,param_errs = mod.fit_motion_model(dt, x, y, xe, ye) + self['x0'][ss] = params[0] + self['y0'][ss] = params[1] + self['x0e'][ss] = param_errs[0] + self['y0e'][ss] = param_errs[1] self['vx'][ss] = 0.0 self['vy'][ss] = 0.0 self['vxe'][ss] = 0.0 self['vye'][ss] = 0.0 - return - - # Catch the case where we have enough measurements to actually - # fit a velocity! - if N_good > 2: - vx_opt, vx_cov = curve_fit(poly_model, dt.compressed(), x.compressed(), p0=p0x, sigma=xe.compressed(), - absolute_sigma=True) - vy_opt, vy_cov = curve_fit(poly_model, dt.compressed(), y.compressed(), p0=p0y, sigma=ye.compressed(), - absolute_sigma=True) - - self['x0'][ss] = vx_opt[0] - self['vx'][ss] = vx_opt[1] - self['y0'][ss] = vy_opt[0] - self['vy'][ss] = vy_opt[1] - - # Run the bootstrap - if bootstrap > 0: - edx = np.arange(N_good, dtype=int) - - fit_x0_b = np.zeros(bootstrap, dtype=float) - fit_vx_b = np.zeros(bootstrap, dtype=float) - fit_y0_b = np.zeros(bootstrap, dtype=float) - fit_vy_b = np.zeros(bootstrap, dtype=float) - - for bb in range(bootstrap): - bdx = np.random.choice(edx, N_good) - - vx_opt_b, vx_cov_b = curve_fit(poly_model, dt[bdx].compressed(), x[bdx].compressed(), p0=vx_opt, sigma=xe[bdx].compressed(), - absolute_sigma=True) - vy_opt_b, vy_cov_b = curve_fit(poly_model, dt[bdx].compressed(), y[bdx].compressed(), p0=vy_opt, sigma=ye[bdx].compressed(), - absolute_sigma=True) - - fit_x0_b[bb] = vx_opt_b[0] - fit_vx_b[bb] = vx_opt_b[1] - fit_y0_b[bb] = vy_opt_b[0] - fit_vy_b[bb] = vy_opt_b[1] - - # Save the errors from the bootstrap - self['x0e'][ss] = fit_x0_b.std() - self['vxe'][ss] = fit_vx_b.std() - self['y0e'][ss] = fit_y0_b.std() - self['vye'][ss] = fit_vy_b.std() - else: - vx_err = np.sqrt(vx_cov.diagonal()) - vy_err = np.sqrt(vy_cov.diagonal()) - - self['x0e'][ss] = vx_err[0] - self['vxe'][ss] = vx_err[1] - self['y0e'][ss] = vy_err[0] - self['vye'][ss] = vy_err[1] - - elif N_good == 2: - # Note nough epochs to fit a velocity. - self['x0'][ss] = np.average(x, weights=1.0/xe**2) - self['y0'][ss] = np.average(y, weights=1.0/ye**2) - - dx = np.diff(x)[0] - dy = np.diff(y)[0] - dt_diff = np.diff(dt)[0] - - self['x0e'][ss] = np.abs(dx) / 2**0.5 - self['y0e'][ss] = np.abs(dy) / 2**0.5 - self['vx'][ss] = dx / dt_diff - self['vy'][ss] = dy / dt_diff - self['vxe'][ss] = 0.0 - self['vye'][ss] = 0.0 - - else: - # N_good == 1 case - self['n_vfit'][ss] = 1 - self['x0'][ss] = x - self['y0'][ss] = y - - if 'xe' in self.colnames: - self['x0e'] = xe - self['y0e'] = ye + elif motion_model_use=='linear': + mod = motion_model.Linear(x[0], (x[-1]-x[0])/(t[-1]-t[0]), + y[0], (y[-1]-y[0])/(t[-1]-t[0]), + t[0]) + params,param_errs = mod.fit_motion_model(dt, x, y, xe, ye, bootstrap=bootstrap) + self['x0'][ss] = params[0] + self['vx'][ss] = params[1] + self['y0'][ss] = params[2] + self['vy'][ss] = params[3] + self['x0e'][ss] = param_errs[0] + self['vxe'][ss] = param_errs[1] + self['y0e'][ss] = param_errs[2] + self['vye'][ss] = param_errs[3] return From ca19b994b3fd6327e163d254148f174de0440835 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 18 Jun 2024 14:47:16 -0700 Subject: [PATCH 006/124] motion model debugging --- flystar/align.py | 7 +------ flystar/conftest.py | 6 +++--- flystar/motion_model.py | 45 ++++++++++++++++++++++++----------------- flystar/startables.py | 42 +++++++++++--------------------------- 4 files changed, 42 insertions(+), 58 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 3975510..abdb54c 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -4,6 +4,7 @@ from flystar import plots from flystar.starlists import StarList from flystar.startables import StarTable +from flystar.motion_model import motion_model_col_names from astropy.table import Table, Column, vstack import datetime import copy @@ -13,12 +14,6 @@ import warnings from astropy.utils.exceptions import AstropyUserWarning -# Keep a list of columns that are "aggregated" motion model terms. -motion_model_col_names = ['x0', 'x0e', 'y0', 'y0e', - 'vx', 'vxe', 'vy', 'vye', - 'ax', 'axe', 'ay', 'aye', - 't0', 'm0', 'm0e', 'use_in_trans'] - class MosaicSelfRef(object): def __init__(self, list_of_starlists, ref_index=0, iters=2, dr_tol=[1, 1], dm_tol=[2, 1], diff --git a/flystar/conftest.py b/flystar/conftest.py index 672b273..d38dfc8 100644 --- a/flystar/conftest.py +++ b/flystar/conftest.py @@ -31,9 +31,9 @@ def pytest_configure(config): PYTEST_HEADER_MODULES.pop('Pandas', None) PYTEST_HEADER_MODULES['scikit-image'] = 'skimage' - from . import __version__ - packagename = os.path.basename(os.path.dirname(__file__)) - TESTED_VERSIONS[packagename] = __version__ + #from . import __version__ + #packagename = os.path.basename(os.path.dirname(__file__)) + #TESTED_VERSIONS[packagename] = __version__ # Uncomment the last two lines in this block to treat all DeprecationWarnings as # exceptions. For Astropy v2.0 or later, there are 2 additional keywords, diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 1d4c8b9..2476eb2 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -2,6 +2,13 @@ import numpy as np from abc import ABC +# Keep a list of columns that are "aggregated" motion model terms. +motion_model_col_names = ['x0', 'x0e', 'y0', 'y0e', + 'vx', 'vxe', 'vy', 'vye', + 'ax', 'axe', 'ay', 'aye', + 't0', 'm0', 'm0e', + 'motion_model', 'use_in_trans'] + class MotionModel(ABC): # Fit paramters: Shared fit parameters fitter_param_names = [] @@ -111,7 +118,7 @@ def get_pos_at_time(self, t): return x, y - def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=False): + def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): fitter = fitting.LevMarLSQFitter() # Handle 2-data point case @@ -136,14 +143,14 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=False): py_new = fitter(self.py, dt, y, weights=1/ye) py_cov = fitter.fit_info['param_cov'] - x0 = px.c0 - vx = px.c1 - y0 = py.c0 - vy = py.c1 + x0 = px_new.c0.value + vx = px_new.c1.value + y0 = py_new.c0.value + vy = py_new.c1.value # Run the bootstrap if bootstrap > 0: - edx = np.arange(N_good, dtype=int) + edx = np.arange(len(x), dtype=int) fit_x0_b = np.zeros(bootstrap, dtype=float) fit_vx_b = np.zeros(bootstrap, dtype=float) @@ -151,17 +158,17 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=False): fit_vy_b = np.zeros(bootstrap, dtype=float) for bb in range(bootstrap): - bdx = np.random.choice(edx, N_good) + bdx = np.random.choice(edx, len(x)) px_b = fitter(self.px, dt[bdx], x[bdx], weights=1/xe[bdx]) px_b_cov = fitter.fit_info['param_cov'] py_b = fitter(self.py, dt[bdx], y[bdx], weights=1/ye[bdx]) py_b_cov = fitter.fit_info['param_cov'] - fit_x0_b[bb] = px_b.c0 - fit_vx_b[bb] = px_b.c1 - fit_y0_b[bb] = py_b.c0 - fit_vy_b[bb] = py_b.c1 + fit_x0_b[bb] = px_b.c0.value + fit_vx_b[bb] = px_b.c1.value + fit_y0_b[bb] = py_b.c0.value + fit_vy_b[bb] = py_b.c1.value # Save the errors from the bootstrap x0e = fit_x0_b.std() @@ -171,19 +178,19 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=False): else: px_param_errs = dict(zip(self.px.param_names, np.diag(px_cov)**0.5)) py_param_errs = dict(zip(self.py.param_names, np.diag(py_cov)**0.5)) - x0e = px_param_errors['c0'] - vxe = px_param_errors['c1'] - y0e = py_param_errors['c0'] - vye = py_param_errors['c1'] + x0e = px_param_errs['c0'] + vxe = px_param_errs['c1'] + y0e = py_param_errs['c0'] + vye = py_param_errs['c1'] if update: self.px = px_new self.py = py_new - self.x0 = self.px.c0 - self.vx = self.px.c1 - self.y0 = self.py.c0 - self.vy = self.py.c1 + self.x0 = self.px.c0.value + self.vx = self.px.c1.value + self.y0 = self.py.c0.value + self.vy = self.py.c1.value params = [x0, vx, y0, vy] param_errors = [x0e, vxe, y0e, vye] diff --git a/flystar/startables.py b/flystar/startables.py index 42ffbb8..7a0f4a3 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -7,7 +7,7 @@ import pdb import time import copy -import motion_model +from flystar import motion_model class StarTable(Table): @@ -166,7 +166,7 @@ def __init__(self, *args, ref_list=0, motion_model_default='linear', **kwargs): if arg == 'motion_model': self['motion_model'] = self['motion_model'].astype('U20') if 'motion_model' not in kwargs: - self['motion_model'] = np.repeat(motion_model_default, len(self['names'])) + self['motion_model'] = np.repeat(motion_model_default, len(self['name'])) return @@ -549,31 +549,18 @@ def fit_velocities(self, bootstrap=0, fixed_t0=False, verbose=False, msg = 'Starting startable.fit_velocities for {0:d} stars with n={1:d} bootstrap' print(msg.format(N_stars, bootstrap)) + col_list_float = ['x0','vx','y0','vy','x0e','vxe','y0e','vye','t0'] + col_list_int = ['n_vfit'] + col_list = col_list_float+col_list_int # Clean/remove up old arrays. - if 'x0' in self.colnames: self.remove_column('x0') - if 'vx' in self.colnames: self.remove_column('vx') - if 'y0' in self.colnames: self.remove_column('y0') - if 'vy' in self.colnames: self.remove_column('vy') - if 'x0e' in self.colnames: self.remove_column('x0e') - if 'vxe' in self.colnames: self.remove_column('vxe') - if 'y0e' in self.colnames: self.remove_column('y0e') - if 'vye' in self.colnames: self.remove_column('vye') - if 't0' in self.colnames: self.remove_column('t0') - if 'n_vfit' in self.colnames: self.remove_column('n_vfit') + for col in col_list: + if col in self.colnames: self.remove_column(col) # Define output arrays for the best-fit parameters. - self.add_column(Column(data = np.zeros(N_stars, dtype=float), name = 'x0')) - self.add_column(Column(data = np.zeros(N_stars, dtype=float), name = 'vx')) - self.add_column(Column(data = np.zeros(N_stars, dtype=float), name = 'y0')) - self.add_column(Column(data = np.zeros(N_stars, dtype=float), name = 'vy')) - - self.add_column(Column(data = np.zeros(N_stars, dtype=float), name = 'x0e')) - self.add_column(Column(data = np.zeros(N_stars, dtype=float), name = 'vxe')) - self.add_column(Column(data = np.zeros(N_stars, dtype=float), name = 'y0e')) - self.add_column(Column(data = np.zeros(N_stars, dtype=float), name = 'vye')) - - self.add_column(Column(data = np.zeros(N_stars, dtype=float), name = 't0')) - self.add_column(Column(data = np.zeros(N_stars, dtype=int), name = 'n_vfit')) + for col in col_list_float: + self.add_column(Column(data = np.zeros(N_stars, dtype=float), name = col)) + for col in col_list_int: + self.add_column(Column(data = np.zeros(N_stars, dtype=int), name = col)) self.meta['n_vfit_bootstrap'] = bootstrap @@ -708,10 +695,6 @@ def fit_velocity_for_star(self, ss, bootstrap=False, fixed_t0=False, t = t[good] xe = xe[good] ye = ye[good] - - # np.polynomial ordering - p0x = np.array([x.mean(), 0.0]) - p0y = np.array([y.mean(), 0.0]) # Unless t0 is fixed, calculate the t0 for the stars. if fixed_t0 is False: @@ -720,9 +703,8 @@ def fit_velocity_for_star(self, ss, bootstrap=False, fixed_t0=False, elif fixed_t0 is True: t0 = self.t0 else: - t0 = fixed_t0 + t0 = fixed_t0[ss] dt = t - t0 - self['t0'][ss] = t0 self['n_vfit'][ss] = N_good From 1c3c7a6f61e79534e55945048a6c043dbca053fc Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 18 Jun 2024 16:27:19 -0700 Subject: [PATCH 007/124] motion model debugging --- flystar/startables.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flystar/startables.py b/flystar/startables.py index 7a0f4a3..df1ea05 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -708,7 +708,7 @@ def fit_velocity_for_star(self, ss, bootstrap=False, fixed_t0=False, self['t0'][ss] = t0 self['n_vfit'][ss] = N_good - # OK next, we need to decide which motion_model to fit. + # Decide which motion_model to fit. motion_model_assigned = self['motion_model'][ss] if motion_model_assigned=='fixed' or N_good==1 or (dt == dt[0]).all(): # Either 'fixed' is selected, or is required because From 1bfea27c00d42e0f801b85d3ae4ed3cb9aa4790c Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 24 Jun 2024 16:17:00 -0700 Subject: [PATCH 008/124] continuing motion model work --- flystar/startables.py | 8 ++++---- flystar/tests/test_startable.py | 4 ++++ 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/flystar/startables.py b/flystar/startables.py index 90e50d7..9733600 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -854,14 +854,14 @@ def fit_velocities_all_detected(self, weighting='var', use_scipy=False, absolute valid_x = ~np.any(x.mask, axis=1) valid_y = ~np.any(y.mask, axis=1) detected_in_all_epochs = np.logical_and.reduce(( - valid_x, valid_y, valid_xe, valid_ye - )) + valid_x, valid_y, valid_xe, valid_ye)) else: detected_in_all_epochs = np.logical_and(valid_xe, valid_ye) # Fit velocities - vel_result = fit_velocity(self[detected_in_all_epochs], weighting=weighting, use_scipy=use_scipy, absolute_sigma=absolute_sigma, epoch_cols=epoch_cols, art_star=art_star) + vel_result = fit_velocity(self[detected_in_all_epochs], weighting=weighting, use_scipy=use_scipy, + absolute_sigma=absolute_sigma, epoch_cols=epoch_cols, art_star=art_star) vel_result = Table.from_pandas(vel_result) @@ -885,4 +885,4 @@ def fit_velocities_all_detected(self, weighting='var', use_scipy=False, absolute if return_result: return vel_result else: - return \ No newline at end of file + return diff --git a/flystar/tests/test_startable.py b/flystar/tests/test_startable.py index 4f8b654..fc90be6 100644 --- a/flystar/tests/test_startable.py +++ b/flystar/tests/test_startable.py @@ -301,6 +301,7 @@ def test_fit_velocities(): tab2 = tab[10000:10100] tab3 = tab[-100:] tab = table.vstack((tab1, tab2, tab3)) + tab.meta = tab1.meta tab.fit_velocities(verbose=True) @@ -359,6 +360,7 @@ def test_fit_velocities(): # Test bootstrap ########## tab_b = table.vstack((tab1, tab2, tab3)) + tab_b.meta = tab1.meta tab_b.fit_velocities(verbose=True, bootstrap=50) assert tab_b.meta['n_vfit_bootstrap'] == 50 @@ -418,6 +420,7 @@ def test_fit_velocities_1epoch(): tab2 = tab[10000:10100] tab3 = tab[-100:] tab_1 = table.vstack((tab1, tab2, tab3)) + tab_1.meta = tab1.meta tab_1.fit_velocities(verbose=False) @@ -461,6 +464,7 @@ def test_fit_velocities_2epoch(): tab2 = tab[10000:10100] tab3 = tab[-100:] tab_2 = table.vstack((tab1, tab2, tab3)) + tab_2.meta=tab1.meta tab_2.fit_velocities(verbose=False) From f05a628d29fa42d63ad74c339b24a3cbf38d3e73 Mon Sep 17 00:00:00 2001 From: Jessica Lu Date: Mon, 19 Aug 2024 12:49:00 -0700 Subject: [PATCH 009/124] Cleaning some bugs in test_startable for the new motion model --- flystar/motion_model.py | 10 +- flystar/startables.py | 171 +++++++++++++++++++++----------- flystar/tests/test_startable.py | 113 +++++++++++---------- 3 files changed, 177 insertions(+), 117 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 2476eb2..9d6806c 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -52,6 +52,7 @@ class Fixed(MotionModel): A non-moving motion model for a star on the sky. """ fitter_param_names = ['x0','y0'] + fixed_param_names = ['t0'] def __init__(self, x0, y0, t0): self.x0 = x0 @@ -92,8 +93,9 @@ class Linear(MotionModel): A 2D linear motion model for a star on the sky. """ fitter_param_names = ['x0', 'vx', 'y0', 'vy'] + fixed_param_names = ['t0'] - def __init__(self, x0, vx, y0, vy, t0): + def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025): self.x0 = x0 self.vx = vx self.y0 = y0 @@ -199,7 +201,11 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): - +def get_motion_model_param_names(motion_model_list, with_errors=False): + return list_of_parameters + +def get_all_motion_model_param_names(with_errors=False): + return list_of_parameters diff --git a/flystar/startables.py b/flystar/startables.py index 9733600..13d3267 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -73,7 +73,7 @@ class StarTable(Table): print(t['name'][0:10]) # print the first 10 star names print(t['x'][0:10, 0]) # print x from the first epoch/list/column for the first 10 stars """ - def __init__(self, *args, ref_list=0, motion_model_default='linear', **kwargs): + def __init__(self, *args, ref_list=0, motion_model_default='Linear', **kwargs): """ """ @@ -581,25 +581,52 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b msg = 'Starting startable.fit_velocities for {0:d} stars with n={1:d} bootstrap' print(msg.format(N_stars, bootstrap)) - col_list_float = ['x0','vx','y0','vy','x0e','vxe','y0e','vye','chi2_vx','chi2_vy','t0'] - col_list_int = ['n_vfit'] - col_list = col_list_float+col_list_int - # Clean/remove up old arrays. - for col in col_list: - if col in self.colnames: self.remove_column(col) - + # + # Fill table with all possible motion model parameter names as new + # columns. Make everything empty for now. + # + all_motion_models = np.unique(self['motion_model']).tolist() + if 'Fixed' not in all_motion_models: + all_motion_models.append('Fixed') + if 'Linear' not in all_motion_models: + all_motion_models.append('Linear') + + new_col_list = [] + for aa in range(len(all_motion_models)): + mmod = getattr(motion_model, all_motion_models[aa]) + + # Add fit parameters and errors. + param_names = mmod.fitter_param_names + param_err_names = [par + '_err' for par in param_names] + + new_col_list += param_names + new_col_list += param_err_names + + # Append goodness of fit metrics and t0. + new_col_list += ['chi2_x', 'chi2_y', 't0'] + + # Remove repeat column names. Returns a numpy array. + new_col_list = np.unique(new_col_list) + # Define output arrays for the best-fit parameters. - for col in col_list_float: - self.add_column(Column(data = np.zeros(N_stars, dtype=float), name = col)) - for col in col_list_int: - self.add_column(Column(data = np.zeros(N_stars, dtype=int), name = col)) + for col in new_col_list: + # Clean/remove up old arrays. + if col in self.colnames: self.remove_column(col) - self.meta['n_vfit_bootstrap'] = bootstrap + # Add column + self.add_column(Column(data = np.full(N_stars, np.nan, dtype=float), name = col)) + # Add a column to keep track of the number of points used in a fit. + self['n_fit'] = 0 + + # Preserve the number of bootstraps that will be run (if any). + self.meta['n_fit_bootstrap'] = bootstrap + # (FIXME: Do we need to catch the case where there's a single *unmasked* epoch?) # Catch the case when there is only a single epoch. Just return 0 velocity # and the same input position for the x0/y0. if self['x'].shape[1] == 1: + self['motion_model'] = 'Fixed' self['x0'] = self['x'][:,0] self['y0'] = self['y'][:,0] @@ -609,10 +636,10 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b self['t0'] = self.meta['list_times'][0] if 'xe' in self.colnames: - self['x0e'] = self['xe'][:,0] - self['y0e'] = self['ye'][:,0] + self['x0_err'] = self['xe'][:,0] + self['y0_err'] = self['ye'][:,0] - self['n_vfit'] = 1 + self['n_fit'] = 1 return @@ -620,22 +647,27 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b # This is slow; but robust. if show_progress: for ss in tqdm(range(N_stars)): - self.fit_velocity_for_star(ss, weighting=weighting, use_scipy=use_scipy, absolute_sigma=absolute_sigma, bootstrap=bootstrap, fixed_t0=fixed_t0, - mask_val=mask_val, mask_lists=mask_lists) + self.fit_velocity_for_star(ss, weighting=weighting, use_scipy=use_scipy, + absolute_sigma=absolute_sigma, bootstrap=bootstrap, fixed_t0=fixed_t0, + mask_val=mask_val, mask_lists=mask_lists) else: for ss in range(N_stars): - self.fit_velocity_for_star(ss, weighting=weighting, use_scipy=use_scipy, absolute_sigma=absolute_sigma, bootstrap=bootstrap, fixed_t0=fixed_t0, - mask_val=mask_val, mask_lists=mask_lists, ) + self.fit_velocity_for_star(ss, weighting=weighting, use_scipy=use_scipy, + absolute_sigma=absolute_sigma, bootstrap=bootstrap, fixed_t0=fixed_t0, + mask_val=mask_val, mask_lists=mask_lists) if verbose: stop_time = time.time() print('startable.fit_velocities runtime = {0:.0f} s for {1:d} stars'.format(stop_time - start_time, N_stars)) return - def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, absolute_sigma=True, bootstrap=False, fixed_t0=False, + def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, + absolute_sigma=True, bootstrap=False, fixed_t0=False, mask_val=None, mask_lists=False): + # # Make a mask of invalid (NaN) values and a user-specified invalid value. + # x = np.ma.masked_invalid(self['x'][ss, :].data) y = np.ma.masked_invalid(self['y'][ss, :].data) if mask_val: @@ -659,6 +691,9 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, absolute_si if not isinstance(mask_lists, list): raise RuntimeError('mask_lists needs to be a list.') + # + # Assign the appropriate positional errors + # if 'xe' in self.colnames: # Make a mask of invalid (NaN) values and a user-specified invalid value. xe = np.ma.masked_invalid(self['xe'][ss, :].data) @@ -706,7 +741,9 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, absolute_si if not isinstance(mask_lists, list): raise RuntimeError('mask_lists needs to be a list.') + # # Make a mask of invalid (NaN) values and a user-specified invalid value. + # if 't' in self.colnames: t = np.ma.masked_invalid(self['t'][ss, :].data) else: @@ -726,10 +763,13 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, absolute_si # Throw a warning if mask_lists is not a list if not isinstance(mask_lists, list): raise RuntimeError('mask_lists needs to be a list.') - + # For inconsistent masks, mask the star if any of the values are masked. new_mask = np.logical_or.reduce((t.mask, x.mask, y.mask, xe.mask, ye.mask)) + + # # Figure out where we have detections (as indicated by error columns) + # good = np.where((xe != 0) & (ye != 0) & np.isfinite(xe) & np.isfinite(ye) & np.isfinite(x) & np.isfinite(y) & ~new_mask)[0] @@ -746,8 +786,10 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, absolute_si t = t[good] xe = xe[good] ye = ye[good] - + + # # Unless t0 is fixed, calculate the t0 for the stars. + # if fixed_t0 is False: t_weight = 1.0 / np.hypot(xe, ye) t0 = np.average(t, weights=t_weight) @@ -757,46 +799,59 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, absolute_si t0 = fixed_t0[ss] dt = t - t0 self['t0'][ss] = t0 - self['n_vfit'][ss] = N_good - + self['n_fit'][ss] = N_good + + # # Decide which motion_model to fit. + # motion_model_assigned = self['motion_model'][ss] - if motion_model_assigned=='fixed' or N_good==1 or (dt == dt[0]).all(): + + # Override the motion model if we don't have enought data. + # TODO: Query the motion model object to see the minimum number of points needed. + if motion_model_assigned=='Fixed' or N_good==1 or (dt == dt[0]).all(): # Either 'fixed' is selected, or is required because # of no time-domain data - motion_model_use = 'fixed' - elif motion_model_assigned=='linear' and N_good>1: - # If 'linear' is selected and enough data exists + motion_model_use = 'Fixed' + elif motion_model_assigned=='Linear' and N_good>1: + # If 'Linear' is selected and enough data exists # to model linear motion - motion_model_use = 'linear' + motion_model_use = 'Linear' self['motion_model'][ss] = motion_model_use - if motion_model_use=='fixed': - mod = motion_model.Fixed(x[0],y[0],t[0]) - params,param_errs = mod.fit_motion_model(dt, x, y, xe, ye) - self['x0'][ss] = params[0] - self['y0'][ss] = params[1] - self['x0e'][ss] = param_errs[0] - self['y0e'][ss] = param_errs[1] - self['vx'][ss] = 0.0 - self['vy'][ss] = 0.0 - self['vxe'][ss] = 0.0 - self['vye'][ss] = 0.0 - return + # Instantiate the motion model object. + modClass = getattr(motion_model, motion_model_use) + + # Load up any prior information on parameters for this model. + param_dict = {} + for par in modClass.fitter_param_names: + if ~np.isnan(self[par][ss]): + param_dict[par] = self[par][ss] + + # Load fixed parameters, if needed. + for par in modClass.fixed_param_names: + if par not in self.colnames: + msg = f'fit_velocity_for_star: ' + msg += f'Missing fixed_params column {par} needed for motion model {motion_model_use}.' + + raise RuntimeException(msg) + + if self[par][ss] != np.nan: + param_dict[par] = self[par][ss] + + # Model object + mod = modClass(**param_dict) + + # Fit for the best parameters + params, param_errs = mod.fit_motion_model(dt, x, y, xe, ye, bootstrap=bootstrap) + + # Save parameters and errors to table. + for pp in range(len(modClass.fitter_param_names)): + par = modClass.fitter_param_names[pp] + par_err = par + '_err' + + self[par][ss] = params[pp] + self[par_err][ss] = param_errs[pp] - elif motion_model_use=='linear': - mod = motion_model.Linear(x[0], (x[-1]-x[0])/(t[-1]-t[0]), - y[0], (y[-1]-y[0])/(t[-1]-t[0]), - t[0]) - params,param_errs = mod.fit_motion_model(dt, x, y, xe, ye, bootstrap=bootstrap) - self['x0'][ss] = params[0] - self['vx'][ss] = params[1] - self['y0'][ss] = params[2] - self['vy'][ss] = params[3] - self['x0e'][ss] = param_errs[0] - self['vxe'][ss] = param_errs[1] - self['y0e'][ss] = param_errs[2] - self['vye'][ss] = param_errs[3] return @@ -866,11 +921,11 @@ def fit_velocities_all_detected(self, weighting='var', use_scipy=False, absolute # Add n_vfit - n_vfit = len(epoch_cols) - vel_result['n_vfit'] = n_vfit + n_fit = len(epoch_cols) + vel_result['n_fit'] = n_fit # Clean/remove up old arrays. - columns = [*vel_result.keys(), 'n_vfit'] + columns = [*vel_result.keys(), 'n_fit'] for column in columns: if column in self.colnames: self.remove_column(column) diff --git a/flystar/tests/test_startable.py b/flystar/tests/test_startable.py index fc90be6..a862b55 100644 --- a/flystar/tests/test_startable.py +++ b/flystar/tests/test_startable.py @@ -308,45 +308,45 @@ def test_fit_velocities(): # Test creation of new variables assert len(tab['vx']) == len(tab) assert len(tab['vy']) == len(tab) - assert len(tab['vxe']) == len(tab) - assert len(tab['vye']) == len(tab) - assert len(tab['n_vfit']) == len(tab) - assert tab.meta['n_vfit_bootstrap'] == 0 + assert len(tab['vx_err']) == len(tab) + assert len(tab['vy_err']) == len(tab) + assert len(tab['n_fit']) == len(tab) + assert tab.meta['n_fit_bootstrap'] == 0 # Test no-fit for stars with N<2 epochs. n_epochs = (tab['x'] >= 0).sum(axis=1) idx = np.where(n_epochs < 2)[0] assert (tab['vx'][idx] == 0).all() - assert (tab['vxe'][idx] == 0).all() - assert (tab['n_vfit'][idx] == 2).all() + assert (tab['vx_err'][idx] == 0).all() + assert (tab['n_fit'][idx] == 2).all() # Test that the velocity errors were calculated. - assert (tab['vxe'][0:100] > 0).all() - assert (tab['x0e'][0:100] > 0).all() - assert (tab['vye'][0:100] > 0).all() - assert (tab['y0e'][0:100] > 0).all() + assert (tab['vx_err'][0:100] > 0).all() + assert (tab['x0_err'][0:100] > 0).all() + assert (tab['vy_err'][0:100] > 0).all() + assert (tab['y0_err'][0:100] > 0).all() assert np.isfinite(tab['x0']).all() assert np.isfinite(tab['vx']).all() assert np.isfinite(tab['y0']).all() assert np.isfinite(tab['vy']).all() - assert np.isfinite(tab['x0e']).all() - assert np.isfinite(tab['vxe']).all() - assert np.isfinite(tab['y0e']).all() - assert np.isfinite(tab['vye']).all() + assert np.isfinite(tab['x0_err']).all() + assert np.isfinite(tab['vx_err']).all() + assert np.isfinite(tab['y0_err']).all() + assert np.isfinite(tab['vy_err']).all() ########## # Test running a second time. We should get the same results. ########## vx_orig = tab['vx'] x0_orig = tab['x0'] - vxe_orig = tab['vxe'] - x0e_orig = tab['x0e'] + vxe_orig = tab['vx_err'] + x0e_orig = tab['x0_err'] tab.fit_velocities(verbose=False) assert (vx_orig == tab['vx']).all() assert (x0_orig == tab['x0']).all() - assert (vxe_orig == tab['vxe']).all() - assert (x0e_orig == tab['x0e']).all() + assert (vxe_orig == tab['vx_err']).all() + assert (x0e_orig == tab['x0_err']).all() ########## # Test fixed_t0 functionality @@ -363,27 +363,27 @@ def test_fit_velocities(): tab_b.meta = tab1.meta tab_b.fit_velocities(verbose=True, bootstrap=50) - assert tab_b.meta['n_vfit_bootstrap'] == 50 - assert tab_b['x0e'][0] > tab['x0e'][0] - assert tab_b['vxe'][0] > tab['vxe'][0] - assert tab_b['y0e'][0] > tab['y0e'][0] - assert tab_b['vye'][0] > tab['vye'][0] + assert tab_b.meta['n_fit_bootstrap'] == 50 + assert tab_b['x0_err'][0] > tab['x0_err'][0] + assert tab_b['vx_err'][0] > tab['vx_err'][0] + assert tab_b['y0_err'][0] > tab['y0_err'][0] + assert tab_b['vy_err'][0] > tab['vy_err'][0] ########## # Test what happens with no velocity errors ########## - tab.remove_columns(['xe', 'ye', 'x0', 'y0', 'x0e', 'y0e', 'vx', 'vy', 'vxe', 'vye', 'n_vfit']) + tab.remove_columns(['xe', 'ye', 'x0', 'y0', 'x0_err', 'y0_err', 'vx', 'vy', 'vx_err', 'vy_err', 'n_fit']) tab.fit_velocities(verbose=False) assert len(tab['vx']) == len(tab) assert len(tab['vy']) == len(tab) - assert len(tab['vxe']) == len(tab) - assert len(tab['vye']) == len(tab) - assert len(tab['n_vfit']) == len(tab) - assert (tab['vxe'][0:100] > 0).all() - assert (tab['x0e'][0:100] > 0).all() - assert (tab['vye'][0:100] > 0).all() - assert (tab['y0e'][0:100] > 0).all() + assert len(tab['vx_err']) == len(tab) + assert len(tab['vy_err']) == len(tab) + assert len(tab['n_fit']) == len(tab) + assert (tab['vx_err'][0:100] > 0).all() + assert (tab['x0_err'][0:100] > 0).all() + assert (tab['vy_err'][0:100] > 0).all() + assert (tab['y0_err'][0:100] > 0).all() ######### # Test mask_list @@ -392,12 +392,12 @@ def test_fit_velocities(): tt.fit_velocities(bootstrap=0, verbose=False, mask_lists=[1]) assert np.arange(2.25, 48, 5) == pytest.approx(tt['x0'].data) assert np.arange(2.25, 48, 5) == pytest.approx(tt['y0'].data) - assert np.zeros(10) == pytest.approx(tt['x0e'].data) - assert np.zeros(10) == pytest.approx(tt['y0e'].data) + assert np.full(10, 0.05) == pytest.approx(tt['x0_err'].data) + assert np.full(10, 0.05) == pytest.approx(tt['y0_err'].data) assert np.ones(10) == pytest.approx(tt['vx'].data) assert np.ones(10) == pytest.approx(tt['vy'].data) - assert np.zeros(10) == pytest.approx(tt['vxe'].data) - assert np.zeros(10) == pytest.approx(tt['vye'].data) + assert np.full(10, 0.03380617) == pytest.approx(tt['vx_err'].data) + assert np.full(10, 0.03380617) == pytest.approx(tt['vy_err'].data) assert 2017.25 * np.ones(10) == pytest.approx(tt['t0'].data) # Test 5b: Things that should break the code. @@ -424,30 +424,29 @@ def test_fit_velocities_1epoch(): tab_1.fit_velocities(verbose=False) - assert 'n_vfit' in tab_1.colnames + assert 'n_fit' in tab_1.colnames assert 't0' in tab_1.colnames assert 'x0' in tab_1.colnames assert 'y0' in tab_1.colnames assert 'vx' in tab_1.colnames assert 'vy' in tab_1.colnames - assert 'x0e' in tab_1.colnames - assert 'y0e' in tab_1.colnames - assert 'vxe' in tab_1.colnames - assert 'vye' in tab_1.colnames + assert 'x0_err' in tab_1.colnames + assert 'y0_err' in tab_1.colnames + assert 'vx_err' in tab_1.colnames + assert 'vy_err' in tab_1.colnames - assert (tab_1['x0'] == tab_1['x'][:,0]).all() assert (tab_1['y0'] == tab_1['y'][:,0]).all() - assert (tab_1['x0e'] == tab_1['xe'][:,0]).all() - assert (tab_1['y0e'] == tab_1['ye'][:,0]).all() + assert (tab_1['x0_err'] == tab_1['xe'][:,0]).all() + assert (tab_1['y0_err'] == tab_1['ye'][:,0]).all() - assert(tab_1['vx'] == 0).all() - assert(tab_1['vy'] == 0).all() - assert(tab_1['vxe'] == 0).all() - assert(tab_1['vye'] == 0).all() + assert(np.isnan(tab_1['vx'])).all() + assert(np.isnan(tab_1['vy'])).all() + assert(np.isnan(tab_1['vx_err'])).all() + assert(np.isnan(tab_1['vy_err'])).all() assert(tab_1['t0'] == 2001.0).all() - assert(tab_1['n_vfit'] == 1).all() + assert(tab_1['n_fit'] == 1).all() return @@ -468,28 +467,28 @@ def test_fit_velocities_2epoch(): tab_2.fit_velocities(verbose=False) - assert 'n_vfit' in tab_2.colnames + assert 'n_fit' in tab_2.colnames assert 't0' in tab_2.colnames assert 'x0' in tab_2.colnames assert 'y0' in tab_2.colnames assert 'vx' in tab_2.colnames assert 'vy' in tab_2.colnames - assert 'x0e' in tab_2.colnames - assert 'y0e' in tab_2.colnames - assert 'vxe' in tab_2.colnames - assert 'vye' in tab_2.colnames + assert 'x0_err' in tab_2.colnames + assert 'y0_err' in tab_2.colnames + assert 'vx_err' in tab_2.colnames + assert 'vy_err' in tab_2.colnames # 2 detections np.testing.assert_almost_equal(tab_2['x0'][0], tab_2['x'][0,0], 1) - assert tab_2['n_vfit'][0] == 2 + assert tab_2['n_fit'][0] == 2 # 1 detection assert tab_2['x0'][100] == tab_2['x'][100, 0] - assert tab_2['n_vfit'][100] == 1 + assert tab_2['n_fit'][100] == 1 # 0 detections - assert tab_2['x0'][-1] == 0 - assert tab_2['n_vfit'][-1] == 0 + assert np.isnan(tab_2['x0'][-1]) + assert tab_2['n_fit'][-1] == 0 return From a0aea71e33f704be482ad3c57fa1a3e3eabe61d3 Mon Sep 17 00:00:00 2001 From: Jessica Lu Date: Mon, 19 Aug 2024 12:50:57 -0700 Subject: [PATCH 010/124] Cleaning some bugs in test_startable for the new motion model. all now. --- flystar/motion_model.py | 1 - 1 file changed, 1 deletion(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 9d6806c..2e58959 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -199,7 +199,6 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): return params, param_errors - def get_motion_model_param_names(motion_model_list, with_errors=False): return list_of_parameters From 2785b49aaca2edcd6ca15932457c4db3da3a5458 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 20 Aug 2024 12:00:29 -0700 Subject: [PATCH 011/124] some progress on motion model --- flystar/align.py | 183 +++++++++++++++++------------------- flystar/motion_model.py | 44 ++++++--- flystar/startables.py | 38 ++------ flystar/tests/test_align.py | 19 ++-- 4 files changed, 137 insertions(+), 147 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index a19c2dd..08bacd6 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -4,7 +4,7 @@ from flystar import plots from flystar.starlists import StarList from flystar.startables import StarTable -from flystar.motion_model import motion_model_col_names +from flystar import motion_model from astropy.table import Table, Column, vstack import datetime import copy @@ -22,7 +22,9 @@ def __init__(self, list_of_starlists, ref_index=0, iters=2, init_order=1, mag_trans=True, mag_lim=None, weights=None, trans_input=None, trans_class=transforms.PolyTransform, - use_vel=False, calc_trans_inverse=False, + #TODO if we use both keywords, add a check for compatibility + use_motion=False, default_motion_model='Fixed', + calc_trans_inverse=False, init_guess_mode='miracle', iter_callback=None, verbose=True): @@ -75,7 +77,7 @@ def __init__(self, list_of_starlists, ref_index=0, iters=2, magnitudes in each list to bring them into a common magnitude system. This is essential for matching (with finite dm_tol) starlists of different filters or starlists that are not photometrically calibrated. Note that the final_table columns - of 'm', 'm0', and 'm0e' will contain the transformed magnitudes while the + of 'm', 'm0', and 'm0_err' will contain the transformed magnitudes while the final_table column 'm_orig' will contain the original un-transformed magnitudes. If mag_trans = False, then no such zeropoint offset it applied at any point. @@ -105,8 +107,9 @@ def = None. If not None, then this should contain an array or list of transform then the transformation argument (i.e. order) will be changed for every iteration in iters. - use_vel : boolean - If velocities are present in the reference list and use_vel == True, then during + TODO: update when decided + use_motion : boolean + If velocities are present in the reference list and use_motion == True, then during each iteration of the alignment, the reference list will be propogated in time using the velocity information. So all transformations will be derived w.r.t. the propogated positions. See also update_vel. @@ -177,7 +180,8 @@ def = None. If not None, then this should contain an array or list of transform self.trans_input = trans_input self.trans_class = trans_class self.calc_trans_inverse = calc_trans_inverse - self.use_vel = use_vel + self.use_motion = use_motion + self.default_motion_model = default_motion_model self.init_guess_mode = init_guess_mode self.iter_callback = iter_callback self.verbose = verbose @@ -252,10 +256,10 @@ def fit(self): x0e y0e m0e - vx (only if use_vel=True) - vy (only if use_vel=True) - vxe (only if use_vel=True) - vye (only if use_vel=True) + vx (only if use_motion=True) + vy (only if use_motion=True) + vxe (only if use_motion=True) + vye (only if use_motion=True) """ ########## @@ -560,6 +564,7 @@ def setup_ref_table_from_starlist(self, star_list): array in the original reference star list. """ col_arrays = {} + motion_model_col_names = motion_model.get_all_motion_model_param_names(with_errors=True) for col_name in star_list.colnames: if col_name == 'name': # The "name" column will be 1D; but we will also add a "name_in_list" column. @@ -612,7 +617,7 @@ def setup_ref_table_from_starlist(self, star_list): # just fill these tables with zeros. We need something # in these columns in order for the error propagation to # work later on. - new_err_cols = ['x0e', 'y0e', 'm0e'] + new_err_cols = ['x0_err', 'y0_err', 'm0_err'] orig_err_cols = ['xe', 'ye', 'me'] for ii in range(len(new_err_cols)): # If the orig col name (e.g. xe) is in the ref_table, but the new col name @@ -801,52 +806,35 @@ def update_ref_table_aggregates(self, n_boot=0): # In certain cases, we will NOT update these. if not self.update_ref_orig: ref_orig_idx = np.where(self.ref_table['ref_orig'] == True)[0] - x0_orig = self.ref_table['x0'][ref_orig_idx] - y0_orig = self.ref_table['y0'][ref_orig_idx] - m0_orig = self.ref_table['m0'][ref_orig_idx] - x0e_orig = self.ref_table['x0e'][ref_orig_idx] - y0e_orig = self.ref_table['y0e'][ref_orig_idx] - m0e_orig = self.ref_table['m0e'][ref_orig_idx] - - if self.use_vel: - vx_orig = self.ref_table['vx'][ref_orig_idx] - vy_orig = self.ref_table['vy'][ref_orig_idx] - vxe_orig = self.ref_table['vxe'][ref_orig_idx] - vye_orig = self.ref_table['vye'][ref_orig_idx] - t0_orig = self.ref_table['t0'][ref_orig_idx] + vals_orig = {} + vals_orig['m0'] = self.ref_table['m0'][ref_orig_idx] + vals_orig['m0_err'] = self.ref_table['m0_err'][ref_orig_idx] + motion_model_col_names = motion_model.get_motion_model_param_names(self.ref_table['motion_model'][ref_orig_idx], with_errors=True) + for mm in motion_model_col_names: + vals_orig[mm] = self.ref_table[mm][ref_orig_idx] - if self.use_vel: + #if self.use_motion: # Combine positions with a velocity fit. - self.ref_table.fit_velocities(bootstrap=n_boot, verbose=self.verbose) - - # Combine (transformed) magnitudes - if 'me' in self.ref_table.colnames: - weights_col = None - else: - weights_col = 'me' - - self.ref_table.combine_lists('m', weights_col=weights_col, ismag=True) + self.ref_table.fit_velocities(bootstrap=n_boot, verbose=self.verbose, default_motion_model=self.default_motion_model) + + # Combine (transformed) magnitudes + # TODO: how does this work? + if 'me' in self.ref_table.colnames: + weights_col = None else: + weights_col = 'me' + + self.ref_table.combine_lists('m', weights_col=weights_col, ismag=True) + '''else: weighted_xy = ('xe' in self.ref_table.colnames) and ('ye' in self.ref_table.colnames) weighted_m = ('me' in self.ref_table.colnames) - self.ref_table.combine_lists_xym(weighted_xy=weighted_xy, weighted_m=weighted_m) + self.ref_table.combine_lists_xym(weighted_xy=weighted_xy, weighted_m=weighted_m)''' # Replace the originals if we are supposed to keep them fixed. if not self.update_ref_orig: - self.ref_table['x0'][ref_orig_idx] = x0_orig - self.ref_table['y0'][ref_orig_idx] = y0_orig - self.ref_table['m0'][ref_orig_idx] = m0_orig - self.ref_table['x0e'][ref_orig_idx] = x0e_orig - self.ref_table['y0e'][ref_orig_idx] = y0e_orig - self.ref_table['m0e'][ref_orig_idx] = m0e_orig - - if self.use_vel: - self.ref_table['vx'][ref_orig_idx] = vx_orig - self.ref_table['vy'][ref_orig_idx] = vy_orig - self.ref_table['vxe'][ref_orig_idx] = vxe_orig - self.ref_table['vye'][ref_orig_idx] = vye_orig - self.ref_table['t0'][ref_orig_idx] = t0_orig + for val in vals_orig.keys(): + self.ref_table[val][ref_orig_idx] = vals_orig[val] return @@ -918,7 +906,7 @@ def match_lists(self, dr_tol, dm_tol): else: star_list_T.transform_xy(self.trans_list[ii]) - xref, yref = get_pos_at_time(star_list_T['t'][0], self.ref_table, use_vel=self.use_vel) # optional velocity propogation. + xref, yref = get_pos_at_time(star_list_T['t'][0], self.ref_table, use_motion=self.use_motion) # optional velocity propogation. mref = self.ref_table['m0'] idx_lis, idx_ref, dr, dm = match.match(star_list_T['x'], star_list_T['y'], star_list_T['m'], @@ -950,36 +938,36 @@ def get_ref_list_from_table(self, epoch): # Reference stars will be named. name = self.ref_table['name'] - if self.use_vel and ('vx' in self.ref_table.colnames): + if self.use_motion and ('vx' in self.ref_table.colnames): # First check if we should use velocities and if they exist. dt = epoch - self.ref_table['t0'] x = self.ref_table['x0'] + (self.ref_table['vx'] * dt) y = self.ref_table['y0'] + (self.ref_table['vy'] * dt) - xe = np.hypot(self.ref_table['x0e'], self.ref_table['vxe']*dt) - ye = np.hypot(self.ref_table['y0e'], self.ref_table['vye']*dt) + xe = np.hypot(self.ref_table['x0_err'], self.ref_table['vxe']*dt) + ye = np.hypot(self.ref_table['y0_err'], self.ref_table['vye']*dt) idx = np.where(np.isfinite(self.ref_table['vx']) == False)[0] x[idx] = self.ref_table['x0'][idx] y[idx] = self.ref_table['y0'][idx] - xe[idx] = self.ref_table['x0e'][idx] - ye[idx] = self.ref_table['y0e'][idx] + xe[idx] = self.ref_table['x0_err'][idx] + ye[idx] = self.ref_table['y0_err'][idx] else: # No velocities... just used average positions. x = self.ref_table['x0'] y = self.ref_table['y0'] - if 'x0e' in self.ref_table.colnames: - xe = self.ref_table['x0e'] - ye = self.ref_table['y0e'] + if 'x0_err' in self.ref_table.colnames: + xe = self.ref_table['x0_err'] + ye = self.ref_table['y0_err'] else: xe = None ye = None m = self.ref_table['m0'] - if 'm0e' in self.ref_table.colnames: - me = self.ref_table['m0e'] + if 'm0_err' in self.ref_table.colnames: + me = self.ref_table['m0_err'] else: me = None @@ -1221,11 +1209,11 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot xe=xe_trans_arr[:,ii,boot_idx], ye=ye_trans_arr[:,ii,boot_idx], me=me_trans_arr[:,ii,boot_idx], - t=np.tile(t_boot, (len(ref_table),1)) ) + t=np.tile(t_boot, (len(ref_table),1))) # Now, do proper motion calculation, making sure to fix t0 to the # orig value (so we can get a reasonable error on x0, y0) - star_table.fit_velocities(fixed_t0=t0_arr) + star_table.fit_velocities(fixed_t0=t0_arr, default_motion_model=self.default_motion_model) # Save proper motion fit results to output arrays x0_arr[:,ii] = star_table['x0'] @@ -1302,7 +1290,8 @@ def __init__(self, ref_list, list_of_starlists, iters=2, trans_class=transforms.PolyTransform, calc_trans_inverse=False, use_ref_new=False, - use_vel=False, update_ref_orig=False, + use_motion=False, default_motion_model='Fixed', + update_ref_orig=False, init_guess_mode='miracle', iter_callback=None, verbose=True): @@ -1352,7 +1341,7 @@ def __init__(self, ref_list, list_of_starlists, iters=2, magnitudes in each list to bring them into a common magnitude system. This is essential for matching (with finite dm_tol) starlists of different filters or starlists that are not photometrically calibrated. Note that the final_table columns - of 'm', 'm0', and 'm0e' will contain the transformed magnitudes while the + of 'm', 'm0', and 'm0_err' will contain the transformed magnitudes while the final_table column 'm_orig' will contain the original un-transformed magnitudes. If mag_trans = False, then no such zeropoint offset it applied at any point. @@ -1417,8 +1406,8 @@ def = None. If not None, then this should contain an array or list of transform If False, then the new stars will be carried, but not used in the transformation. We determine which stars to use through setting a boolean use_in_trans flag. - use_vel : boolean - If velocities are present in the reference list and use_vel == True, then during + use_motion : boolean + If velocities are present in the reference list and use_motion == True, then during each iteration of the alignment, the reference list will be propogated in time using the velocity information. So all transformations will be derived w.r.t. the propogated positions. See also update_vel. @@ -1439,7 +1428,7 @@ def = None. If not None, then this should contain an array or list of transform outlier_tol=[None], mag_lim=[13, 21], trans_class=transforms.PolyTransform, trans_args=[{'order': 1}], - use_vel=True, + use_motion=True, use_ref_new=False, update_ref_orig=False, mag_trans=False, @@ -1470,7 +1459,7 @@ def = None. If not None, then this should contain an array or list of transform init_order=init_order, mag_trans=mag_trans, mag_lim=mag_lim, weights=weights, trans_input=trans_input, trans_class=trans_class, - calc_trans_inverse=calc_trans_inverse, use_vel=use_vel, + calc_trans_inverse=calc_trans_inverse, use_motion=use_motion, init_guess_mode=init_guess_mode, iter_callback=iter_callback, verbose=verbose) @@ -1484,13 +1473,13 @@ def = None. If not None, then this should contain an array or list of transform if ('x' not in self.ref_list.colnames) and ('x0' in self.ref_list.colnames): self.ref_list['x'] = self.ref_list['x0'] self.ref_list['y'] = self.ref_list['y0'] - if ('xe' not in self.ref_list.colnames) and ('x0e' in self.ref_list.colnames): - self.ref_list['xe'] = self.ref_list['x0e'] - self.ref_list['ye'] = self.ref_list['y0e'] + if ('xe' not in self.ref_list.colnames) and ('x0_err' in self.ref_list.colnames): + self.ref_list['xe'] = self.ref_list['x0_err'] + self.ref_list['ye'] = self.ref_list['y0_err'] if ('m' not in self.ref_list.colnames) and ('m0' in self.ref_list.colnames): self.ref_list['m'] = self.ref_list['m0'] - if ('me' not in self.ref_list.colnames) and ('m0e' in self.ref_list.colnames): - self.ref_list['me'] = self.ref_list['m0e'] + if ('me' not in self.ref_list.colnames) and ('m0_err' in self.ref_list.colnames): + self.ref_list['me'] = self.ref_list['m0_err'] if ('t' not in self.ref_list.colnames) and ('t0' in self.ref_list.colnames): self.ref_list['t'] = self.ref_list['t0'] @@ -1515,10 +1504,10 @@ def fit(self): x0e y0e m0e - vx (only if use_vel=True) - vy (only if use_vel=True) - vxe (only if use_vel=True) - vye (only if use_vel=True) + vx (only if use_motion=True) + vy (only if use_motion=True) + vxe (only if use_motion=True) + vye (only if use_motion=True) """ # Create a log file of the parameters used in the fit. @@ -1537,7 +1526,8 @@ def fit(self): logger(_log, ' trans_class = ' + str(self.trans_class), self.verbose) logger(_log, ' calc_trans_inverse = ' + str(self.calc_trans_inverse), self.verbose) logger(_log, ' use_ref_new = ' + str(self.use_ref_new), self.verbose) - logger(_log, ' use_vel = ' + str(self.use_vel), self.verbose) + logger(_log, ' use_motion = ' + str(self.use_motion), self.verbose) + logger(_log, ' default_motion_model = ' + str(self.default_motion_model), self.verbose) logger(_log, ' update_ref_orig = ' + str(self.update_ref_orig), self.verbose) logger(_log, ' init_guess_mode = ' + str(self.init_guess_mode), self.verbose) logger(_log, ' iter_callback = ' + str(self.iter_callback), self.verbose) @@ -1670,6 +1660,7 @@ def setup_ref_table_from_starlist(star_list): array in the original reference star list. """ col_arrays = {} + motion_model_col_names = motion_model.get_all_motion_model_param_names(with_errors=True) for col_name in star_list.colnames: if col_name == 'name': # The "name" column will be 1D; but we will also add a "name_in_list" column. @@ -1704,7 +1695,7 @@ def setup_ref_table_from_starlist(star_list): # Make sure ref_table has the necessary x0, y0, m0 and associated # error columns. If they don't exist, then add them as a copy of # the original x,y,m etc columns. - new_cols_arr = ['x0', 'x0e', 'y0', 'y0e', 'm0', 'm0e'] + new_cols_arr = ['x0', 'x0_err', 'y0', 'y0_err', 'm0', 'm0_err'] orig_cols_arr = ['x', 'xe', 'y', 'ye', 'm', 'me'] assert len(new_cols_arr) == len(orig_cols_arr) ref_cols = ref_table.keys() @@ -1888,7 +1879,7 @@ def run_align_iter(catalog, trans_order=1, poly_deg=1, ref_mag_lim=19, ref_radiu calc_mag_avg_all_stars(d) tdx = np.where((d['name_0'] == 'OB120169') | (d['name_0'] == 'OB120169_L'))[0] - print(d[tdx]['name_0', 't0', 'mag', 'x0', 'vx', 'x0e', 'vxe', 'chi2x', 'y0', 'vy', 'y0e', 'vye', 'chi2y', 'dof']) + print(d[tdx]['name_0', 't0', 'mag', 'x0', 'vx', 'x0_err', 'vxe', 'chi2x', 'y0', 'vy', 'y0_err', 'vye', 'chi2y', 'dof']) ########## # Second iteration -- align everything to reference positions derived from iteration 1 @@ -2005,8 +1996,8 @@ def calc_transform_ref_poly(d, target_name, poly_deg, ref_mag_lim, ref_radius_li m_ref = d['mag'] x_ref = d['x0'] y_ref = d['y0'] - xe_ref = d['x0e'] - ye_ref = d['y0e'] + xe_ref = d['x0_err'] + ye_ref = d['y0_err'] # Calculate some quanitites we use for selecting reference stars. r_ref = np.hypot(x_ref - x_ref[tdx], y_ref - y_ref[tdx]) @@ -2198,8 +2189,8 @@ def calc_polyfit_all_stars(d, poly_deg, init_fig_idx=0): if poly_deg >= 0: d['x0'] = px_all[:, -1] d['y0'] = py_all[:, -1] - d['x0e'] = pxe_all[:, -1] - d['y0e'] = pye_all[:, -1] + d['x0_err'] = pxe_all[:, -1] + d['y0_err'] = pye_all[:, -1] if poly_deg >= 1: d['vx'] = px_all[:, -2] @@ -2735,8 +2726,8 @@ def transform_from_file(starlist, transFile): if vel: x0_orig = starlist['x0'] y0_orig = starlist['y0'] - x0e_orig = starlist['x0e'] - y0e_orig = starlist['y0e'] + x0e_orig = starlist['x0_err'] + y0e_orig = starlist['y0_err'] vx_orig = starlist['vx'] vy_orig = starlist['vy'] @@ -2847,8 +2838,8 @@ def transform_from_file(starlist, transFile): if vel: starlist_f['x0'] = x0_new starlist_f['y0'] = y0_new - starlist_f['x0e'] = x0e_new - starlist_f['y0e'] = y0e_new + starlist_f['x0_err'] = x0e_new + starlist_f['y0_err'] = y0e_new starlist_f['vx'] = vx_new starlist_f['vy'] = vy_new starlist_f['vxe'] = vxe_new @@ -2899,8 +2890,8 @@ def transform_from_object(starlist, transform): if vel: x0 = starlist_f['x0'] y0 = starlist_f['y0'] - x0e = starlist_f['x0e'] - y0e = starlist_f['y0e'] + x0e = starlist_f['x0_err'] + y0e = starlist_f['y0_err'] vx = starlist_f['vx'] vy = starlist_f['vy'] vxe = starlist_f['vxe'] @@ -2927,8 +2918,8 @@ def transform_from_object(starlist, transform): if vel: starlist_f['x0'] = x0_new starlist_f['y0'] = y0_new - starlist_f['x0e'] = x0e_new - starlist_f['y0e'] = y0e_new + starlist_f['x0_err'] = x0e_new + starlist_f['y0_err'] = y0e_new starlist_f['vx'] = vx_new starlist_f['vy'] = vy_new starlist_f['vxe'] = vxe_new @@ -3621,13 +3612,13 @@ def copy_and_rename_for_ref(star_list): if 'xe' in star_list.colnames: old_cols += ['xe'] - new_cols += ['x0e'] + new_cols += ['x0_err'] if 'ye' in star_list.colnames: old_cols += ['ye'] - new_cols += ['y0e'] + new_cols += ['y0_err'] if 'me' in star_list.colnames: old_cols += ['me'] - new_cols += ['m0e'] + new_cols += ['m0_err'] if 'w' in star_list.colnames: old_cols += ['w'] new_cols += ['w'] @@ -3776,7 +3767,7 @@ def get_weighting_scheme(weights, ref_list, star_list): return weight -def get_pos_at_time(t, starlist, use_vel=True): +def get_pos_at_time(t, starlist, use_motion=True): """ Take a starlist, check to see if it has velocity columns. If it does, then propogate the positions forward in time @@ -3790,7 +3781,7 @@ def get_pos_at_time(t, starlist, use_vel=True): but it should be in the same units as the 't0' column in starlist. """ - if use_vel and ('vx' in starlist.colnames) and ('vy' in starlist.colnames): + if use_motion and ('vx' in starlist.colnames) and ('vy' in starlist.colnames): dt = t - starlist['t0'] x = starlist['x0'] + (starlist['vx'] * dt) y = starlist['y0'] + (starlist['vy'] * dt) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 2e58959..6d69ac3 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -2,13 +2,6 @@ import numpy as np from abc import ABC -# Keep a list of columns that are "aggregated" motion model terms. -motion_model_col_names = ['x0', 'x0e', 'y0', 'y0e', - 'vx', 'vxe', 'vy', 'vye', - 'ax', 'axe', 'ay', 'aye', - 't0', 'm0', 'm0e', - 'motion_model', 'use_in_trans'] - class MotionModel(ABC): # Fit paramters: Shared fit parameters fitter_param_names = [] @@ -54,7 +47,7 @@ class Fixed(MotionModel): fitter_param_names = ['x0','y0'] fixed_param_names = ['t0'] - def __init__(self, x0, y0, t0): + def __init__(self, x0=0, y0=0, t0=2025.0): self.x0 = x0 self.y0 = y0 self.t0 = t0 @@ -68,7 +61,7 @@ def __init__(self, x0, y0, t0): def get_pos_at_time(self,t): return self.x0, self.y0 - def fit_motion_model(self, dt, x, y, xe, ye, update=False, fixed_t0=False): + def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): # Handle single data point case if len(x)==1: return [x[0],y[0]],[xe[0],ye[0]] @@ -95,7 +88,7 @@ class Linear(MotionModel): fitter_param_names = ['x0', 'vx', 'y0', 'vy'] fixed_param_names = ['t0'] - def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025): + def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025.0): self.x0 = x0 self.vx = vx self.y0 = y0 @@ -124,7 +117,7 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): fitter = fitting.LevMarLSQFitter() # Handle 2-data point case - # TODO is this the best way to handle this case ? + # TODO: is this the best way to handle this case ? if len(x)==2: x0 = np.average(x, weights=1.0/xe**2) y0 = np.average(y, weights=1.0/ye**2) @@ -141,7 +134,6 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): px_new = fitter(self.px, dt, x, weights=1/xe) px_cov = fitter.fit_info['param_cov'] - py_new = fitter(self.py, dt, y, weights=1/ye) py_cov = fitter.fit_info['param_cov'] @@ -201,10 +193,34 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): def get_motion_model_param_names(motion_model_list, with_errors=False): - return list_of_parameters + list_of_parameters = [] + all_motion_models = [eval(mm) for mm in np.unique(motion_model_list).tolist()] + for aa in range(len(all_motion_models)): + param_names = getattr(all_motion_models[aa], 'fitter_param_names') + param_fixed_names = getattr(all_motion_models[aa], 'fixed_param_names') + param_err_names = [par + '_err' for par in param_names] + + list_of_parameters += param_names + list_of_parameters += param_fixed_names + if with_errors: + list_of_parameters += param_err_names + + return np.unique(list_of_parameters).tolist() def get_all_motion_model_param_names(with_errors=False): - return list_of_parameters + list_of_parameters = [] + all_motion_models = MotionModel.__subclasses__() + for aa in range(len(all_motion_models)): + param_names = getattr(all_motion_models[aa], 'fitter_param_names') + param_fixed_names = getattr(all_motion_models[aa], 'fixed_param_names') + param_err_names = [par + '_err' for par in param_names] + + list_of_parameters += param_names + list_of_parameters += param_fixed_names + if with_errors: + list_of_parameters += param_err_names + + return np.unique(list_of_parameters).tolist() diff --git a/flystar/startables.py b/flystar/startables.py index 13d3267..32e2196 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -11,7 +11,6 @@ import copy from flystar import motion_model - class StarTable(Table): """ A StarTable is an astropy.Table with stars matched from multiple starlists. @@ -73,7 +72,7 @@ class StarTable(Table): print(t['name'][0:10]) # print the first 10 star names print(t['x'][0:10, 0]) # print x from the first epoch/list/column for the first 10 stars """ - def __init__(self, *args, ref_list=0, motion_model_default='Linear', **kwargs): + def __init__(self, *args, ref_list=0, **kwargs): """ """ @@ -167,8 +166,8 @@ def __init__(self, *args, ref_list=0, motion_model_default='Linear', **kwargs): self['name_in_list'] = self['name_in_list'].astype('U20') if arg == 'motion_model': self['motion_model'] = self['motion_model'].astype('U20') - if 'motion_model' not in kwargs: - self['motion_model'] = np.repeat(motion_model_default, len(self['name'])) + '''if 'motion_model' not in kwargs: + self['motion_model'] = np.repeat(default_motion_model, len(self['name']))''' return @@ -537,7 +536,7 @@ def detections(self): def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, bootstrap=0, fixed_t0=False, verbose=False, - mask_val=None, mask_lists=False, show_progress=True): + mask_val=None, mask_lists=False, show_progress=True, default_motion_model='Linear'): """Fit velocities for all stars in the table and add to the columns 'vx', 'vxe', 'vy', 'vye', 'x0', 'x0e', 'y0', 'y0e'. Parameters @@ -585,34 +584,17 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b # Fill table with all possible motion model parameter names as new # columns. Make everything empty for now. # - all_motion_models = np.unique(self['motion_model']).tolist() - if 'Fixed' not in all_motion_models: - all_motion_models.append('Fixed') - if 'Linear' not in all_motion_models: - all_motion_models.append('Linear') - - new_col_list = [] - for aa in range(len(all_motion_models)): - mmod = getattr(motion_model, all_motion_models[aa]) - - # Add fit parameters and errors. - param_names = mmod.fitter_param_names - param_err_names = [par + '_err' for par in param_names] - - new_col_list += param_names - new_col_list += param_err_names - + if 'motion_model' not in self.colnames: + self['motion_model'] = default_motion_model + all_motion_models = np.unique(self['motion_model'].tolist() + ['Fixed','Linear']).tolist() + new_col_list = motion_model.get_motion_model_param_names(all_motion_models, with_errors=True) # Append goodness of fit metrics and t0. - new_col_list += ['chi2_x', 'chi2_y', 't0'] - - # Remove repeat column names. Returns a numpy array. - new_col_list = np.unique(new_col_list) + new_col_list += ['chi2_x', 'chi2_y'] # Define output arrays for the best-fit parameters. for col in new_col_list: # Clean/remove up old arrays. if col in self.colnames: self.remove_column(col) - # Add column self.add_column(Column(data = np.full(N_stars, np.nan, dtype=float), name = col)) @@ -625,7 +607,7 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b # (FIXME: Do we need to catch the case where there's a single *unmasked* epoch?) # Catch the case when there is only a single epoch. Just return 0 velocity # and the same input position for the x0/y0. - if self['x'].shape[1] == 1: + if (self['x'].shape[1] == 1): self['motion_model'] = 'Fixed' self['x0'] = self['x'][:,0] self['y0'] = self['y'][:,0] diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 45741d7..4892acc 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -100,22 +100,23 @@ def test_MosaicSelfRef_vel_tconst(): msc = align.MosaicSelfRef(lists, ref_index=0, iters=2, dr_tol=[3, 3], dm_tol=[1, 1], trans_class=transforms.PolyTransform, - trans_args={'order': 2}, use_vel=True, + trans_args={'order': 2}, + use_motion=True, default_motion_model='Linear', verbose=False) msc.fit() # Check some of the output quantities on the final table. assert 'x0' in msc.ref_table.colnames - assert 'x0e' in msc.ref_table.colnames + assert 'x0_err' in msc.ref_table.colnames assert 'y0' in msc.ref_table.colnames - assert 'y0e' in msc.ref_table.colnames + assert 'y0_err' in msc.ref_table.colnames assert 'm0' in msc.ref_table.colnames - assert 'm0e' in msc.ref_table.colnames + assert 'm0_err' in msc.ref_table.colnames assert 'vx' in msc.ref_table.colnames - assert 'vxe' in msc.ref_table.colnames + assert 'vx_err' in msc.ref_table.colnames assert 'vy' in msc.ref_table.colnames - assert 'vye' in msc.ref_table.colnames + assert 'vy_err' in msc.ref_table.colnames assert 't0' in msc.ref_table.colnames # Check that we have some matched stars... should be at least 35 stars @@ -124,9 +125,9 @@ def test_MosaicSelfRef_vel_tconst(): assert len(idx) > 35 # Check that the transformation error isn't too big - assert (msc.ref_table['x0e'] < 3.0).all() # less than 1 pix - assert (msc.ref_table['y0e'] < 3.0).all() - assert (msc.ref_table['m0e'] < 1.0).all() # less than 0.5 mag + assert (msc.ref_table['x0_err'] < 3.0).all() # less than 1 pix + assert (msc.ref_table['y0_err'] < 3.0).all() + assert (msc.ref_table['m0_err'] < 1.0).all() # less than 0.5 mag # Check that the transformation lists aren't too wacky for ii in range(4): From 7c77150e852acb949c51d1aee9c52048cb6ed5ba Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 20 Aug 2024 17:01:30 -0700 Subject: [PATCH 012/124] checking in in-progress motion model work --- flystar/align.py | 60 +++++++++---------- flystar/match.py | 3 + flystar/motion_model.py | 85 ++++++++++++++++++++++---- flystar/startables.py | 102 +++++++++++++++++++++++++------- flystar/tests/test_align.py | 4 +- flystar/tests/test_startable.py | 4 +- 6 files changed, 191 insertions(+), 67 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 08bacd6..8968633 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -22,8 +22,9 @@ def __init__(self, list_of_starlists, ref_index=0, iters=2, init_order=1, mag_trans=True, mag_lim=None, weights=None, trans_input=None, trans_class=transforms.PolyTransform, - #TODO if we use both keywords, add a check for compatibility - use_motion=False, default_motion_model='Fixed', + # TODO: consider deleting use_vel fulll, for now I'm putting in + # a fallback so people can still use old code for now + use_vel=None, default_motion_model='Fixed', calc_trans_inverse=False, init_guess_mode='miracle', iter_callback=None, verbose=True): @@ -107,9 +108,9 @@ def = None. If not None, then this should contain an array or list of transform then the transformation argument (i.e. order) will be changed for every iteration in iters. - TODO: update when decided - use_motion : boolean - If velocities are present in the reference list and use_motion == True, then during + # TODO: update when decided + use_vel : boolean + If velocities are present in the reference list and use_vel == True, then during each iteration of the alignment, the reference list will be propogated in time using the velocity information. So all transformations will be derived w.r.t. the propogated positions. See also update_vel. @@ -179,9 +180,15 @@ def = None. If not None, then this should contain an array or list of transform self.weights = weights self.trans_input = trans_input self.trans_class = trans_class - self.calc_trans_inverse = calc_trans_inverse - self.use_motion = use_motion - self.default_motion_model = default_motion_model + self.calc_trans_inverse = calc_trans_inverse + # TODO: consider whether we want this fallback + if use_vel is None: + self.default_motion_model = default_motion_model + else: + if use_vel: + self.default_motion_model = 'Linear' + else: + self.default_motion_model = 'Fixed' self.init_guess_mode = init_guess_mode self.iter_callback = iter_callback self.verbose = verbose @@ -771,7 +778,8 @@ def update_ref_table_from_list(self, star_list, star_list_T, ii, idx_ref, idx_li self.ref_table['used_in_trans'][idx_ref_in_trans, ii] = True ### Add the unmatched stars and grow the size of the reference table. - self.ref_table, idx_lis_new, idx_ref_new = add_rows_for_new_stars(self.ref_table, star_list, idx_lis) + self.ref_table, idx_lis_new, idx_ref_new = add_rows_for_new_stars(self.ref_table, star_list, idx_lis, + default_motion_model=self.default_motion_model) if len(idx_ref_new) > 0: if self.verbose > 0: print(' Adding {0:d} new stars to the reference table.'.format(len(idx_ref_new))) @@ -809,7 +817,7 @@ def update_ref_table_aggregates(self, n_boot=0): vals_orig = {} vals_orig['m0'] = self.ref_table['m0'][ref_orig_idx] vals_orig['m0_err'] = self.ref_table['m0_err'][ref_orig_idx] - motion_model_col_names = motion_model.get_motion_model_param_names(self.ref_table['motion_model'][ref_orig_idx], with_errors=True) + motion_model_col_names = motion_model.get_list_motion_model_param_names(self.ref_table['motion_model'][ref_orig_idx], with_errors=True) for mm in motion_model_col_names: vals_orig[mm] = self.ref_table[mm][ref_orig_idx] @@ -906,7 +914,7 @@ def match_lists(self, dr_tol, dm_tol): else: star_list_T.transform_xy(self.trans_list[ii]) - xref, yref = get_pos_at_time(star_list_T['t'][0], self.ref_table, use_motion=self.use_motion) # optional velocity propogation. + xref, yref = get_pos_at_time(star_list_T['t'][0], self.ref_table) #, use_motion=self.use_motion) # optional velocity propogation. mref = self.ref_table['m0'] idx_lis, idx_ref, dr, dm = match.match(star_list_T['x'], star_list_T['y'], star_list_T['m'], @@ -938,20 +946,8 @@ def get_ref_list_from_table(self, epoch): # Reference stars will be named. name = self.ref_table['name'] - if self.use_motion and ('vx' in self.ref_table.colnames): - # First check if we should use velocities and if they exist. - dt = epoch - self.ref_table['t0'] - x = self.ref_table['x0'] + (self.ref_table['vx'] * dt) - y = self.ref_table['y0'] + (self.ref_table['vy'] * dt) - - xe = np.hypot(self.ref_table['x0_err'], self.ref_table['vxe']*dt) - ye = np.hypot(self.ref_table['y0_err'], self.ref_table['vye']*dt) - - idx = np.where(np.isfinite(self.ref_table['vx']) == False)[0] - x[idx] = self.ref_table['x0'][idx] - y[idx] = self.ref_table['y0'][idx] - xe[idx] = self.ref_table['x0_err'][idx] - ye[idx] = self.ref_table['y0_err'][idx] + if ('motion_model' in self.ref_table.colnames): + x,y,xe,ye = self.ref_table.get_star_positions_at_time(epoch) else: # No velocities... just used average positions. x = self.ref_table['x0'] @@ -1290,7 +1286,7 @@ def __init__(self, ref_list, list_of_starlists, iters=2, trans_class=transforms.PolyTransform, calc_trans_inverse=False, use_ref_new=False, - use_motion=False, default_motion_model='Fixed', + use_vel=None, default_motion_model='Fixed', update_ref_orig=False, init_guess_mode='miracle', iter_callback=None, @@ -1459,7 +1455,8 @@ def = None. If not None, then this should contain an array or list of transform init_order=init_order, mag_trans=mag_trans, mag_lim=mag_lim, weights=weights, trans_input=trans_input, trans_class=trans_class, - calc_trans_inverse=calc_trans_inverse, use_motion=use_motion, + calc_trans_inverse=calc_trans_inverse, use_vel=use_vel, + default_motion_model = default_motion_model, init_guess_mode=init_guess_mode, iter_callback=iter_callback, verbose=verbose) @@ -1526,7 +1523,7 @@ def fit(self): logger(_log, ' trans_class = ' + str(self.trans_class), self.verbose) logger(_log, ' calc_trans_inverse = ' + str(self.calc_trans_inverse), self.verbose) logger(_log, ' use_ref_new = ' + str(self.use_ref_new), self.verbose) - logger(_log, ' use_motion = ' + str(self.use_motion), self.verbose) + #logger(_log, ' use_vel = ' + str(self.use_vel), self.verbose) logger(_log, ' default_motion_model = ' + str(self.default_motion_model), self.verbose) logger(_log, ' update_ref_orig = ' + str(self.update_ref_orig), self.verbose) logger(_log, ' init_guess_mode = ' + str(self.init_guess_mode), self.verbose) @@ -1774,7 +1771,7 @@ def reset_ref_values(ref_table): return -def add_rows_for_new_stars(ref_table, star_list, idx_lis): +def add_rows_for_new_stars(ref_table, star_list, idx_lis, default_motion_model='Fixed'): """ For each star that is in star_list and NOT in idx_list, make a new row in the reference table. The values will be empty (None, NAN, etc.). @@ -1818,6 +1815,8 @@ def add_rows_for_new_stars(ref_table, star_list, idx_lis): new_col_empty = -1 elif ref_table[col_name].dtype == np.dtype('bool'): new_col_empty = False + elif col_name=='motion_model': + new_col_empty = default_motion_model else: new_col_empty = np.nan @@ -3767,7 +3766,8 @@ def get_weighting_scheme(weights, ref_list, star_list): return weight -def get_pos_at_time(t, starlist, use_motion=True): +# TODO: Are starlists supposed to hold velocities? We'll need to add a motion_model column if so +def get_pos_at_time(t, starlist,use_motion=True): """ Take a starlist, check to see if it has velocity columns. If it does, then propogate the positions forward in time diff --git a/flystar/match.py b/flystar/match.py index d40ccdb..96a9f77 100644 --- a/flystar/match.py +++ b/flystar/match.py @@ -277,6 +277,9 @@ def match(x1, y1, m1, x2, y2, m2, dr_tol, dm_tol=None, verbose=True): # have matches. idxs1 = np.ones(x1.size, dtype=int) * -1 idxs2 = np.ones(x1.size, dtype=int) * -1 + + print(coords2) + pdb.set_trace() # The matching will be done using a KDTree. kdt = KDT(coords2, balanced_tree=False) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 6d69ac3..14eda8a 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -1,8 +1,12 @@ from astropy.modeling import models, fitting import numpy as np from abc import ABC +import pdb class MotionModel(ABC): + # Number of data points required to fit model + n_pts_req = 0 + # Fit paramters: Shared fit parameters fitter_param_names = [] @@ -18,6 +22,7 @@ class MotionModel(ABC): def __init__(self, *args, **kwargs): # Check that required phot_params are proper arrays. # If not, then make them arrays of len(1). + # TODO: do we need this? for param in self.fitter_param_names: param_var = getattr(self, param) if not isinstance(param_var, (list, np.ndarray)): @@ -28,6 +33,14 @@ def __init__(self, *args, **kwargs): def get_pos_at_time(self, t): #return x, y pass + + def get_pos_err_at_time(self, t): + #return x_err, y_err + pass + + def get_batch_pos_at_time(self, t): + #return x, y, x_err, y_err + pass def fit_motion_model(self, t, x, y, xe, ye, update=True): """ @@ -44,14 +57,18 @@ class Fixed(MotionModel): """ A non-moving motion model for a star on the sky. """ + n_pts_req = 1 fitter_param_names = ['x0','y0'] fixed_param_names = ['t0'] - def __init__(self, x0=0, y0=0, t0=2025.0): + def __init__(self, x0=0, y0=0, t0=2025.0, + x0_err=0, y0_err=0): self.x0 = x0 self.y0 = y0 self.t0 = t0 - + self.x0_err = x0_err + self.y0_err = y0_err + # Must call after setting parameters. # This checks for proper parameter formatting. super().__init__() @@ -60,6 +77,15 @@ def __init__(self, x0=0, y0=0, t0=2025.0): def get_pos_at_time(self,t): return self.x0, self.y0 + + def get_pos_err_at_time(self,t): + return self.x0_err, self.y0_err + + def get_batch_pos_at_time(self,t, + x0=[],y0=[],t0=[], + x0_err=[], y0_err=[]): + return x0,y0,x0_err,y0_err + def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): # Handle single data point case @@ -78,6 +104,8 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): if update: self.x0 = x0 self.y0 = y0 + self.x0_err = x0e + self.y0_err = y0e return params, param_errors @@ -85,16 +113,22 @@ class Linear(MotionModel): """ A 2D linear motion model for a star on the sky. """ + n_pts_req = 2 fitter_param_names = ['x0', 'vx', 'y0', 'vy'] fixed_param_names = ['t0'] - def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025.0): + def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025.0, + x0_err=0, vx_err=0, y0_err=0, vy_err=0): self.x0 = x0 self.vx = vx self.y0 = y0 self.vy = vy self.t0 = t0 - + self.x0_err = x0_err + self.vx_err = vx_err + self.y0_err = y0_err + self.vy_err = vy_err + # Must call after setting parameters. # This checks for proper parameter formatting. super().__init__() @@ -112,6 +146,24 @@ def get_pos_at_time(self, t): y = self.py(dt) return x, y + + def get_pos_err_at_time(self, t): + dt = t - self.t0 + + x_err = np.hypot(self.x0_err, self.vx_err) + y_err = np.hypot(self.y0_err, self.vy_err) + + return x_err, y_err + + def get_batch_pos_at_time(self,t, + x0=[],vx=[], y0=[],vy=[], t0=[], + x0_err=[],vx_err=[], y0_err=[],vy_err=[]): + dt = t-t0 + x = x0 + dt*vx + y = y0 + dt*vy + x_err = np.hypot(x0_err, vx_err*dt) + y_err = np.hypot(y0_err, vy_err*dt) + return x,y,x_err,y_err def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): fitter = fitting.LevMarLSQFitter() @@ -181,10 +233,15 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): self.px = px_new self.py = py_new - self.x0 = self.px.c0.value - self.vx = self.px.c1.value - self.y0 = self.py.c0.value - self.vy = self.py.c1.value + self.x0 = x0 + self.vx = vx + self.y0 = y0 + self.vy = vy + + self.x0_err = x0e + self.vx_err = vxe + self.y0_err = y0e + self.vy_err = vye params = [x0, vx, y0, vy] param_errors = [x0e, vxe, y0e, vye] @@ -192,7 +249,15 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): return params, param_errors -def get_motion_model_param_names(motion_model_list, with_errors=False): +def get_one_motion_model_param_names(motion_model_name, with_errors=True): + mod = eval(motion_model_name) + list_of_parameters = getattr(mod, 'fitter_param_names') + list_of_parameters += getattr(mod, 'fixed_param_names') + if with_errors: + list_of_parameters += [par + '_err' for par in getattr(mod, 'fitter_param_names')] + return list_of_parameters + +def get_list_motion_model_param_names(motion_model_list, with_errors=True): list_of_parameters = [] all_motion_models = [eval(mm) for mm in np.unique(motion_model_list).tolist()] for aa in range(len(all_motion_models)): @@ -207,7 +272,7 @@ def get_motion_model_param_names(motion_model_list, with_errors=False): return np.unique(list_of_parameters).tolist() -def get_all_motion_model_param_names(with_errors=False): +def get_all_motion_model_param_names(with_errors=True): list_of_parameters = [] all_motion_models = MotionModel.__subclasses__() for aa in range(len(all_motion_models)): diff --git a/flystar/startables.py b/flystar/startables.py index 32e2196..32d4138 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -533,7 +533,6 @@ def detections(self): self.add_column(Column(n_detect), name='n_detect') return - def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, bootstrap=0, fixed_t0=False, verbose=False, mask_val=None, mask_lists=False, show_progress=True, default_motion_model='Linear'): @@ -586,9 +585,11 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b # if 'motion_model' not in self.colnames: self['motion_model'] = default_motion_model + all_motion_models = np.unique(self['motion_model'].tolist() + ['Fixed','Linear']).tolist() - new_col_list = motion_model.get_motion_model_param_names(all_motion_models, with_errors=True) + new_col_list = motion_model.get_list_motion_model_param_names(all_motion_models, with_errors=True) # Append goodness of fit metrics and t0. + # TODO: actually populate these columns new_col_list += ['chi2_x', 'chi2_y'] # Define output arrays for the best-fit parameters. @@ -605,8 +606,8 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b self.meta['n_fit_bootstrap'] = bootstrap # (FIXME: Do we need to catch the case where there's a single *unmasked* epoch?) - # Catch the case when there is only a single epoch. Just return 0 velocity - # and the same input position for the x0/y0. + # Catch the case when there is only a single epoch. Just return + # the same input position for the x0/y0. if (self['x'].shape[1] == 1): self['motion_model'] = 'Fixed' self['x0'] = self['x'][:,0] @@ -624,19 +625,28 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b self['n_fit'] = 1 return + + # TODO: this is not great - hack attempt at debugging + motion_model_dict = {} + for motion_model_name in np.unique(self['motion_model']): + motion_model_dict[motion_model_name] = getattr(motion_model, motion_model_name)() # STARS LOOP through the stars and work on them 1 at a time. # This is slow; but robust. if show_progress: for ss in tqdm(range(N_stars)): self.fit_velocity_for_star(ss, weighting=weighting, use_scipy=use_scipy, - absolute_sigma=absolute_sigma, bootstrap=bootstrap, fixed_t0=fixed_t0, - mask_val=mask_val, mask_lists=mask_lists) + absolute_sigma=absolute_sigma, bootstrap=bootstrap, + fixed_t0=fixed_t0, default_motion_model=default_motion_model, + mask_val=mask_val, mask_lists=mask_lists, + motion_model_dict=motion_model_dict) else: for ss in range(N_stars): self.fit_velocity_for_star(ss, weighting=weighting, use_scipy=use_scipy, - absolute_sigma=absolute_sigma, bootstrap=bootstrap, fixed_t0=fixed_t0, - mask_val=mask_val, mask_lists=mask_lists) + absolute_sigma=absolute_sigma, bootstrap=bootstrap, + fixed_t0=fixed_t0, default_motion_model=default_motion_model, + mask_val=mask_val, mask_lists=mask_lists, + motion_model_dict=motion_model_dict) if verbose: stop_time = time.time() print('startable.fit_velocities runtime = {0:.0f} s for {1:d} stars'.format(stop_time - start_time, N_stars)) @@ -645,7 +655,9 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, absolute_sigma=True, bootstrap=False, fixed_t0=False, - mask_val=None, mask_lists=False): + default_motion_model='Linear', + mask_val=None, mask_lists=False, + motion_model_dict=None): # # Make a mask of invalid (NaN) values and a user-specified invalid value. @@ -786,18 +798,21 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, # # Decide which motion_model to fit. # - motion_model_assigned = self['motion_model'][ss] - - # Override the motion model if we don't have enought data. - # TODO: Query the motion model object to see the minimum number of points needed. - if motion_model_assigned=='Fixed' or N_good==1 or (dt == dt[0]).all(): - # Either 'fixed' is selected, or is required because - # of no time-domain data + motion_model_use = self['motion_model'][ss] + + # Go to default model if not enough points for assigned but enough for default + # TODO: think about whether we want other fallbacks besides the singular default and Fixed + if (N_good < getattr(motion_model, self['motion_model'][ss]).n_pts_req) and \ + (N_good >= getattr(motion_model, default_motion_model).n_pts_req): + motion_model_use = default_motion_model + # If not enough points for either, go to a fixed model + elif (N_good < getattr(motion_model, self['motion_model'][ss]).n_pts_req) and \ + (N_good < getattr(motion_model, default_motion_model).n_pts_req): motion_model_use = 'Fixed' - elif motion_model_assigned=='Linear' and N_good>1: - # If 'Linear' is selected and enough data exists - # to model linear motion - motion_model_use = 'Linear' + # If the points do not cover multiple times, go to a fixed model + if (dt == dt[0]).all(): + motion_model_use = 'Fixed' + self['motion_model'][ss] = motion_model_use # Instantiate the motion model object. @@ -825,6 +840,10 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, # Fit for the best parameters params, param_errs = mod.fit_motion_model(dt, x, y, xe, ye, bootstrap=bootstrap) + + # TODO: bad + #with modClass(**param_dict) as mod: + # params, param_errs = mod.fit_motion_model(dt, x, y, xe, ye, bootstrap=bootstrap) # Save parameters and errors to table. for pp in range(len(modClass.fitter_param_names)): @@ -833,10 +852,47 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, self[par][ss] = params[pp] self[par_err][ss] = param_errs[pp] - + return - - + + # New function, to use in align + def get_star_positions_at_time(self, t): + """ Get current x,y positions of each star according to its motion_model + Instead of looping through every star, we implement a faster calculation for Fixed and Linear models, + and loop through any stars with a more complex model + TODO: can add acceleration model to the ones with shortcuts + """ + # Start with empty arrays so we can fill them in batches + N_stars = len(self) + x = np.full(N_stars, np.nan, dtype=float) + y = np.full(N_stars, np.nan, dtype=float) + xe = np.full(N_stars, np.nan, dtype=float) + ye = np.full(N_stars, np.nan, dtype=float) + # Check which motion models we need + # use complex_mms to collect models besides Fixed and Linear + unique_mms = np.unique(self['motion_model']).tolist() + # Calculate current position in batches by motion model + for mm in unique_mms: + # Identify stars with this model & get class + idx = np.where(self['motion_model']==mm)[0] + modClass = getattr(motion_model, mm) + # Set up parameters + param_dict = {} + for par in modClass.fitter_param_names: + param_dict[par] = self[par][idx] + param_dict[par+'_err'] = self[par+'_err'][idx] + # Load fixed parameters, if needed. + for par in modClass.fixed_param_names: + if par not in self.colnames: + msg = f'fit_velocity_for_star: ' + msg += f'Missing fixed_params column {par} needed for motion model {motion_model_use}.' + raise RuntimeException(msg) + param_dict[par] = self[par][idx] + mod = modClass() + x[idx],y[idx],xe[idx],ye[idx] = mod.get_batch_pos_at_time(t,**param_dict) + return x,y,xe,ye + + def fit_velocities_all_detected(self, weighting='var', use_scipy=False, absolute_sigma=False, epoch_cols='all', mask_val=None, art_star=False, return_result=False): """Fit velocities for stars detected in all epochs specified by epoch_cols. Criterion: xe/ye error > 0 and finite, x/y not masked. diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 4892acc..592dc69 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -8,7 +8,7 @@ import pylab as plt import pdb import datetime - +import pytest def test_MosaicSelfRef(): """ @@ -101,7 +101,7 @@ def test_MosaicSelfRef_vel_tconst(): dr_tol=[3, 3], dm_tol=[1, 1], trans_class=transforms.PolyTransform, trans_args={'order': 2}, - use_motion=True, default_motion_model='Linear', + default_motion_model='Linear', verbose=False) msc.fit() diff --git a/flystar/tests/test_startable.py b/flystar/tests/test_startable.py index a862b55..b03acf1 100644 --- a/flystar/tests/test_startable.py +++ b/flystar/tests/test_startable.py @@ -359,7 +359,7 @@ def test_fit_velocities(): ########## # Test bootstrap ########## - tab_b = table.vstack((tab1, tab2, tab3)) + '''tab_b = table.vstack((tab1, tab2, tab3)) tab_b.meta = tab1.meta tab_b.fit_velocities(verbose=True, bootstrap=50) @@ -367,7 +367,7 @@ def test_fit_velocities(): assert tab_b['x0_err'][0] > tab['x0_err'][0] assert tab_b['vx_err'][0] > tab['vx_err'][0] assert tab_b['y0_err'][0] > tab['y0_err'][0] - assert tab_b['vy_err'][0] > tab['vy_err'][0] + assert tab_b['vy_err'][0] > tab['vy_err'][0]''' ########## # Test what happens with no velocity errors From 860255f461b636dbf35478c8ebeb29edd33db93b Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 20 Aug 2024 17:41:06 -0700 Subject: [PATCH 013/124] minor bug fixes --- flystar/match.py | 4 +-- flystar/tests/test_align.py | 69 +++++++++++++++++++------------------ 2 files changed, 37 insertions(+), 36 deletions(-) diff --git a/flystar/match.py b/flystar/match.py index 96a9f77..591dd16 100644 --- a/flystar/match.py +++ b/flystar/match.py @@ -278,8 +278,8 @@ def match(x1, y1, m1, x2, y2, m2, dr_tol, dm_tol=None, verbose=True): idxs1 = np.ones(x1.size, dtype=int) * -1 idxs2 = np.ones(x1.size, dtype=int) * -1 - print(coords2) - pdb.set_trace() + # TODO: consider better solution for this + coords2=np.nan_to_num(coords2) # The matching will be done using a KDTree. kdt = KDT(coords2, balanced_tree=False) diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 592dc69..6caab14 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -30,11 +30,11 @@ def test_MosaicSelfRef(): # Check some of the output quantities on the final table. assert 'x0' in msc.ref_table.colnames - assert 'x0e' in msc.ref_table.colnames + assert 'x0_err' in msc.ref_table.colnames assert 'y0' in msc.ref_table.colnames - assert 'y0e' in msc.ref_table.colnames + assert 'y0_err' in msc.ref_table.colnames assert 'm0' in msc.ref_table.colnames - assert 'm0e' in msc.ref_table.colnames + assert 'm0_err' in msc.ref_table.colnames assert 'use_in_trans' in msc.ref_table.colnames assert 'used_in_trans' in msc.ref_table.colnames assert 'ref_orig' in msc.ref_table.colnames @@ -46,13 +46,14 @@ def test_MosaicSelfRef(): # Check that we have some matched stars... should be at least 35 stars # that are detected in all 4 starlists. idx = np.where(msc.ref_table['n_detect'] == 4)[0] + print(len(idx)) assert len(idx) > 35 # Check that the transformation error isn't too big - assert (msc.ref_table['x0e'] < 3.0).all() # less than 1 pix - assert (msc.ref_table['y0e'] < 3.0).all() - #assert (msc.ref_table['m0e'] < 1.0).all() # less than 0.5 mag - assert (msc.ref_table['m0e'] < 1.5).all() # less than 0.5 mag + assert (msc.ref_table['x0_err'] < 3.0).all() # less than 1 pix + assert (msc.ref_table['y0_err'] < 3.0).all() + #assert (msc.ref_table['m0_err'] < 1.0).all() # less than 0.5 mag + assert (msc.ref_table['m0_err'] < 1.5).all() # less than 0.5 mag # Check that the transformation lists aren't too wacky for ii in range(4): @@ -62,8 +63,8 @@ def test_MosaicSelfRef(): # We didn't do any velocity fitting, so make sure nothing got created. assert 'vx' not in msc.ref_table.colnames assert 'vy' not in msc.ref_table.colnames - assert 'vxe' not in msc.ref_table.colnames - assert 'vye' not in msc.ref_table.colnames + assert 'vx_err' not in msc.ref_table.colnames + assert 'vy_err' not in msc.ref_table.colnames plt.clf() plt.plot(msc.ref_table['x'][:, 0], @@ -141,8 +142,8 @@ def test_MosaicSelfRef_vel_tconst(): assert (msc.ref_table['vx'] == 0).all() assert (msc.ref_table['vy'] == 0).all() - assert (msc.ref_table['vxe'] == 0).all() - assert (msc.ref_table['vye'] == 0).all() + assert (msc.ref_table['vx_err'] == 0).all() + assert (msc.ref_table['vy_err'] == 0).all() return @@ -181,15 +182,15 @@ def test_MosaicSelfRef_vel(): # Check some of the output quantities on the final table. assert 'x0' in msc.ref_table.colnames - assert 'x0e' in msc.ref_table.colnames + assert 'x0_err' in msc.ref_table.colnames assert 'y0' in msc.ref_table.colnames - assert 'y0e' in msc.ref_table.colnames + assert 'y0_err' in msc.ref_table.colnames assert 'm0' in msc.ref_table.colnames - assert 'm0e' in msc.ref_table.colnames + assert 'm0_err' in msc.ref_table.colnames assert 'vx' in msc.ref_table.colnames - assert 'vxe' in msc.ref_table.colnames + assert 'vx_err' in msc.ref_table.colnames assert 'vy' in msc.ref_table.colnames - assert 'vye' in msc.ref_table.colnames + assert 'vy_err' in msc.ref_table.colnames assert 't0' in msc.ref_table.colnames # Check that we have some matched stars... should be at least 35 stars @@ -198,9 +199,9 @@ def test_MosaicSelfRef_vel(): assert len(idx) > 35 # Check that the transformation error isn't too big - assert (msc.ref_table['x0e'] < 3.0).all() # less than 1 pix - assert (msc.ref_table['y0e'] < 3.0).all() - assert (msc.ref_table['m0e'] < 1.0).all() # less than 0.5 mag + assert (msc.ref_table['x0_err'] < 3.0).all() # less than 1 pix + assert (msc.ref_table['y0_err'] < 3.0).all() + assert (msc.ref_table['m0_err'] < 1.0).all() # less than 0.5 mag # Check that the transformation lists aren't too wacky for ii in range(4): @@ -230,8 +231,8 @@ def test_MosaicToRef(): # Convert velocities to arcsec/yr ref_list['vx'] *= 1e-3 ref_list['vy'] *= 1e-3 - ref_list['vxe'] *= 1e-3 - ref_list['vye'] *= 1e-3 + ref_list['vx_err'] *= 1e-3 + ref_list['vy_err'] *= 1e-3 # Switch our list to a "increasing to the West" list. ref_list['x0'] *= -1.0 @@ -290,8 +291,8 @@ def test_MosaicToRef_acc(): # Convert velocities to arcsec/yr ref_list['vx'] *= 1e-3 ref_list['vy'] *= 1e-3 - ref_list['vxe'] *= 1e-3 - ref_list['vye'] *= 1e-3 + ref_list['vx_err'] *= 1e-3 + ref_list['vy_err'] *= 1e-3 # Convert accelerations to arcsec/yr**2 ref_list['ax'] *= 1e-3 @@ -476,8 +477,8 @@ def make_fake_starlists_poly1_vel(seed=-1): # Make an StarList lis = starlists.StarList([name, m0, m0e, x0, x0e, y0, y0e, vx, vxe, vy, vye, t0], - names = ('name', 'm0', 'm0e', 'x0', 'x0e', 'y0', 'y0e', - 'vx', 'vxe', 'vy', 'vye', 't0')) + names = ('name', 'm0', 'm0_err', 'x0', 'x0_err', 'y0', 'y0_err', + 'vx', 'vx_err', 'vy', 'vy_err', 't0')) sdx = np.argsort(m0) lis = lis[sdx] @@ -511,8 +512,8 @@ def make_fake_starlists_poly1_vel(seed=-1): # Convert into pixels xp = (x / -scale) + shift[0] # -1 from switching to increasing to West (right) yp = (y / scale) + shift[1] - xpe = lis['x0e'] / scale - ype = lis['y0e'] / scale + xpe = lis['x0_err'] / scale + ype = lis['y0_err'] / scale # Distort the positions trans = transforms.PolyTransform(1, xy_trans[ss][0], xy_trans[ss][1], mag_offset=mag_trans[ss]) @@ -525,7 +526,7 @@ def make_fake_starlists_poly1_vel(seed=-1): md += np.random.randn(N_stars) * 0.02 xde = xpe yde = ype - mde = lis['m0e'] + mde = lis['m0_err'] # Save the new list as a starlist. new_lis = starlists.StarList([lis['name'], md, mde, xd, xde, yd, yde, t], @@ -575,9 +576,9 @@ def make_fake_starlists_poly1_acc(seed=-1): vx, vxe, vy, vye, ax, axe, ay, aye, t0], - names = ('name', 'm0', 'm0e', - 'x0', 'x0e', 'y0', 'y0e', - 'vx', 'vxe', 'vy', 'vye', + names = ('name', 'm0', 'm0_err', + 'x0', 'x0_err', 'y0', 'y0_err', + 'vx', 'vx_err', 'vy', 'vy_err', 'ax', 'axe', 'ay', 'aye', 't0')) @@ -613,8 +614,8 @@ def make_fake_starlists_poly1_acc(seed=-1): # Convert into pixels xp = (x / -scale) + shift[0] # -1 from switching to increasing to West (right) yp = (y / scale) + shift[1] - xpe = lis['x0e'] / scale - ype = lis['y0e'] / scale + xpe = lis['x0_err'] / scale + ype = lis['y0_err'] / scale # Distort the positions trans = transforms.PolyTransform(1, xy_trans[ss][0], xy_trans[ss][1], mag_offset=mag_trans[ss]) @@ -627,7 +628,7 @@ def make_fake_starlists_poly1_acc(seed=-1): md += np.random.randn(N_stars) * 0.02 xde = xpe yde = ype - mde = lis['m0e'] + mde = lis['m0_err'] # Save the new list as a starlist. new_lis = starlists.StarList([lis['name'], md, mde, xd, xde, yd, yde, t], From 343cf6461bd33f9c6f6dfe494577baeaf3e14898 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 21 Aug 2024 17:08:07 -0700 Subject: [PATCH 014/124] motion model progress' --- flystar/align.py | 70 ++++++++++++++++++------------------- flystar/starlists.py | 50 +++++++++++++------------- flystar/startables.py | 45 +++++++++++------------- flystar/tests/ref_vel.lis | 2 +- flystar/tests/test_align.py | 20 ++++++----- flystar/transforms.py | 8 ++--- 6 files changed, 97 insertions(+), 98 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 8968633..bd03d40 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -277,7 +277,6 @@ def fit(self): # w, w_orig (optiona) -- the input and output weights of stars in transform: 2D ########## self.ref_table = self.setup_ref_table_from_starlist(self.star_lists[self.ref_index]) - # Save the reference index to the meta data on the reference list. self.ref_table.meta['ref_list'] = self.ref_index @@ -402,7 +401,7 @@ def match_and_transform(self, ref_mag_lim, dr_tol, dm_tol, outlier_tol, trans_ar star_list_T.transform_xym(trans) # trimmed, transformed else: star_list_T.transform_xy(trans) - + # Match stars between the transformed, trimmed lists. idx1, idx2, dr, dm = match.match(star_list_T['x'], star_list_T['y'], star_list_T['m'], ref_list['x'], ref_list['y'], ref_list['m'], @@ -501,11 +500,12 @@ def match_and_transform(self, ref_mag_lim, dr_tol, dm_tol, outlier_tol, trans_ar ## Make plot, if desired plots.trans_positions(ref_list, ref_list[idx_ref], star_list_T, star_list_T[idx_lis], fileName='{0}'.format(star_list_T['t'][0])) - + ### Update the observed (but transformed) values in the reference table. self.update_ref_table_from_list(star_list, star_list_T, ii, idx_ref, idx_lis, idx2) - + ### Update the "average" values to be used as the reference frame for the next list. + print(self.ref_table.keys()) if self.update_ref_orig != 'periter': self.update_ref_table_aggregates() @@ -571,7 +571,7 @@ def setup_ref_table_from_starlist(self, star_list): array in the original reference star list. """ col_arrays = {} - motion_model_col_names = motion_model.get_all_motion_model_param_names(with_errors=True) + motion_model_col_names = motion_model.get_all_motion_model_param_names(with_errors=True) + ['m0','m0_err','use_in_trans'] for col_name in star_list.colnames: if col_name == 'name': # The "name" column will be 1D; but we will also add a "name_in_list" column. @@ -665,13 +665,12 @@ def setup_ref_table_from_starlist(self, star_list): # Keep track of whether this is an original reference star. col_ref_orig = Column(np.ones(len(ref_table), dtype=bool), name='ref_orig') ref_table.add_column(col_ref_orig) - # Now reset the original values to invalids... they will be filled in # at later times. Preserve content only in the columns: name, x0, y0, m0 (and 0e). # Note that these are all the 1D columsn. for col_name in ref_table.colnames: if len(ref_table[col_name].data.shape) == 2: # Find the 2D columns - ref_table._set_invalid_list_values(col_name, -1) + ref_table._set_invalid_list_values(col_name, -1) return ref_table @@ -817,7 +816,10 @@ def update_ref_table_aggregates(self, n_boot=0): vals_orig = {} vals_orig['m0'] = self.ref_table['m0'][ref_orig_idx] vals_orig['m0_err'] = self.ref_table['m0_err'][ref_orig_idx] - motion_model_col_names = motion_model.get_list_motion_model_param_names(self.ref_table['motion_model'][ref_orig_idx], with_errors=True) + motion_model_class_names = [self.default_motion_model] + if 'motion_model_used' in self.ref_table.keys(): + motion_model_class_names += self.ref_table['motion_model_used'][ref_orig_idx].tolist() + motion_model_col_names = motion_model.get_list_motion_model_param_names(motion_model_class_names, with_errors=True) for mm in motion_model_col_names: vals_orig[mm] = self.ref_table[mm][ref_orig_idx] @@ -838,12 +840,10 @@ def update_ref_table_aggregates(self, n_boot=0): weighted_m = ('me' in self.ref_table.colnames) self.ref_table.combine_lists_xym(weighted_xy=weighted_xy, weighted_m=weighted_m)''' - # Replace the originals if we are supposed to keep them fixed. if not self.update_ref_orig: for val in vals_orig.keys(): self.ref_table[val][ref_orig_idx] = vals_orig[val] - return def get_weights_for_lists(self, ref_list, star_list): @@ -946,7 +946,7 @@ def get_ref_list_from_table(self, epoch): # Reference stars will be named. name = self.ref_table['name'] - if ('motion_model' in self.ref_table.colnames): + if ('motion_model_used' in self.ref_table.colnames): x,y,xe,ye = self.ref_table.get_star_positions_at_time(epoch) else: # No velocities... just used average positions. @@ -1545,9 +1545,9 @@ def fit(self): self.ref_table['vx'] = self.ref_list['vx'] self.ref_table['vy'] = self.ref_list['vy'] self.ref_table['t0'] = self.ref_list['t0'] - if 'vxe' in self.ref_list.colnames: - self.ref_table['vxe'] = self.ref_list['vxe'] - self.ref_table['vye'] = self.ref_list['vye'] + if 'vx_err' in self.ref_list.colnames: + self.ref_table['vx_err'] = self.ref_list['vx_err'] + self.ref_table['vy_err'] = self.ref_list['vy_err'] ########## @@ -1710,7 +1710,7 @@ def setup_ref_table_from_starlist(star_list): if 'use_in_trans' not in ref_table.colnames: new_col = Column(np.ones(len(ref_table), dtype=bool), name='use_in_trans') ref_table.add_column(new_col) - + # Now reset the original values to invalids... they will be filled in # at later times. Preserve content only in the columns: name, x0, y0, m0 (and 0e). # Note that these are all the 1D columsn. @@ -1815,8 +1815,10 @@ def add_rows_for_new_stars(ref_table, star_list, idx_lis, default_motion_model=' new_col_empty = -1 elif ref_table[col_name].dtype == np.dtype('bool'): new_col_empty = False - elif col_name=='motion_model': + elif col_name=='motion_model_input': new_col_empty = default_motion_model + elif col_name=='motion_model_used': + new_col_empty = 'None' else: new_col_empty = np.nan @@ -1878,7 +1880,7 @@ def run_align_iter(catalog, trans_order=1, poly_deg=1, ref_mag_lim=19, ref_radiu calc_mag_avg_all_stars(d) tdx = np.where((d['name_0'] == 'OB120169') | (d['name_0'] == 'OB120169_L'))[0] - print(d[tdx]['name_0', 't0', 'mag', 'x0', 'vx', 'x0_err', 'vxe', 'chi2x', 'y0', 'vy', 'y0_err', 'vye', 'chi2y', 'dof']) + print(d[tdx]['name_0', 't0', 'mag', 'x0', 'vx', 'x0_err', 'vx_err', 'chi2x', 'y0', 'vy', 'y0_err', 'vy_err', 'chi2y', 'dof']) ########## # Second iteration -- align everything to reference positions derived from iteration 1 @@ -2021,8 +2023,8 @@ def calc_transform_ref_poly(d, target_name, poly_deg, ref_mag_lim, ref_radius_li if poly_deg >= 1: x_ref_ee += d['vx'] * dt y_ref_ee += d['vy'] * dt - xe_ref_ee = np.hypot(xe_ref_ee, d['vxe'] * dt) - ye_ref_ee = np.hypot(ye_ref_ee, d['vye'] * dt) + xe_ref_ee = np.hypot(xe_ref_ee, d['vx_err'] * dt) + ye_ref_ee = np.hypot(ye_ref_ee, d['vy_err'] * dt) if poly_deg >= 2: x_ref_ee += d['ax'] * dt @@ -2194,8 +2196,8 @@ def calc_polyfit_all_stars(d, poly_deg, init_fig_idx=0): if poly_deg >= 1: d['vx'] = px_all[:, -2] d['vy'] = py_all[:, -2] - d['vxe'] = pxe_all[:, -2] - d['vye'] = pye_all[:, -2] + d['vx_err'] = pxe_all[:, -2] + d['vy_err'] = pye_all[:, -2] if poly_deg >= 2: d['ax'] = px_all[:, -3] @@ -2730,8 +2732,8 @@ def transform_from_file(starlist, transFile): vx_orig = starlist['vx'] vy_orig = starlist['vy'] - vxe_orig = starlist['vxe'] - vye_orig = starlist['vye'] + vxe_orig = starlist['vx_err'] + vye_orig = starlist['vy_err'] # Read transFile trans = Table.read(transFile, format='ascii.commented_header', header_start=-1) @@ -2841,8 +2843,8 @@ def transform_from_file(starlist, transFile): starlist_f['y0_err'] = y0e_new starlist_f['vx'] = vx_new starlist_f['vy'] = vy_new - starlist_f['vxe'] = vxe_new - starlist_f['vye'] = vye_new + starlist_f['vx_err'] = vxe_new + starlist_f['vy_err'] = vye_new return starlist_f @@ -2893,8 +2895,8 @@ def transform_from_object(starlist, transform): y0e = starlist_f['y0_err'] vx = starlist_f['vx'] vy = starlist_f['vy'] - vxe = starlist_f['vxe'] - vye = starlist_f['vye'] + vxe = starlist_f['vx_err'] + vye = starlist_f['vy_err'] # calculate the transformed position and velocity @@ -2921,8 +2923,8 @@ def transform_from_object(starlist, transform): starlist_f['y0_err'] = y0e_new starlist_f['vx'] = vx_new starlist_f['vy'] = vy_new - starlist_f['vxe'] = vxe_new - starlist_f['vye'] = vye_new + starlist_f['vx_err'] = vxe_new + starlist_f['vy_err'] = vye_new return starlist_f @@ -3766,8 +3768,8 @@ def get_weighting_scheme(weights, ref_list, star_list): return weight -# TODO: Are starlists supposed to hold velocities? We'll need to add a motion_model column if so -def get_pos_at_time(t, starlist,use_motion=True): +# TODO: I think this is a startable, not a starlist +def get_pos_at_time(t, starlist): """ Take a starlist, check to see if it has velocity columns. If it does, then propogate the positions forward in time @@ -3781,10 +3783,8 @@ def get_pos_at_time(t, starlist,use_motion=True): but it should be in the same units as the 't0' column in starlist. """ - if use_motion and ('vx' in starlist.colnames) and ('vy' in starlist.colnames): - dt = t - starlist['t0'] - x = starlist['x0'] + (starlist['vx'] * dt) - y = starlist['y0'] + (starlist['vy'] * dt) + if 'motion_model_used' in starlist.colnames: + x,y,xe,ye = starlist.get_star_positions_at_time(t) else: if ('x0' in starlist.colnames) and ('y0' in starlist.colnames): x = starlist['x0'] diff --git a/flystar/starlists.py b/flystar/starlists.py index be49458..23df44f 100644 --- a/flystar/starlists.py +++ b/flystar/starlists.py @@ -209,12 +209,12 @@ def read_label(labelFile, prop_to_time=None, flipX=True): t_label.rename_column('col2', 'm') t_label.rename_column('col3', 'x0') t_label.rename_column('col4', 'y0') - t_label.rename_column('col5', 'x0e') - t_label.rename_column('col6', 'y0e') + t_label.rename_column('col5', 'x0_err') + t_label.rename_column('col6', 'y0_err') t_label.rename_column('col7', 'vx') t_label.rename_column('col8', 'vy') - t_label.rename_column('col9', 'vxe') - t_label.rename_column('col10','vye') + t_label.rename_column('col9', 'vx_err') + t_label.rename_column('col10','vy_err') t_label.rename_column('col11','t0') t_label.rename_column('col12','use') t_label.rename_column('col13','r0') @@ -222,23 +222,23 @@ def read_label(labelFile, prop_to_time=None, flipX=True): # Convert velocities from mas/yr to arcsec/year # t_label['vx'] *= 0.001 # t_label['vy'] *= 0.001 -# t_label['vxe'] *= 0.001 -# t_label['vye'] *= 0.001 +# t_label['vx_err'] *= 0.001 +# t_label['vy_err'] *= 0.001 t_label['vx'] = t_label['vx'] * 0.001 t_label['vy'] = t_label['vy'] * 0.001 - t_label['vxe'] = t_label['vxe'] * 0.001 - t_label['vye'] = t_label['vye'] * 0.001 + t_label['vx_err'] = t_label['vx_err'] * 0.001 + t_label['vy_err'] = t_label['vy_err'] * 0.001 # propogate to prop_to_time if prop_to_time is given if prop_to_time != None: x0 = t_label['x0'] - x0e = t_label['x0e'] + x0e = t_label['x0_err'] vx = t_label['vx'] - vxe = t_label['vxe'] + vxe = t_label['vx_err'] y0 = t_label['y0'] - y0e = t_label['y0e'] + y0e = t_label['y0_err'] vy = t_label['vy'] - vye = t_label['vye'] + vye = t_label['vy_err'] t0 = t_label['t0'] t_label['x'] = x0 + vx*(prop_to_time - t0) t_label['y'] = y0 + vy*(prop_to_time - t0) @@ -316,12 +316,12 @@ def read_label_accel(labelFile, prop_to_time=None, flipX=True): t_label.rename_column('col2', 'm') t_label.rename_column('col3', 'x0') t_label.rename_column('col4', 'y0') - t_label.rename_column('col5', 'x0e') - t_label.rename_column('col6', 'y0e') + t_label.rename_column('col5', 'x0_err') + t_label.rename_column('col6', 'y0_err') t_label.rename_column('col7', 'vx') t_label.rename_column('col8', 'vy') - t_label.rename_column('col9', 'vxe') - t_label.rename_column('col10','vye') + t_label.rename_column('col9', 'vx_err') + t_label.rename_column('col10','vy_err') t_label.rename_column('col11', 'ax') t_label.rename_column('col12', 'ay') t_label.rename_column('col13', 'axe') @@ -333,12 +333,12 @@ def read_label_accel(labelFile, prop_to_time=None, flipX=True): # Convert velocities from mas/yr to arcsec/year # t_label['vx'] *= 0.001 # t_label['vy'] *= 0.001 -# t_label['vxe'] *= 0.001 -# t_label['vye'] *= 0.001 +# t_label['vx_err'] *= 0.001 +# t_label['vy_err'] *= 0.001 t_label['vx'] = t_label['vx'] * 0.001 t_label['vy'] = t_label['vy'] * 0.001 - t_label['vxe'] = t_label['vxe'] * 0.001 - t_label['vye'] = t_label['vye'] * 0.001 + t_label['vx_err'] = t_label['vx_err'] * 0.001 + t_label['vy_err'] = t_label['vy_err'] * 0.001 t_label['ax'] = t_label['ax'] * 0.001 t_label['ay'] = t_label['ay'] * 0.001 @@ -348,15 +348,15 @@ def read_label_accel(labelFile, prop_to_time=None, flipX=True): # propogate to prop_to_time if prop_to_time is given if prop_to_time != None: x0 = t_label['x0'] - x0e = t_label['x0e'] + x0e = t_label['x0_err'] vx = t_label['vx'] - vxe = t_label['vxe'] + vxe = t_label['vx_err'] ax = t_label['ax'] axe = t_label['axe'] y0 = t_label['y0'] - y0e = t_label['y0e'] + y0e = t_label['y0_err'] vy = t_label['vy'] - vye = t_label['vye'] + vye = t_label['vy_err'] ay = t_label['ay'] aye = t_label['aye'] t0 = t_label['t0'] @@ -535,6 +535,8 @@ def __init__(self, *args, **kwargs): # Check all the arrays. arg_tab = ('x', 'y', 'm', 'xe', 'ye', 'me', 'corr') + #print(kwargs) + for arg_test in arg_tab: if arg_test in kwargs: if not isinstance(kwargs[arg_test], np.ndarray): diff --git a/flystar/startables.py b/flystar/startables.py index 32d4138..83f4b5e 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -164,8 +164,8 @@ def __init__(self, *args, ref_list=0, **kwargs): self.add_column(Column(data=kwargs[arg], name=arg)) if arg == 'name_in_list': self['name_in_list'] = self['name_in_list'].astype('U20') - if arg == 'motion_model': - self['motion_model'] = self['motion_model'].astype('U20') + if arg == 'motion_model_input': + self['motion_model_input'] = self['motion_model_input'].astype('U20') '''if 'motion_model' not in kwargs: self['motion_model'] = np.repeat(default_motion_model, len(self['name']))''' @@ -507,7 +507,7 @@ def combine_lists(self, col_name_in, weights_col=None, mask_val=None, # Save off our new AVG and STD into new columns with shape (N_stars). col_name_avg = col_name_in + '0' - col_name_std = col_name_in + '0e' + col_name_std = col_name_in + '0_err' if ismag: std = (2.5 / np.log(10)) * std / avg @@ -579,14 +579,17 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b msg = 'Starting startable.fit_velocities for {0:d} stars with n={1:d} bootstrap' print(msg.format(N_stars, bootstrap)) + # Set all to default_motion_model if none assigned already. + # Reset motion_model_used to the inputs for now -> will change as fits run + if 'motion_model_input' not in self.colnames: + self['motion_model_input'] = default_motion_model + self['motion_model_used'] = self['motion_model_input'] + # # Fill table with all possible motion model parameter names as new # columns. Make everything empty for now. # - if 'motion_model' not in self.colnames: - self['motion_model'] = default_motion_model - - all_motion_models = np.unique(self['motion_model'].tolist() + ['Fixed','Linear']).tolist() + all_motion_models = np.unique(self['motion_model_input'].tolist() + ['Fixed']+[default_motion_model]).tolist() new_col_list = motion_model.get_list_motion_model_param_names(all_motion_models, with_errors=True) # Append goodness of fit metrics and t0. # TODO: actually populate these columns @@ -609,7 +612,7 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b # Catch the case when there is only a single epoch. Just return # the same input position for the x0/y0. if (self['x'].shape[1] == 1): - self['motion_model'] = 'Fixed' + self['motion_model_used'] = 'Fixed' self['x0'] = self['x'][:,0] self['y0'] = self['y'][:,0] @@ -625,11 +628,6 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b self['n_fit'] = 1 return - - # TODO: this is not great - hack attempt at debugging - motion_model_dict = {} - for motion_model_name in np.unique(self['motion_model']): - motion_model_dict[motion_model_name] = getattr(motion_model, motion_model_name)() # STARS LOOP through the stars and work on them 1 at a time. # This is slow; but robust. @@ -638,15 +636,13 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b self.fit_velocity_for_star(ss, weighting=weighting, use_scipy=use_scipy, absolute_sigma=absolute_sigma, bootstrap=bootstrap, fixed_t0=fixed_t0, default_motion_model=default_motion_model, - mask_val=mask_val, mask_lists=mask_lists, - motion_model_dict=motion_model_dict) + mask_val=mask_val, mask_lists=mask_lists) else: for ss in range(N_stars): self.fit_velocity_for_star(ss, weighting=weighting, use_scipy=use_scipy, absolute_sigma=absolute_sigma, bootstrap=bootstrap, fixed_t0=fixed_t0, default_motion_model=default_motion_model, - mask_val=mask_val, mask_lists=mask_lists, - motion_model_dict=motion_model_dict) + mask_val=mask_val, mask_lists=mask_lists) if verbose: stop_time = time.time() print('startable.fit_velocities runtime = {0:.0f} s for {1:d} stars'.format(stop_time - start_time, N_stars)) @@ -656,8 +652,7 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, absolute_sigma=True, bootstrap=False, fixed_t0=False, default_motion_model='Linear', - mask_val=None, mask_lists=False, - motion_model_dict=None): + mask_val=None, mask_lists=False): # # Make a mask of invalid (NaN) values and a user-specified invalid value. @@ -798,22 +793,22 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, # # Decide which motion_model to fit. # - motion_model_use = self['motion_model'][ss] + motion_model_use = self['motion_model_input'][ss] # Go to default model if not enough points for assigned but enough for default # TODO: think about whether we want other fallbacks besides the singular default and Fixed - if (N_good < getattr(motion_model, self['motion_model'][ss]).n_pts_req) and \ + if (N_good < getattr(motion_model, self['motion_model_input'][ss]).n_pts_req) and \ (N_good >= getattr(motion_model, default_motion_model).n_pts_req): motion_model_use = default_motion_model # If not enough points for either, go to a fixed model - elif (N_good < getattr(motion_model, self['motion_model'][ss]).n_pts_req) and \ + elif (N_good < getattr(motion_model, self['motion_model_input'][ss]).n_pts_req) and \ (N_good < getattr(motion_model, default_motion_model).n_pts_req): motion_model_use = 'Fixed' # If the points do not cover multiple times, go to a fixed model if (dt == dt[0]).all(): motion_model_use = 'Fixed' - self['motion_model'][ss] = motion_model_use + self['motion_model_used'][ss] = motion_model_use # Instantiate the motion model object. modClass = getattr(motion_model, motion_model_use) @@ -870,11 +865,11 @@ def get_star_positions_at_time(self, t): ye = np.full(N_stars, np.nan, dtype=float) # Check which motion models we need # use complex_mms to collect models besides Fixed and Linear - unique_mms = np.unique(self['motion_model']).tolist() + unique_mms = np.unique(self['motion_model_used']).tolist() # Calculate current position in batches by motion model for mm in unique_mms: # Identify stars with this model & get class - idx = np.where(self['motion_model']==mm)[0] + idx = np.where(self['motion_model_used']==mm)[0] modClass = getattr(motion_model, mm) # Set up parameters param_dict = {} diff --git a/flystar/tests/ref_vel.lis b/flystar/tests/ref_vel.lis index 4d223b0..fc191bb 100644 --- a/flystar/tests/ref_vel.lis +++ b/flystar/tests/ref_vel.lis @@ -1,4 +1,4 @@ -name x y m xe ye me t0 vx vy vxe vye +name x y m xe ye me t0 vx vy vx_err vy_err gaia_1150 -63.98457260029581 -30.67278228118061 13.628200000000001 0.00014609621924194742 0.00014585407086906515 0.0115 2010.5 0.0 0.0 0.1 0.1 gaia_1162 0.47637231898572985 -79.79611824529178 14.6439 0.00011419811781207949 0.00011415029792639667 0.0084 2010.5 0.0 0.0 0.1 0.1 gaia_1166 8.546170748636236 -47.35893234401765 14.696900000000001 0.00013283068515276605 0.00013260913293195234 0.0041 2010.5 0.0 0.0 0.1 0.1 diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 6caab14..0ab2ab6 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -59,7 +59,6 @@ def test_MosaicSelfRef(): for ii in range(4): np.testing.assert_almost_equal(msc.trans_list[ii].px.c1_0, 1.0, 2) np.testing.assert_almost_equal(msc.trans_list[ii].py.c0_1, 1.0, 2) - # We didn't do any velocity fitting, so make sure nothing got created. assert 'vx' not in msc.ref_table.colnames assert 'vy' not in msc.ref_table.colnames @@ -82,6 +81,7 @@ def test_MosaicSelfRef(): plt.plot(msc.ref_table['x0'], msc.ref_table['y0'], 'k.', color='black', alpha=0.2) + return @@ -137,13 +137,14 @@ def test_MosaicSelfRef_vel_tconst(): # Check that the velocities aren't crazy... # they should be zero (since there is no time difference) - np.testing.assert_almost_equal(msc.ref_table['vx'], 0, 1) - np.testing.assert_almost_equal(msc.ref_table['vy'], 0, 1) + # TODO: is there a reason these were both happening? seemed like a duplicate assert + #np.testing.assert_almost_equal(msc.ref_table['vx'], 0, 1) + #np.testing.assert_almost_equal(msc.ref_table['vy'], 0, 1) - assert (msc.ref_table['vx'] == 0).all() - assert (msc.ref_table['vy'] == 0).all() - assert (msc.ref_table['vx_err'] == 0).all() - assert (msc.ref_table['vy_err'] == 0).all() + assert np.isnan(msc.ref_table['vx']).all() + assert np.isnan(msc.ref_table['vy']).all() + assert np.isnan(msc.ref_table['vx_err']).all() + assert np.isnan(msc.ref_table['vy_err']).all() return @@ -277,6 +278,7 @@ def test_MosaicToRef(): return msc +# TODO: Make this a valid test - it currently just runs with Linear def test_MosaicToRef_acc(): make_fake_starlists_poly1_acc(seed=42) @@ -311,11 +313,11 @@ def test_MosaicToRef_acc(): dr_tol=[0.2, 0.1], dm_tol=[1, 0.5], trans_class=transforms.PolyTransform, trans_args={'order': 2}, - motion_class=motion_model.Accel, - use_vel=True, + default_motion_model='Acceleration', update_ref_orig=False, verbose=False) msc.fit() + print(msc.ref_table['motion_model_input','motion_model_used']) # Check our status columns assert 'use_in_trans' in msc.ref_table.colnames diff --git a/flystar/transforms.py b/flystar/transforms.py index 0a1885a..7de327e 100755 --- a/flystar/transforms.py +++ b/flystar/transforms.py @@ -120,13 +120,13 @@ def evaluate_starlist(self, star_list): new_list['vy'] = vals[1] # Velocity errors (if they exist) - if 'vxe' in new_list.colnames: + if 'vx_err' in new_list.colnames: vals = self.evaluate_vel_error(star_list['x'], star_list['y'], star_list['vx'], star_list['vy'], star_list['xe'], star_list['ye'], - star_list['vxe'], star_list['vye']) - new_list['vxe'] = vals[0] - new_list['vye'] = vals[1] + star_list['vx_err'], star_list['vy_err']) + new_list['vx_err'] = vals[0] + new_list['vy_err'] = vals[1] return new_list From 7d13a070547dfd80f79d2fa5d8333fefb9f99545 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 21 Aug 2024 17:29:26 -0700 Subject: [PATCH 015/124] more motion model progress' --- flystar/align.py | 19 +++++++++---------- flystar/analysis.py | 34 +++++++++++++++++----------------- flystar/tests/test_align.py | 21 +++++++++++---------- 3 files changed, 37 insertions(+), 37 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index bd03d40..5d888c2 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -505,7 +505,6 @@ def match_and_transform(self, ref_mag_lim, dr_tol, dm_tol, outlier_tol, trans_ar self.update_ref_table_from_list(star_list, star_list_T, ii, idx_ref, idx_lis, idx2) ### Update the "average" values to be used as the reference frame for the next list. - print(self.ref_table.keys()) if self.update_ref_orig != 'periter': self.update_ref_table_aggregates() @@ -1054,10 +1053,10 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot 'me_boot', 2D column: bootstrap mag uncertainties due to transformation for each epoch If calc_vel_in_bootstrap: - 'x0e_boot', 1D column: bootstrap uncertainties in x0 for PM fit - 'y0e_boot', 1D column: bootstrap uncertainties in y0 for PM fit - 'vxe_boot', 1D column: bootstrap uncertainties in vx for PM fit - 'vye_boot', 1D column: bootstrap uncertainties in vy for PM fit + 'x0_err_boot', 1D column: bootstrap uncertainties in x0 for PM fit + 'y0_err_boot', 1D column: bootstrap uncertainties in y0 for PM fit + 'vx_err_boot', 1D column: bootstrap uncertainties in vx for PM fit + 'vy_err_boot', 1D column: bootstrap uncertainties in vy for PM fit For stars that fail boot_epochs_min criteria, np.nan is used """ @@ -1234,8 +1233,8 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot if calc_vel_in_bootstrap: x0_err_b = np.std(x0_arr, ddof=1, axis=1) y0_err_b = np.std(y0_arr, ddof=1, axis=1) - vx_err_b = np.std(vx_arr, ddof=1, axis=1) - vy_err_b = np.std(vy_arr, ddof=1, axis=1) + vx_err_b = np.nanstd(vx_arr, ddof=1, axis=1) + vy_err_b = np.nanstd(vy_arr, ddof=1, axis=1) else: x0_err_b = np.nan y0_err_b = np.nan @@ -1246,8 +1245,8 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot # hanging off of mosaic object. col_heads_2D = ['xe_boot', 'ye_boot', 'me_boot'] data_dict = {'xe_boot': x_err_b, 'ye_boot': y_err_b, 'me_boot': m_err_b, - 'x0e_boot': x0_err_b, 'y0e_boot': y0_err_b, - 'vxe_boot': vx_err_b, 'vye_boot': vy_err_b} + 'x0_err_boot': x0_err_b, 'y0_err_boot': y0_err_b, + 'vx_err_boot': vx_err_b, 'vy_err_boot': vy_err_b} for ff in col_heads_2D: col = Column(np.ones((len(self.ref_table), n_epochs)), name=ff) @@ -1258,7 +1257,7 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot # Now handle the velocities, if they were calculated if calc_vel_in_bootstrap: - col_heads_1D = [ 'x0e_boot', 'y0e_boot', 'vxe_boot', 'vye_boot'] + col_heads_1D = [ 'x0_err_boot', 'y0_err_boot', 'vx_err_boot', 'vy_err_boot'] for ff in col_heads_1D: col = Column(np.ones(len(self.ref_table)), name=ff) diff --git a/flystar/analysis.py b/flystar/analysis.py index 953461b..319ae01 100644 --- a/flystar/analysis.py +++ b/flystar/analysis.py @@ -90,14 +90,14 @@ def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2) gaia_new['x0'] = x * -1.0 gaia_new['y0'] = y - gaia_new['x0e'] = xe - gaia_new['y0e'] = ye + gaia_new['x0_err'] = xe + gaia_new['y0_err'] = ye # Also convert the velocities. Note that Gaia PM are already * cos(dec) gaia_new['vx'] = gaia['pmra'].data * -1.0 / 1e3 # asec/yr gaia_new['vy'] = gaia['pmdec'].data / 1e3 - gaia_new['vxe'] = gaia['pmra_error'].data / 1e3 - gaia_new['vye'] = gaia['pmdec_error'].data / 1e3 + gaia_new['vx_err'] = gaia['pmra_error'].data / 1e3 + gaia_new['vy_err'] = gaia['pmdec_error'].data / 1e3 gaia_new['t0'] = gaia['ref_epoch'].data gaia_new['source_id'] = gaia['source_id'].data.astype('S19') @@ -106,8 +106,8 @@ def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2) idx = np.where(gaia['pmdec'].mask == True)[0] gaia_new['vx'][idx] = 0.0 gaia_new['vy'][idx] = 0.0 - gaia_new['vxe'][idx] = 0.0 - gaia_new['vye'][idx] = 0.0 + gaia_new['vx_err'][idx] = 0.0 + gaia_new['vy_err'][idx] = 0.0 gaia_new['m'] = gaia['phot_g_mean_mag'] gaia_new['me'] = 1.09/gaia['phot_g_mean_flux_over_error'] @@ -117,9 +117,9 @@ def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2) # Set the velocities (and uncertainties) to zero if they aren't measured. idx = np.where(np.isnan(gaia_new['vx']) == True)[0] gaia_new['vx'][idx] = 0.0 - gaia_new['vxe'][idx] = 0.0 + gaia_new['vx_err'][idx] = 0.0 gaia_new['vy'][idx] = 0.0 - gaia_new['vye'][idx] = 0.0 + gaia_new['vy_err'][idx] = 0.0 gaia_new = gaia_new.filled() #convert masked colunms to regular columns @@ -317,12 +317,12 @@ def pick_good_ref_stars(star_tab, r_cut=None, m_cut=None, p_err_cut=None, pm_err print('pick_good_ref_stars: Use {0:d} stars after m<{1:.2f}.'.format(use.sum(), m_cut)) if p_err_cut is not None: - p_err = np.mean((star_tab['x0e'], star_tab['y0e']), axis=0) + p_err = np.mean((star_tab['x0_err'], star_tab['y0_err']), axis=0) use = use & (p_err < p_err_cut) print('pick_good_ref_stars: Use {0:d} stars after p_err<{1:.5f}.'.format(use.sum(), p_err_cut)) if pm_err_cut is not None: - pm_err = np.mean((star_tab['vxe'], star_tab['vye']), axis=0) + pm_err = np.mean((star_tab['vx_err'], star_tab['vy_err']), axis=0) use = use & (pm_err < pm_err_cut) print('pick_good_ref_stars: Use {0:d} stars after pm_err<{1:.5f}.'.format(use.sum(), pm_err_cut)) @@ -345,8 +345,8 @@ def startable_subset(tab, idx, mag_trans=True, mag_trans_orig=False): """ # Multiples: ['x', 'y', 'm', 'name_in_list', 'xe', 'ye', 'me', 't', # 'x_orig', 'y_orig', 'm_orig', 'xe_orig', 'ye_orig', 'me_orig', 'used_in_trans'] - # Single: ['name', 'm0', 'm0e', 'use_in_trans', 'ref_orig', 'n_detect', - # 'x0', 'vx', 'y0', 'vy', 'x0e', 'vxe', 'y0e', 'vye', 't0'] + # Single: ['name', 'm0', 'm0_err', 'use_in_trans', 'ref_orig', 'n_detect', + # 'x0', 'vx', 'y0', 'vy', 'x0_err', 'vx_err', 'y0_err', 'vy_err', 't0'] # Don't include n_vfit new_tab = startables.StarTable(name=tab['name'].data, @@ -365,16 +365,16 @@ def startable_subset(tab, idx, mag_trans=True, mag_trans_orig=False): me_orig=tab['me_orig'][:,idx].data, used_in_trans=tab['used_in_trans'][:,idx].data, m0=tab['m0'].data, - m0e=tab['m0e'].data, + m0e=tab['m0_err'].data, use_in_trans=tab['use_in_trans'].data, x0=tab['x0'].data, vx=tab['vx'].data, y0=tab['y0'].data, vy=tab['vy'].data, - x0e=tab['x0e'].data, - vxe=tab['vxe'].data, - y0e=tab['y0e'].data, - vye=tab['vye'].data, + x0e=tab['x0_err'].data, + vxe=tab['vx_err'].data, + y0e=tab['y0_err'].data, + vye=tab['vy_err'].data, t0=tab['t0'].data) new_tab.combine_lists('m', weights_col='me', sigma=3, ismag=True) diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 0ab2ab6..c0b02bc 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -753,12 +753,13 @@ def test_bootstrap(): # Run bootstrap: no boot_epochs_min match1.calc_bootstrap_errors(n_boot=n_boot, boot_epochs_min=boot_epochs_min) - + print(match1.ref_table.keys()) # Make sure columns exist, and none of them are nan values assert np.sum(np.isnan(match1.ref_table['xe_boot'])) == 0 assert np.sum(np.isnan(match1.ref_table['ye_boot'])) == 0 - assert np.sum(np.isnan(match1.ref_table['vxe_boot'])) == 0 - assert np.sum(np.isnan(match1.ref_table['vye_boot'])) == 0 + print(match1.ref_table['vx_err_boot']) + assert np.sum(np.isnan(match1.ref_table['vx_err_boot'])) == 0 + assert np.sum(np.isnan(match1.ref_table['vy_err_boot'])) == 0 # Test 2: make sure boot_epochs_min is working # Eliminate some rows to list2, so some stars are only in 1 epoch. @@ -797,14 +798,14 @@ def test_bootstrap(): # For "good" stars: all bootstrap vals should be present assert np.sum(np.isnan(out['xe_boot'][good])) == 0 assert np.sum(np.isnan(out['ye_boot'][good])) == 0 - assert np.sum(np.isnan(out['vxe_boot'][good])) == 0 - assert np.sum(np.isnan(out['vye_boot'][good])) == 0 + assert np.sum(np.isnan(out['vx_err_boot'][good])) == 0 + assert np.sum(np.isnan(out['vy_err_boot'][good])) == 0 # For "bad" stars, all bootstrap vals should be nans assert np.sum(np.isfinite(out['xe_boot'][bad])) == 0 assert np.sum(np.isfinite(out['ye_boot'][bad])) == 0 - assert np.sum(np.isfinite(out['vxe_boot'][bad])) == 0 - assert np.sum(np.isfinite(out['vye_boot'][bad])) == 0 + assert np.sum(np.isfinite(out['vx_err_boot'][bad])) == 0 + assert np.sum(np.isfinite(out['vy_err_boot'][bad])) == 0 return @@ -869,15 +870,15 @@ def test_calc_vel_in_bootstrap(): assert 'xe_boot' in match_vel.ref_table.keys() assert np.sum(np.isnan(match_vel.ref_table['xe_boot'])) == 0 - assert 'vxe_boot' in match_vel.ref_table.keys() + assert 'vx_err_boot' in match_vel.ref_table.keys() assert np.sum(np.isnan(match_vel.ref_table['vxe_boot'])) == 0 # Run without calc_vel_in_bootstrap, make sure velocities are NOT calculated match.calc_bootstrap_errors(n_boot=n_boot, calc_vel_in_bootstrap=False) - assert 'xe_boot' in match.ref_table.keys() + assert 'x_e_boot' in match.ref_table.keys() assert np.sum(np.isnan(match.ref_table['xe_boot'])) == 0 - assert 'vxe_boot' not in match.ref_table.keys() + assert 'vx_err_boot' not in match.ref_table.keys() return From 461558d4487f9aab33ea93891b63822deddb3fc8 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 26 Aug 2024 15:35:32 -0700 Subject: [PATCH 016/124] test_align.py all running now --- flystar/align.py | 67 +++++++------ flystar/motion_model.py | 192 +++++++++++++++++++++++++++++++----- flystar/startables.py | 22 +---- flystar/tests/test_align.py | 40 ++++---- 4 files changed, 230 insertions(+), 91 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 5d888c2..85d7c7e 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -820,7 +820,8 @@ def update_ref_table_aggregates(self, n_boot=0): motion_model_class_names += self.ref_table['motion_model_used'][ref_orig_idx].tolist() motion_model_col_names = motion_model.get_list_motion_model_param_names(motion_model_class_names, with_errors=True) for mm in motion_model_col_names: - vals_orig[mm] = self.ref_table[mm][ref_orig_idx] + if mm in self.ref_table.keys(): + vals_orig[mm] = self.ref_table[mm][ref_orig_idx] #if self.use_motion: # Combine positions with a velocity fit. @@ -1086,11 +1087,18 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot xe_trans_arr = np.ones((len(ref_table['x']), n_boot, n_epochs)) * -999 ye_trans_arr = np.ones((len(ref_table['x']), n_boot, n_epochs)) * -999 me_trans_arr = np.ones((len(ref_table['x']), n_boot, n_epochs)) * -999 + + # Set up motion model parameters + motion_model_list = ['Fixed', self.default_motion_model] + if 'motion_model_used' in ref_table.keys(): + motion_model_list += ref_table['motion_model_used'].tolist() + elif 'motion_model_assigned' in ref_table.keys(): + motion_model_list += ref_table['motion_model_assigned'].tolist() + motion_col_list = motion_model.get_list_motion_model_param_names(np.unique(motion_model_list).tolist(), with_errors=False, with_fixed=False) if calc_vel_in_bootstrap: - x0_arr = np.ones((len(ref_table['x']), n_boot)) * -999 - y0_arr = np.ones((len(ref_table['x']), n_boot)) * -999 - vx_arr = np.ones((len(ref_table['x']), n_boot)) * -999 - vy_arr = np.ones((len(ref_table['x']), n_boot)) * -999 + motion_data = {} + for col in motion_col_list: + motion_data[col] = np.ones((len(ref_table['x']), n_boot)) * -999 ### IF MEMORY PROBLEMS HERE: ### DEFINE MEAN, STD VARIABLES AND BUILD THEM RATHER THAN SAVING FULL ARRAY @@ -1211,10 +1219,8 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot star_table.fit_velocities(fixed_t0=t0_arr, default_motion_model=self.default_motion_model) # Save proper motion fit results to output arrays - x0_arr[:,ii] = star_table['x0'] - y0_arr[:,ii] = star_table['y0'] - vx_arr[:,ii] = star_table['vx'] - vy_arr[:,ii] = star_table['vy'] + for col in motion_col_list: + motion_data[col][:,ii] = star_table[col] # Quick check to make sure bootstrap calc was valid: output t0 should be # same as input t0_arr, since we used fixed_t0 option @@ -1230,23 +1236,20 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot y_err_b = np.std(y_trans_arr, ddof=1, axis=1) m_err_b = np.std(m_trans_arr, ddof=1, axis=1) + motion_data_err = {} if calc_vel_in_bootstrap: - x0_err_b = np.std(x0_arr, ddof=1, axis=1) - y0_err_b = np.std(y0_arr, ddof=1, axis=1) - vx_err_b = np.nanstd(vx_arr, ddof=1, axis=1) - vy_err_b = np.nanstd(vy_arr, ddof=1, axis=1) + for col in motion_col_list: + motion_data_err[col] = np.nanstd(motion_data[col], ddof=1,axis=1) else: - x0_err_b = np.nan - y0_err_b = np.nan - vx_err_b = np.nan - vy_err_b = np.nan + for col in motion_col_list: + motion_data_err[col] = np.nan # Add summary statistics to *original* ref_table, i.e. ref_table # hanging off of mosaic object. col_heads_2D = ['xe_boot', 'ye_boot', 'me_boot'] - data_dict = {'xe_boot': x_err_b, 'ye_boot': y_err_b, 'me_boot': m_err_b, - 'x0_err_boot': x0_err_b, 'y0_err_boot': y0_err_b, - 'vx_err_boot': vx_err_b, 'vy_err_boot': vy_err_b} + data_dict = {'xe_boot': x_err_b, 'ye_boot': y_err_b, 'me_boot': m_err_b} + for col in motion_col_list: + data_dict[col+'_err_boot'] = motion_data_err[col] for ff in col_heads_2D: col = Column(np.ones((len(self.ref_table), n_epochs)), name=ff) @@ -1257,7 +1260,7 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot # Now handle the velocities, if they were calculated if calc_vel_in_bootstrap: - col_heads_1D = [ 'x0_err_boot', 'y0_err_boot', 'vx_err_boot', 'vy_err_boot'] + col_heads_1D = [col+'_err_boot' for col in motion_col_list] for ff in col_heads_1D: col = Column(np.ones(len(self.ref_table)), name=ff) @@ -3770,9 +3773,9 @@ def get_weighting_scheme(weights, ref_list, star_list): # TODO: I think this is a startable, not a starlist def get_pos_at_time(t, starlist): """ - Take a starlist, check to see if it has velocity columns. + Take a starlist, check to see if it has motion/velocity columns. If it does, then propogate the positions forward in time - to the desired epoch. If no velocities exist, then just + to the desired epoch. If no motion/velocities exist, then just use ['x0', 'y0'] or ['x', 'y'] Inputs @@ -3782,15 +3785,21 @@ def get_pos_at_time(t, starlist): but it should be in the same units as the 't0' column in starlist. """ + # Check for motion model if 'motion_model_used' in starlist.colnames: x,y,xe,ye = starlist.get_star_positions_at_time(t) + # If no motion model, check for velocities + elif ('vx' in starlist.colnames) and ('vy' in starlist.colnames) and ('x0' in starlist.colnames) and ('y0' in starlist.colnames): + x = starlist['x0'] + np.nan_to_num(starlist['vx'])*(t-starlist['t0']) + y = starlist['y0'] + np.nan_to_num(starlist['vy'])*(t-starlist['t0']) + # If no velocities, try fitted positon + elif ('x0' in starlist.colnames) and ('y0' in starlist.colnames): + x = starlist['x0'] + y = starlist['y0'] + # Otherwise, use measured position else: - if ('x0' in starlist.colnames) and ('y0' in starlist.colnames): - x = starlist['x0'] - y = starlist['y0'] - else: - x = starlist['x'] - y = starlist['y'] + x = starlist['x'] + y = starlist['y'] return (x, y) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 14eda8a..5035261 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -20,13 +20,11 @@ class MotionModel(ABC): optional_param_names = [] def __init__(self, *args, **kwargs): - # Check that required phot_params are proper arrays. - # If not, then make them arrays of len(1). # TODO: do we need this? - for param in self.fitter_param_names: + '''for param in self.fitter_param_names: param_var = getattr(self, param) if not isinstance(param_var, (list, np.ndarray)): - setattr(self, param, np.array([param_var])) + setattr(self, param, np.array([param_var]))''' return @@ -59,7 +57,7 @@ class Fixed(MotionModel): """ n_pts_req = 1 fitter_param_names = ['x0','y0'] - fixed_param_names = ['t0'] + fixed_param_names = [] def __init__(self, x0=0, y0=0, t0=2025.0, x0_err=0, y0_err=0): @@ -85,14 +83,13 @@ def get_batch_pos_at_time(self,t, x0=[],y0=[],t0=[], x0_err=[], y0_err=[]): return x0,y0,x0_err,y0_err - def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): # Handle single data point case if len(x)==1: return [x[0],y[0]],[xe[0],ye[0]] - #TODO it seems like sometimes it's weighted by std and sometimes by var - confirm which to do here + #TODO: it seems like sometimes it's weighted by std and sometimes by var - confirm which to do here x0 = np.average(x, weights=1/xe**2) x0e = np.sqrt(np.average((x-x0)**2,weights=1/xe)) y0 = np.average(y, weights=1/ye**2) @@ -150,8 +147,8 @@ def get_pos_at_time(self, t): def get_pos_err_at_time(self, t): dt = t - self.t0 - x_err = np.hypot(self.x0_err, self.vx_err) - y_err = np.hypot(self.y0_err, self.vy_err) + x_err = np.hypot(self.x0_err, self.vx_err*dt) + y_err = np.hypot(self.y0_err, self.vy_err*dt) return x_err, y_err @@ -169,19 +166,21 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): fitter = fitting.LevMarLSQFitter() # Handle 2-data point case - # TODO: is this the best way to handle this case ? + # TODO: is this the best way to handle this case ? Altered it to be consistent with t0 if len(x)==2: - x0 = np.average(x, weights=1.0/xe**2) - y0 = np.average(y, weights=1.0/ye**2) + ix = int(xe[0]>xe[1]) + iy = int(ye[0]>ye[1]) dx = np.diff(x)[0] dy = np.diff(y)[0] dt_diff = np.diff(dt)[0] - x0e = np.abs(dx) / 2**0.5 - y0e = np.abs(dy) / 2**0.5 vx = dx / dt_diff vy = dy / dt_diff - vxe = 0.0 - vye = 0.0 + x0 = x[ix]-vx*dt[ix] + y0 = y[iy]-vy*dt[iy] + vxe = np.hypot(*xe)/dt_diff + vye = np.hypot(*ye)/dt_diff + x0e = np.sqrt(xe[ix]**2 + (dt[ix]*vxe)**2) + y0e = np.sqrt(ye[iy]**2 + (dt[iy]*vye)**2) return [x0, vx, y0, vy],[x0e, vxe, y0e, vye] px_new = fitter(self.px, dt, x, weights=1/xe) @@ -248,40 +247,181 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): return params, param_errors +class Acceleration(MotionModel): + """ + A 2D accelerating motion model for a star on the sky. + """ + n_pts_req = 4 # TODO: consider special case for 3 pts + fitter_param_names = ['x0', 'vx0', 'ax', 'y0', 'vy0', 'ay'] + fixed_param_names = ['t0'] + + def __init__(self, x0=0, vx0=0, ax=0, y0=0, vy0=0, ay=0, t0=2025.0, + x0_err=0, vx0_err=0, ax_err=0, y0_err=0, vy0_err=0, ay_err=0): + self.x0 = x0 + self.vx0 = vx0 + self.ax = ax + self.y0 = y0 + self.vy0 = vy0 + self.ay = ay + self.t0 = t0 + self.x0_err = x0_err + self.vx0_err = vx0_err + self.ax_err = ax_err + self.y0_err = y0_err + self.vy0_err = vy0_err + self.ay_err = ay_err + + # Must call after setting parameters. + # This checks for proper parameter formatting. + super().__init__() + + self.poly_order = 2 + self.px = models.Polynomial1D(self.poly_order, c0=self.x0, c1=self.vx0, c2=self.ax) + self.py = models.Polynomial1D(self.poly_order, c0=self.y0, c1=self.vy0, c2=self.ay) + + return + + def get_pos_at_time(self, t): + dt = t - self.t0 + x = self.px(dt) + y = self.py(dt) + return x, y + + def get_pos_err_at_time(self, t): + dt = t - self.t0 + x_err = np.sqrt(self.x0_err**2 + (self.vx_err*dt)**2 + (self.ax_err*dt**2)**2) + y_err = np.sqrt(self.y0_err**2 + (self.vy_err*dt)**2 + (self.ay_err*dt**2)**2) + return x_err, y_err + + def get_batch_pos_at_time(self,t, + x0=[],vx0=[],ax=[], y0=[],vy0=[],ay=[], t0=[], + x0_err=[],vx0_err=[],ax_err=[], y0_err=[],vy0_err=[],ay_err=[]): + dt = t-t0 + x = x0 + dt*vx0 + 0.5*dt**2*ax + y = y0 + dt*vy0 + 0.5*dt**2*ay + x_err = np.sqrt(x0_err**2 + (vx0_err*dt)**2 + (0.5*ax_err*dt**2)**2) + y_err = np.sqrt(y0_err**2 + (vy0_err*dt)**2 + (0.5*ay_err*dt**2)**2) + return x,y,x_err,y_err + + def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): + fitter = fitting.LevMarLSQFitter() + + px_new = fitter(self.px, dt, x, weights=1/xe) + px_cov = fitter.fit_info['param_cov'] + py_new = fitter(self.py, dt, y, weights=1/ye) + py_cov = fitter.fit_info['param_cov'] + + x0 = px_new.c0.value + vx0 = px_new.c1.value + ax = px_new.c2.value + y0 = py_new.c0.value + vy0 = py_new.c1.value + ay = py_new.c2.value + + # Run the bootstrap + if bootstrap > 0: + edx = np.arange(len(x), dtype=int) + + fit_x0_b = np.zeros(bootstrap, dtype=float) + fit_vx0_b = np.zeros(bootstrap, dtype=float) + fit_ax_b = np.zeros(bootstrap, dtype=float) + fit_y0_b = np.zeros(bootstrap, dtype=float) + fit_vy0_b = np.zeros(bootstrap, dtype=float) + fit_ay_b = np.zeros(bootstrap, dtype=float) + + for bb in range(bootstrap): + bdx = np.random.choice(edx, len(x)) + + px_b = fitter(self.px, dt[bdx], x[bdx], weights=1/xe[bdx]) + px_b_cov = fitter.fit_info['param_cov'] + py_b = fitter(self.py, dt[bdx], y[bdx], weights=1/ye[bdx]) + py_b_cov = fitter.fit_info['param_cov'] + + fit_x0_b[bb] = px_b.c0.value + fit_vx0_b[bb] = px_b.c1.value + fit_ax_b[bb] = px_b.c2.value + fit_y0_b[bb] = py_b.c0.value + fit_vy0_b[bb] = py_b.c1.value + fit_ay_b[bb] = py_b.c2.value + + # Save the errors from the bootstrap + x0e = fit_x0_b.std() + vx0e = fit_vx0_b.std() + axe = fit_ax_b.std() + y0e = fit_y0_b.std() + vy0e = fit_vy0_b.std() + aye = fit_ay_b.std() + else: + px_param_errs = dict(zip(self.px.param_names, np.diag(px_cov)**0.5)) + py_param_errs = dict(zip(self.py.param_names, np.diag(py_cov)**0.5)) + x0e = px_param_errs['c0'] + vx0e = px_param_errs['c1'] + axe = px_param_errs['c2'] + y0e = py_param_errs['c0'] + vy0e = py_param_errs['c1'] + aye = py_param_errs['c2'] + + if update: + self.px = px_new + self.py = py_new + + self.x0 = x0 + self.vx0 = vx0 + self.ax = ax + self.y0 = y0 + self.vy0 = vy0 + self.ay = ay + + self.x0_err = x0e + self.vx0_err = vx0e + self.ax_err = axe + self.y0_err = y0e + self.vy0_err = vy0e + self.ay_err = aye + + params = [x0, vx0, ax, y0, vy0, ay] + param_errors = [x0e, vx0e, axe, y0e, vy0e, aye] + + return params, param_errors + -def get_one_motion_model_param_names(motion_model_name, with_errors=True): +def get_one_motion_model_param_names(motion_model_name, with_errors=True, with_fixed=True): mod = eval(motion_model_name) - list_of_parameters = getattr(mod, 'fitter_param_names') - list_of_parameters += getattr(mod, 'fixed_param_names') + list_of_parameters = [] + list_of_parameters += getattr(mod, 'fitter_param_names') + if with_fixed: + list_of_parameters += getattr(mod, 'fixed_param_names') if with_errors: - list_of_parameters += [par + '_err' for par in getattr(mod, 'fitter_param_names')] + list_of_parameters += [par+'_err' for par in getattr(mod, 'fitter_param_names')] return list_of_parameters -def get_list_motion_model_param_names(motion_model_list, with_errors=True): +def get_list_motion_model_param_names(motion_model_list, with_errors=True, with_fixed=True): list_of_parameters = [] all_motion_models = [eval(mm) for mm in np.unique(motion_model_list).tolist()] for aa in range(len(all_motion_models)): param_names = getattr(all_motion_models[aa], 'fitter_param_names') param_fixed_names = getattr(all_motion_models[aa], 'fixed_param_names') - param_err_names = [par + '_err' for par in param_names] + param_err_names = [par+'_err' for par in param_names] list_of_parameters += param_names - list_of_parameters += param_fixed_names + if with_fixed: + list_of_parameters += param_fixed_names if with_errors: list_of_parameters += param_err_names return np.unique(list_of_parameters).tolist() -def get_all_motion_model_param_names(with_errors=True): +def get_all_motion_model_param_names(with_errors=True, with_fixed=True): list_of_parameters = [] all_motion_models = MotionModel.__subclasses__() for aa in range(len(all_motion_models)): param_names = getattr(all_motion_models[aa], 'fitter_param_names') param_fixed_names = getattr(all_motion_models[aa], 'fixed_param_names') - param_err_names = [par + '_err' for par in param_names] + param_err_names = [par+'_err' for par in param_names] list_of_parameters += param_names - list_of_parameters += param_fixed_names + if with_fixed: + list_of_parameters += param_fixed_names if with_errors: list_of_parameters += param_err_names diff --git a/flystar/startables.py b/flystar/startables.py index 83f4b5e..b68b752 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -594,6 +594,8 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b # Append goodness of fit metrics and t0. # TODO: actually populate these columns new_col_list += ['chi2_x', 'chi2_y'] + if 't0' not in new_col_list: + new_col_list.append('t0') # Define output arrays for the best-fit parameters. for col in new_col_list: @@ -653,6 +655,7 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, absolute_sigma=True, bootstrap=False, fixed_t0=False, default_motion_model='Linear', mask_val=None, mask_lists=False): + # TODO: "weighting" is not used # # Make a mask of invalid (NaN) values and a user-specified invalid value. @@ -794,7 +797,6 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, # Decide which motion_model to fit. # motion_model_use = self['motion_model_input'][ss] - # Go to default model if not enough points for assigned but enough for default # TODO: think about whether we want other fallbacks besides the singular default and Fixed if (N_good < getattr(motion_model, self['motion_model_input'][ss]).n_pts_req) and \ @@ -810,7 +812,7 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, self['motion_model_used'][ss] = motion_model_use - # Instantiate the motion model object. + # Get the motion model object. modClass = getattr(motion_model, motion_model_use) # Load up any prior information on parameters for this model. @@ -835,16 +837,10 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, # Fit for the best parameters params, param_errs = mod.fit_motion_model(dt, x, y, xe, ye, bootstrap=bootstrap) - - # TODO: bad - #with modClass(**param_dict) as mod: - # params, param_errs = mod.fit_motion_model(dt, x, y, xe, ye, bootstrap=bootstrap) - # Save parameters and errors to table. for pp in range(len(modClass.fitter_param_names)): par = modClass.fitter_param_names[pp] par_err = par + '_err' - self[par][ss] = params[pp] self[par_err][ss] = param_errs[pp] @@ -873,15 +869,7 @@ def get_star_positions_at_time(self, t): modClass = getattr(motion_model, mm) # Set up parameters param_dict = {} - for par in modClass.fitter_param_names: - param_dict[par] = self[par][idx] - param_dict[par+'_err'] = self[par+'_err'][idx] - # Load fixed parameters, if needed. - for par in modClass.fixed_param_names: - if par not in self.colnames: - msg = f'fit_velocity_for_star: ' - msg += f'Missing fixed_params column {par} needed for motion model {motion_model_use}.' - raise RuntimeException(msg) + for par in motion_model.get_one_motion_model_param_names(mm,with_errors=True,with_fixed=True): param_dict[par] = self[par][idx] mod = modClass() x[idx],y[idx],xe[idx],ye[idx] = mod.get_batch_pos_at_time(t,**param_dict) diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index c0b02bc..9b99f06 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -278,7 +278,7 @@ def test_MosaicToRef(): return msc -# TODO: Make this a valid test - it currently just runs with Linear +# TODO: Make this a valid test def test_MosaicToRef_acc(): make_fake_starlists_poly1_acc(seed=42) @@ -289,12 +289,14 @@ def test_MosaicToRef_acc(): 'random_acc_3.fits'] ref_list = Table.read(ref_file) + print(ref_list.keys()) + print(ref_list) # Convert velocities to arcsec/yr - ref_list['vx'] *= 1e-3 - ref_list['vy'] *= 1e-3 - ref_list['vx_err'] *= 1e-3 - ref_list['vy_err'] *= 1e-3 + ref_list['vx0'] *= 1e-3 + ref_list['vy0'] *= 1e-3 + ref_list['vx0_err'] *= 1e-3 + ref_list['vy0_err'] *= 1e-3 # Convert accelerations to arcsec/yr**2 ref_list['ax'] *= 1e-3 @@ -304,7 +306,7 @@ def test_MosaicToRef_acc(): # Switch our list to a "increasing to the West" list. ref_list['x0'] *= -1.0 - ref_list['vx'] *= -1.0 + ref_list['vx0'] *= -1.0 ref_list['ax'] *= -1.0 lists = [starlists.StarList.read(lf) for lf in list_files] @@ -328,8 +330,8 @@ def test_MosaicToRef_acc(): # The velocities should be almost the same as the input # velocities since update_ref_orig == False. - np.testing.assert_almost_equal(msc.ref_table['vx'], ref_list['vx'], 5) - np.testing.assert_almost_equal(msc.ref_table['vy'], ref_list['vy'], 5) + np.testing.assert_almost_equal(msc.ref_table['vx0'], ref_list['vx0'], 5) + np.testing.assert_almost_equal(msc.ref_table['vy0'], ref_list['vy0'], 5) ########## @@ -340,11 +342,11 @@ def test_MosaicToRef_acc(): # The velocities should be almost the same (but not as close as before) # as the input velocities since update_ref == False. - np.testing.assert_almost_equal(msc.ref_table['vx'], ref_list['vx'], 1) - np.testing.assert_almost_equal(msc.ref_table['vy'], ref_list['vy'], 1) + np.testing.assert_almost_equal(msc.ref_table['vx0'], ref_list['vx0'], 1) + np.testing.assert_almost_equal(msc.ref_table['vy0'], ref_list['vy0'], 1) # Also double check that they aren't exactly the same for the reference stars. - assert np.any(np.not_equal(msc.ref_table['vx'], ref_list['vx'])) + assert np.any(np.not_equal(msc.ref_table['vx0'], ref_list['vx0'])) return msc @@ -580,7 +582,7 @@ def make_fake_starlists_poly1_acc(seed=-1): t0], names = ('name', 'm0', 'm0_err', 'x0', 'x0_err', 'y0', 'y0_err', - 'vx', 'vx_err', 'vy', 'vy_err', + 'vx0', 'vx0_err', 'vy0', 'vy0_err', 'ax', 'axe', 'ay', 'aye', 't0')) @@ -609,8 +611,8 @@ def make_fake_starlists_poly1_acc(seed=-1): for ss in range(len(times)): dt = times[ss] - lis['t0'] - x = lis['x0'] + (lis['vx']/1e3) * dt + (lis['ax']/1e3) * dt**2 - y = lis['y0'] + (lis['vy']/1e3) * dt + (lis['ay']/1e3) * dt**2 + x = lis['x0'] + (lis['vx0']/1e3) * dt + (lis['ax']/1e3) * dt**2 + y = lis['y0'] + (lis['vy0']/1e3) * dt + (lis['ay']/1e3) * dt**2 t = np.ones(N_stars) * times[ss] # Convert into pixels @@ -871,12 +873,12 @@ def test_calc_vel_in_bootstrap(): assert 'xe_boot' in match_vel.ref_table.keys() assert np.sum(np.isnan(match_vel.ref_table['xe_boot'])) == 0 assert 'vx_err_boot' in match_vel.ref_table.keys() - assert np.sum(np.isnan(match_vel.ref_table['vxe_boot'])) == 0 + assert np.sum(np.isnan(match_vel.ref_table['vx_err_boot'])) == 0 # Run without calc_vel_in_bootstrap, make sure velocities are NOT calculated match.calc_bootstrap_errors(n_boot=n_boot, calc_vel_in_bootstrap=False) - assert 'x_e_boot' in match.ref_table.keys() + assert 'xe_boot' in match.ref_table.keys() assert np.sum(np.isnan(match.ref_table['xe_boot'])) == 0 assert 'vx_err_boot' not in match.ref_table.keys() @@ -987,7 +989,7 @@ def test_MosaicToRef_mag_bug(): """ make_fake_starlists_poly1_vel() - ref_list = starlists.StarList.from_lis_file('random_0.lis', error=False) + ref_list = starlists.StarList.read('random_vel_0.fits') lists = [ref_list] msc = align.MosaicToRef(ref_list, lists, @@ -1031,8 +1033,8 @@ def test_masked_cols(): # Coordinates are arcsecs offset +x to the East. targets_dict = {'ob150029': [0.0, 0.0], - 'S11_15_3.9': [ 1.13982, 3.73524], - 'S13_13_4.5': [-4.42878, 0.03100] + 'S005': [1.1416, 3.7405], + 'S002': [-4.421, 0.027] } # Get gaia catalog stars. Note that this produces a masked column table From 03fb4837c812c8193f98b876fb71f4976b04387b Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 12 Sep 2024 11:08:38 -0700 Subject: [PATCH 017/124] motion model development; move some unused functions to align_old_functions.py --- flystar/align.py | 387 +-------------------------------- flystar/align_old_functions.py | 369 +++++++++++++++++++++++++++++++ flystar/motion_model.py | 39 +++- flystar/plots.py | 44 ++-- flystar/startables.py | 7 +- 5 files changed, 438 insertions(+), 408 deletions(-) create mode 100755 flystar/align_old_functions.py diff --git a/flystar/align.py b/flystar/align.py index 85d7c7e..704339f 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -22,13 +22,12 @@ def __init__(self, list_of_starlists, ref_index=0, iters=2, init_order=1, mag_trans=True, mag_lim=None, weights=None, trans_input=None, trans_class=transforms.PolyTransform, - # TODO: consider deleting use_vel fulll, for now I'm putting in + # TODO: consider deleting use_vel fully, for now I'm putting in # a fallback so people can still use old code for now use_vel=None, default_motion_model='Fixed', calc_trans_inverse=False, init_guess_mode='miracle', iter_callback=None, verbose=True): - """ Make a mosaic object by passing in a list of starlists and then running fit(). @@ -1542,15 +1541,14 @@ def fit(self): ########## self.ref_table = self.setup_ref_table_from_starlist(self.ref_list) - # copy over velocities if they exist in the reference list - if 'vx' in self.ref_list.colnames: - self.ref_table['vx'] = self.ref_list['vx'] - self.ref_table['vy'] = self.ref_list['vy'] - self.ref_table['t0'] = self.ref_list['t0'] - if 'vx_err' in self.ref_list.colnames: - self.ref_table['vx_err'] = self.ref_list['vx_err'] - self.ref_table['vy_err'] = self.ref_list['vy_err'] - + # copy over motion model parameters if they exist in the reference list + if 'motion_model_assigned' in self.ref_list.colnames: + self.ref_table['motion_model_assigned'] = self.ref_list['motion_model_assigned'] + if 'motion_model' in self.ref_list.colnames: + self.ref_table['motion_model_assigned'] = self.ref_list['motion_model'] + for param in motion_model.get_all_motion_model_param_names(with_fixed=True, with_errors=True): + if param in self.ref_list.colnames: + self.ref_table[param] = self.ref_list[param] ########## # @@ -1845,371 +1843,10 @@ def add_rows_for_new_stars(ref_table, star_list, idx_lis, default_motion_model=' return ref_table, idx_lis_new, idx_ref_new -def run_align_iter(catalog, trans_order=1, poly_deg=1, ref_mag_lim=19, ref_radius_lim=300): - # Load up data with matched stars. - d = Table.read(catalog) - - # Determine how many epochs there are. - N_epochs = len([n for n, c in enumerate(d.colnames) if c.startswith('name')]) - - # Determine how many stars there are. - N_stars = len(d) - - # Determine the reference epoch - ref = d.meta['L_REF'] - - # Figure out the number of free parameters for the specified - # poly2d order. - poly2d = models.Polynomial2D(trans_order) - N_par_trans_per_epoch = 2.0 * poly2d.get_num_coeff(2) # one poly2d for each dimension (X, Y) - N_par_trans = N_par_trans_per_epoch * N_epochs - - ########## - # First iteration -- align everything to REF epoch with zero velocities. - ########## - print('ALIGN_EPOCHS: run_align_iter() -- PASS 1') - ee_ref = d.meta['L_REF'] - - target_name = 'OB120169' - - trans1, used1 = calc_transform_ref_epoch(d, target_name, ee_ref, ref_mag_lim, ref_radius_lim) - - ########## - # Derive the velocity of each stars using the round 1 transforms. - ########## - calc_polyfit_all_stars(d, poly_deg, init_fig_idx=0) - - calc_mag_avg_all_stars(d) - - tdx = np.where((d['name_0'] == 'OB120169') | (d['name_0'] == 'OB120169_L'))[0] - print(d[tdx]['name_0', 't0', 'mag', 'x0', 'vx', 'x0_err', 'vx_err', 'chi2x', 'y0', 'vy', 'y0_err', 'vy_err', 'chi2y', 'dof']) - - ########## - # Second iteration -- align everything to reference positions derived from iteration 1 - ########## - print('ALIGN_EPOCHS: run_align_iter() -- PASS 2') - target_name = 'OB120169' - - trans2, used2 = calc_transform_ref_poly(d, target_name, poly_deg, ref_mag_lim, ref_radius_lim) - - ########## - # Derive the velocity of each stars using the round 1 transforms. - ########## - calc_polyfit_all_stars(d, poly_deg, init_fig_idx=4) - - ########## - # Save output - ########## - d.write(catalog.replace('.fits', '_aln.fits'), overwrite=True) - - return - -def calc_transform_ref_epoch(d, target_name, ee_ref, ref_mag_lim, ref_radius_lim): - # Determine how many epochs there are. - N_epochs = len([n for n, c in enumerate(d.colnames) if c.startswith('name')]) - - # output array - trans = [] - used = [] - - # Find the target - tdx = np.where(d['name_0'] == 'OB120169')[0][0] - - # Reference values - t_ref = d['t_{0:d}'.format(ee_ref)] - m_ref = d['m_{0:d}'.format(ee_ref)] - x_ref = d['x_{0:d}'.format(ee_ref)] - y_ref = d['y_{0:d}'.format(ee_ref)] - xe_ref = d['xe_{0:d}'.format(ee_ref)] - ye_ref = d['ye_{0:d}'.format(ee_ref)] - - # Calculate some quanitites we use for selecting reference stars. - r_ref = np.hypot(x_ref - x_ref[tdx], y_ref - y_ref[tdx]) - - # Loop through and align each epoch to the reference epoch. - for ee in range(N_epochs): - # Pull out the X, Y positions (and errors) for the two - # starlists we are going to align. - x_epo = d['x_{0:d}'.format(ee)] - y_epo = d['y_{0:d}'.format(ee)] - t_epo = d['t_{0:d}'.format(ee)] - xe_epo = d['xe_{0:d}'.format(ee)] - ye_epo = d['ye_{0:d}'.format(ee)] - - # Figure out the set of stars detected in both epochs. - idx = np.where((t_ref != 0) & (t_epo != 0) & (xe_ref != 0) & (xe_epo != 0))[0] - - # Find those in both epochs AND reference stars. This is [idx][rdx] - rdx = np.where((r_ref[idx] < ref_radius_lim) & (m_ref[idx] < ref_mag_lim))[0] - - # Average the positional errors together to get one weight per star. - xye_ref = (xe_ref + ye_ref) / 2.0 - xye_epo = (xe_epo + ye_epo) / 2.0 - xye_wgt = (xye_ref**2 + xye_epo**2)**0.5 - - # Calculate transform based on the matched stars - trans_tmp = transforms.PolyTransform(x_epo[idx][rdx], y_epo[idx][rdx], x_ref[idx][rdx], y_ref[idx][rdx], - weights=xye_wgt[idx][rdx], order=2) - - trans.append(trans_tmp) - - - # Apply thte transformation to the stars positions and errors: - xt_epo = np.zeros(len(d), dtype=float) - yt_epo = np.zeros(len(d), dtype=float) - xet_epo = np.zeros(len(d), dtype=float) - yet_epo = np.zeros(len(d), dtype=float) - - xt_epo[idx], xet_epo[idx], yt_epo[idx], yet_epo[idx] = trans_tmp.evaluate_errors(x_epo[idx], xe_epo[idx], - y_epo[idx], ye_epo[idx], - nsim=100) - - d['xt_{0:d}'.format(ee)] = xt_epo - d['yt_{0:d}'.format(ee)] = yt_epo - d['xet_{0:d}'.format(ee)] = xet_epo - d['yet_{0:d}'.format(ee)] = yet_epo - - # Record which stars we used in the transform. - used_tmp = np.zeros(len(d), dtype=bool) - used_tmp[idx[rdx]] = True - - used.append(used_tmp) +""" +Functions specific to OB120169 moved to align_old_functions,py +""" - if True: - plot_quiver_residuals(xt_epo, yt_epo, x_ref, y_ref, idx, rdx, 'Epoch: ' + str(ee)) - - used = np.array(used) - - return trans, used - - -def calc_transform_ref_poly(d, target_name, poly_deg, ref_mag_lim, ref_radius_lim): - # Determine how many epochs there are. - N_epochs = len([n for n, c in enumerate(d.colnames) if c.startswith('name')]) - - # output array - trans = [] - used = [] - - # Find the target - tdx = np.where(d['name_0'] == 'OB120169')[0][0] - - # Temporary Reference values - t_ref = d['t0'] - m_ref = d['mag'] - x_ref = d['x0'] - y_ref = d['y0'] - xe_ref = d['x0_err'] - ye_ref = d['y0_err'] - - # Calculate some quanitites we use for selecting reference stars. - r_ref = np.hypot(x_ref - x_ref[tdx], y_ref - y_ref[tdx]) - - for ee in range(N_epochs): - # Pull out the X, Y positions (and errors) for the two - # starlists we are going to align. - x_epo = d['x_{0:d}'.format(ee)] - y_epo = d['y_{0:d}'.format(ee)] - t_epo = d['t_{0:d}'.format(ee)] - xe_epo = d['xe_{0:d}'.format(ee)] - ye_epo = d['ye_{0:d}'.format(ee)] - - # Shift the reference position by the polyfit for each star. - dt = t_epo - t_ref - if poly_deg >= 0: - x_ref_ee = x_ref - y_ref_ee = y_ref - xe_ref_ee = x_ref - ye_ref_ee = y_ref - - if poly_deg >= 1: - x_ref_ee += d['vx'] * dt - y_ref_ee += d['vy'] * dt - xe_ref_ee = np.hypot(xe_ref_ee, d['vx_err'] * dt) - ye_ref_ee = np.hypot(ye_ref_ee, d['vy_err'] * dt) - - if poly_deg >= 2: - x_ref_ee += d['ax'] * dt - y_ref_ee += d['ay'] * dt - xe_ref_ee = np.hypot(xe_ref_ee, d['axe'] * dt) - ye_ref_ee = np.hypot(ye_ref_ee, d['aye'] * dt) - - # Figure out the set of stars detected in both. - idx = np.where((t_ref != 0) & (t_epo != 0) & (xe_ref != 0) & (xe_epo != 0))[0] - - # Find those in both AND reference stars. This is [idx][rdx] - rdx = np.where((r_ref[idx] < ref_radius_lim) & (m_ref[idx] < ref_mag_lim))[0] - - # Average the positional errors together to get one weight per star. - xye_ref = (xe_ref_ee + ye_ref_ee) / 2.0 - xye_epo = (xe_epo + ye_epo) / 2.0 - xye_wgt = (xye_ref**2 + xye_epo**2)**0.5 - - # Calculate transform based on the matched stars - trans_tmp = transforms.PolyTransform(x_epo[idx][rdx], y_epo[idx][rdx], x_ref_ee[idx][rdx], y_ref_ee[idx][rdx], - weights=xye_wgt[idx][rdx], order=2) - trans.append(trans_tmp) - - # Apply thte transformation to the stars positions and errors: - xt_epo = np.zeros(len(d), dtype=float) - yt_epo = np.zeros(len(d), dtype=float) - xet_epo = np.zeros(len(d), dtype=float) - yet_epo = np.zeros(len(d), dtype=float) - - xt_epo[idx], xet_epo[idx], yt_epo[idx], yet_epo[idx] = trans_tmp.evaluate_errors(x_epo[idx], xe_epo[idx], - y_epo[idx], ye_epo[idx], - nsim=100) - d['xt_{0:d}'.format(ee)] = xt_epo - d['yt_{0:d}'.format(ee)] = yt_epo - d['xet_{0:d}'.format(ee)] = xet_epo - d['yet_{0:d}'.format(ee)] = yet_epo - - # Record which stars we used in the transform. - used_tmp = np.zeros(len(d), dtype=bool) - used_tmp[idx[rdx]] = True - - used.append(used_tmp) - - if True: - plot_quiver_residuals(xt_epo, yt_epo, x_ref_ee, y_ref_ee, idx, rdx, 'Epoch: ' + str(ee)) - - used = np.array(used) - - return trans, used - -def calc_polyfit_all_stars(d, poly_deg, init_fig_idx=0): - # Determine how many stars there are. - N_stars = len(d) - - # Determine how many epochs there are. - N_epochs = len([n for n, c in enumerate(d.colnames) if c.startswith('name')]) - - # Setup some variables to save the results - t0_all = [] - px_all = [] - py_all = [] - pxe_all = [] - pye_all = [] - chi2x_all = [] - chi2y_all = [] - dof_all = [] - - # Get the time array, which is the same for all stars. - # Also, sort the time indices. - t = np.array([d['t_{0:d}'.format(ee)][0] for ee in range(N_epochs)]) - tdx = t.argsort() - t_sorted = t[tdx] - - # Run polyfit on each star. - for ss in range(N_stars): - # Get the x, y, xe, ye, and t arrays for this star. - xt = np.array([d['xt_{0:d}'.format(ee)][ss] for ee in range(N_epochs)]) - yt = np.array([d['yt_{0:d}'.format(ee)][ss] for ee in range(N_epochs)]) - xet = np.array([d['xet_{0:d}'.format(ee)][ss] for ee in range(N_epochs)]) - yet = np.array([d['yet_{0:d}'.format(ee)][ss] for ee in range(N_epochs)]) - t_tmp = np.array([d['t_{0:d}'.format(ee)][ss] for ee in range(N_epochs)]) - - # Sort these arrays. - xt_sorted = xt[tdx] - yt_sorted = yt[tdx] - xet_sorted = xet[tdx] - yet_sorted = yet[tdx] - t_tmp_sorted = t_tmp[tdx] - - # Get only the detected epochs. - edx = np.where(t_tmp_sorted != 0)[0] - - # Calculate the weighted t0 (using the transformed errors). - weight_for_t0 = 1.0 / np.hypot(xet_sorted, yet_sorted) - t0 = np.average(t_sorted[edx], weights=weight_for_t0[edx]) - - # for ee in edx: - # print('{0:8.3f} {1:10.5f} {2:10.5f} {3:8.5f} {4:8.5f}'.format(t[ee], xt[ee], yt[ee], xet[ee], yet[ee])) - # pdb.set_trace() - - # Run polyfit - dt = t_sorted - t0 - px, covx = np.polyfit(dt[edx], xt_sorted[edx], poly_deg, w=1./xet_sorted[edx], cov=True) - py, covy = np.polyfit(dt[edx], yt_sorted[edx], poly_deg, w=1./yet_sorted[edx], cov=True) - - pxe = np.sqrt(np.diag(covx)) - pye = np.sqrt(np.diag(covy)) - - - x_mod = np.polyval(px, dt[edx]) - y_mod = np.polyval(py, dt[edx]) - chi2x = np.sum( ((x_mod - xt_sorted[edx]) / xet_sorted[edx])**2 ) - chi2y = np.sum( ((y_mod - yt_sorted[edx]) / yet_sorted[edx])**2 ) - dof = len(edx) - (poly_deg + 1) - - # Save results: - t0_all.append(t0) - px_all.append(px) - py_all.append(py) - pxe_all.append(pxe) - pye_all.append(pye) - chi2x_all.append(chi2x) - chi2y_all.append(chi2y) - dof_all.append(dof) - - if d[ss]['name_0'] in ['OB120169', 'OB120169_L']: - gs = GridSpec(3, 2) # 3 rows, 1 column - fig = plt.figure(ss + 1 + init_fig_idx, figsize=(12, 8)) - a0 = fig.add_subplot(gs[0:2, 0]) - a1 = fig.add_subplot(gs[2, 0]) - a2 = fig.add_subplot(gs[0:2, 1]) - a3 = fig.add_subplot(gs[2, 1]) - - a0.errorbar(t_sorted[edx], xt_sorted[edx], yerr=xet_sorted[edx], fmt='ro') - a0.plot(t_sorted[edx], x_mod, 'k-') - a0.set_title(d[ss]['name_0'] + ' X') - a1.errorbar(t_sorted[edx], xt_sorted[edx] - x_mod, yerr=xet_sorted[edx], fmt='ro') - a1.axhline(0, linestyle='--') - a1.set_xlabel('Time (yrs)') - a2.errorbar(t_sorted[edx], yt_sorted[edx], yerr=yet_sorted[edx], fmt='ro') - a2.plot(t_sorted[edx], y_mod, 'k-') - a2.set_title(d[ss]['name_0'] + ' Y') - a3.errorbar(t_sorted[edx], yt_sorted[edx] - y_mod, yerr=yet_sorted[edx], fmt='ro') - a3.axhline(0, linestyle='--') - a3.set_xlabel('Time (yrs)') - - - - t0_all = np.array(t0_all) - px_all = np.array(px_all) - py_all = np.array(py_all) - pxe_all = np.array(pxe_all) - pye_all = np.array(pye_all) - chi2x_all = np.array(chi2x_all) - chi2y_all = np.array(chi2y_all) - dof_all = np.array(dof_all) - - # Done with all the stars... recast as numpy arrays and save to output table. - d['t0'] = t0_all - d['chi2x'] = chi2x_all - d['chi2y'] = chi2y_all - d['dof'] = dof_all - if poly_deg >= 0: - d['x0'] = px_all[:, -1] - d['y0'] = py_all[:, -1] - d['x0_err'] = pxe_all[:, -1] - d['y0_err'] = pye_all[:, -1] - - if poly_deg >= 1: - d['vx'] = px_all[:, -2] - d['vy'] = py_all[:, -2] - d['vx_err'] = pxe_all[:, -2] - d['vy_err'] = pye_all[:, -2] - - if poly_deg >= 2: - d['ax'] = px_all[:, -3] - d['ay'] = py_all[:, -3] - d['axe'] = pxe_all[:, -3] - d['aye'] = pye_all[:, -3] - - pdb.set_trace() - - return def calc_mag_avg_all_stars(d): # Determine how many stars there are. diff --git a/flystar/align_old_functions.py b/flystar/align_old_functions.py new file mode 100755 index 0000000..46aae42 --- /dev/null +++ b/flystar/align_old_functions.py @@ -0,0 +1,369 @@ +""" +Old functions iwht things hard-coded for OB120169 +""" + +def run_align_iter(catalog, trans_order=1, poly_deg=1, ref_mag_lim=19, ref_radius_lim=300): + # Load up data with matched stars. + d = Table.read(catalog) + + # Determine how many epochs there are. + N_epochs = len([n for n, c in enumerate(d.colnames) if c.startswith('name')]) + + # Determine how many stars there are. + N_stars = len(d) + + # Determine the reference epoch + ref = d.meta['L_REF'] + + # Figure out the number of free parameters for the specified + # poly2d order. + poly2d = models.Polynomial2D(trans_order) + N_par_trans_per_epoch = 2.0 * poly2d.get_num_coeff(2) # one poly2d for each dimension (X, Y) + N_par_trans = N_par_trans_per_epoch * N_epochs + + ########## + # First iteration -- align everything to REF epoch with zero velocities. + ########## + print('ALIGN_EPOCHS: run_align_iter() -- PASS 1') + ee_ref = d.meta['L_REF'] + + target_name = 'OB120169' + + trans1, used1 = calc_transform_ref_epoch(d, target_name, ee_ref, ref_mag_lim, ref_radius_lim) + + ########## + # Derive the velocity of each stars using the round 1 transforms. + ########## + calc_polyfit_all_stars(d, poly_deg, init_fig_idx=0) + + calc_mag_avg_all_stars(d) + + tdx = np.where((d['name_0'] == 'OB120169') | (d['name_0'] == 'OB120169_L'))[0] + print(d[tdx]['name_0', 't0', 'mag', 'x0', 'vx', 'x0_err', 'vx_err', 'chi2x', 'y0', 'vy', 'y0_err', 'vy_err', 'chi2y', 'dof']) + + ########## + # Second iteration -- align everything to reference positions derived from iteration 1 + ########## + print('ALIGN_EPOCHS: run_align_iter() -- PASS 2') + target_name = 'OB120169' + + trans2, used2 = calc_transform_ref_poly(d, target_name, poly_deg, ref_mag_lim, ref_radius_lim) + + ########## + # Derive the velocity of each stars using the round 1 transforms. + ########## + calc_polyfit_all_stars(d, poly_deg, init_fig_idx=4) + + ########## + # Save output + ########## + d.write(catalog.replace('.fits', '_aln.fits'), overwrite=True) + + return + +def calc_transform_ref_epoch(d, target_name, ee_ref, ref_mag_lim, ref_radius_lim): + # Determine how many epochs there are. + N_epochs = len([n for n, c in enumerate(d.colnames) if c.startswith('name')]) + + # output array + trans = [] + used = [] + + # Find the target + tdx = np.where(d['name_0'] == 'OB120169')[0][0] + + # Reference values + t_ref = d['t_{0:d}'.format(ee_ref)] + m_ref = d['m_{0:d}'.format(ee_ref)] + x_ref = d['x_{0:d}'.format(ee_ref)] + y_ref = d['y_{0:d}'.format(ee_ref)] + xe_ref = d['xe_{0:d}'.format(ee_ref)] + ye_ref = d['ye_{0:d}'.format(ee_ref)] + + # Calculate some quanitites we use for selecting reference stars. + r_ref = np.hypot(x_ref - x_ref[tdx], y_ref - y_ref[tdx]) + + # Loop through and align each epoch to the reference epoch. + for ee in range(N_epochs): + # Pull out the X, Y positions (and errors) for the two + # starlists we are going to align. + x_epo = d['x_{0:d}'.format(ee)] + y_epo = d['y_{0:d}'.format(ee)] + t_epo = d['t_{0:d}'.format(ee)] + xe_epo = d['xe_{0:d}'.format(ee)] + ye_epo = d['ye_{0:d}'.format(ee)] + + # Figure out the set of stars detected in both epochs. + idx = np.where((t_ref != 0) & (t_epo != 0) & (xe_ref != 0) & (xe_epo != 0))[0] + + # Find those in both epochs AND reference stars. This is [idx][rdx] + rdx = np.where((r_ref[idx] < ref_radius_lim) & (m_ref[idx] < ref_mag_lim))[0] + + # Average the positional errors together to get one weight per star. + xye_ref = (xe_ref + ye_ref) / 2.0 + xye_epo = (xe_epo + ye_epo) / 2.0 + xye_wgt = (xye_ref**2 + xye_epo**2)**0.5 + + # Calculate transform based on the matched stars + trans_tmp = transforms.PolyTransform(x_epo[idx][rdx], y_epo[idx][rdx], x_ref[idx][rdx], y_ref[idx][rdx], + weights=xye_wgt[idx][rdx], order=2) + + trans.append(trans_tmp) + + + # Apply thte transformation to the stars positions and errors: + xt_epo = np.zeros(len(d), dtype=float) + yt_epo = np.zeros(len(d), dtype=float) + xet_epo = np.zeros(len(d), dtype=float) + yet_epo = np.zeros(len(d), dtype=float) + + xt_epo[idx], xet_epo[idx], yt_epo[idx], yet_epo[idx] = trans_tmp.evaluate_errors(x_epo[idx], xe_epo[idx], + y_epo[idx], ye_epo[idx], + nsim=100) + + d['xt_{0:d}'.format(ee)] = xt_epo + d['yt_{0:d}'.format(ee)] = yt_epo + d['xet_{0:d}'.format(ee)] = xet_epo + d['yet_{0:d}'.format(ee)] = yet_epo + + # Record which stars we used in the transform. + used_tmp = np.zeros(len(d), dtype=bool) + used_tmp[idx[rdx]] = True + + used.append(used_tmp) + + if True: + plot_quiver_residuals(xt_epo, yt_epo, x_ref, y_ref, idx, rdx, 'Epoch: ' + str(ee)) + + used = np.array(used) + + return trans, used + +def calc_transform_ref_poly(d, target_name, poly_deg, ref_mag_lim, ref_radius_lim): + # Determine how many epochs there are. + N_epochs = len([n for n, c in enumerate(d.colnames) if c.startswith('name')]) + + # output array + trans = [] + used = [] + + # Find the target + tdx = np.where(d['name_0'] == 'OB120169')[0][0] + + # Temporary Reference values + t_ref = d['t0'] + m_ref = d['mag'] + x_ref = d['x0'] + y_ref = d['y0'] + xe_ref = d['x0_err'] + ye_ref = d['y0_err'] + + # Calculate some quanitites we use for selecting reference stars. + r_ref = np.hypot(x_ref - x_ref[tdx], y_ref - y_ref[tdx]) + + for ee in range(N_epochs): + # Pull out the X, Y positions (and errors) for the two + # starlists we are going to align. + x_epo = d['x_{0:d}'.format(ee)] + y_epo = d['y_{0:d}'.format(ee)] + t_epo = d['t_{0:d}'.format(ee)] + xe_epo = d['xe_{0:d}'.format(ee)] + ye_epo = d['ye_{0:d}'.format(ee)] + + # Shift the reference position by the polyfit for each star. + dt = t_epo - t_ref + if poly_deg >= 0: + x_ref_ee = x_ref + y_ref_ee = y_ref + xe_ref_ee = x_ref + ye_ref_ee = y_ref + + if poly_deg >= 1: + x_ref_ee += d['vx'] * dt + y_ref_ee += d['vy'] * dt + xe_ref_ee = np.hypot(xe_ref_ee, d['vx_err'] * dt) + ye_ref_ee = np.hypot(ye_ref_ee, d['vy_err'] * dt) + + if poly_deg >= 2: + x_ref_ee += d['ax'] * dt + y_ref_ee += d['ay'] * dt + xe_ref_ee = np.hypot(xe_ref_ee, d['axe'] * dt) + ye_ref_ee = np.hypot(ye_ref_ee, d['aye'] * dt) + + # Figure out the set of stars detected in both. + idx = np.where((t_ref != 0) & (t_epo != 0) & (xe_ref != 0) & (xe_epo != 0))[0] + + # Find those in both AND reference stars. This is [idx][rdx] + rdx = np.where((r_ref[idx] < ref_radius_lim) & (m_ref[idx] < ref_mag_lim))[0] + + # Average the positional errors together to get one weight per star. + xye_ref = (xe_ref_ee + ye_ref_ee) / 2.0 + xye_epo = (xe_epo + ye_epo) / 2.0 + xye_wgt = (xye_ref**2 + xye_epo**2)**0.5 + + # Calculate transform based on the matched stars + trans_tmp = transforms.PolyTransform(x_epo[idx][rdx], y_epo[idx][rdx], x_ref_ee[idx][rdx], y_ref_ee[idx][rdx], + weights=xye_wgt[idx][rdx], order=2) + trans.append(trans_tmp) + + # Apply thte transformation to the stars positions and errors: + xt_epo = np.zeros(len(d), dtype=float) + yt_epo = np.zeros(len(d), dtype=float) + xet_epo = np.zeros(len(d), dtype=float) + yet_epo = np.zeros(len(d), dtype=float) + + xt_epo[idx], xet_epo[idx], yt_epo[idx], yet_epo[idx] = trans_tmp.evaluate_errors(x_epo[idx], xe_epo[idx], + y_epo[idx], ye_epo[idx], + nsim=100) + d['xt_{0:d}'.format(ee)] = xt_epo + d['yt_{0:d}'.format(ee)] = yt_epo + d['xet_{0:d}'.format(ee)] = xet_epo + d['yet_{0:d}'.format(ee)] = yet_epo + + # Record which stars we used in the transform. + used_tmp = np.zeros(len(d), dtype=bool) + used_tmp[idx[rdx]] = True + + used.append(used_tmp) + + if True: + plot_quiver_residuals(xt_epo, yt_epo, x_ref_ee, y_ref_ee, idx, rdx, 'Epoch: ' + str(ee)) + + used = np.array(used) + + return trans, used + +def calc_polyfit_all_stars(d, poly_deg, init_fig_idx=0): + # Determine how many stars there are. + N_stars = len(d) + + # Determine how many epochs there are. + N_epochs = len([n for n, c in enumerate(d.colnames) if c.startswith('name')]) + + # Setup some variables to save the results + t0_all = [] + px_all = [] + py_all = [] + pxe_all = [] + pye_all = [] + chi2x_all = [] + chi2y_all = [] + dof_all = [] + + # Get the time array, which is the same for all stars. + # Also, sort the time indices. + t = np.array([d['t_{0:d}'.format(ee)][0] for ee in range(N_epochs)]) + tdx = t.argsort() + t_sorted = t[tdx] + + # Run polyfit on each star. + for ss in range(N_stars): + # Get the x, y, xe, ye, and t arrays for this star. + xt = np.array([d['xt_{0:d}'.format(ee)][ss] for ee in range(N_epochs)]) + yt = np.array([d['yt_{0:d}'.format(ee)][ss] for ee in range(N_epochs)]) + xet = np.array([d['xet_{0:d}'.format(ee)][ss] for ee in range(N_epochs)]) + yet = np.array([d['yet_{0:d}'.format(ee)][ss] for ee in range(N_epochs)]) + t_tmp = np.array([d['t_{0:d}'.format(ee)][ss] for ee in range(N_epochs)]) + + # Sort these arrays. + xt_sorted = xt[tdx] + yt_sorted = yt[tdx] + xet_sorted = xet[tdx] + yet_sorted = yet[tdx] + t_tmp_sorted = t_tmp[tdx] + + # Get only the detected epochs. + edx = np.where(t_tmp_sorted != 0)[0] + + # Calculate the weighted t0 (using the transformed errors). + weight_for_t0 = 1.0 / np.hypot(xet_sorted, yet_sorted) + t0 = np.average(t_sorted[edx], weights=weight_for_t0[edx]) + + # for ee in edx: + # print('{0:8.3f} {1:10.5f} {2:10.5f} {3:8.5f} {4:8.5f}'.format(t[ee], xt[ee], yt[ee], xet[ee], yet[ee])) + # pdb.set_trace() + + # Run polyfit + dt = t_sorted - t0 + px, covx = np.polyfit(dt[edx], xt_sorted[edx], poly_deg, w=1./xet_sorted[edx], cov=True) + py, covy = np.polyfit(dt[edx], yt_sorted[edx], poly_deg, w=1./yet_sorted[edx], cov=True) + + pxe = np.sqrt(np.diag(covx)) + pye = np.sqrt(np.diag(covy)) + + + x_mod = np.polyval(px, dt[edx]) + y_mod = np.polyval(py, dt[edx]) + chi2x = np.sum( ((x_mod - xt_sorted[edx]) / xet_sorted[edx])**2 ) + chi2y = np.sum( ((y_mod - yt_sorted[edx]) / yet_sorted[edx])**2 ) + dof = len(edx) - (poly_deg + 1) + + # Save results: + t0_all.append(t0) + px_all.append(px) + py_all.append(py) + pxe_all.append(pxe) + pye_all.append(pye) + chi2x_all.append(chi2x) + chi2y_all.append(chi2y) + dof_all.append(dof) + + if d[ss]['name_0'] in ['OB120169', 'OB120169_L']: + gs = GridSpec(3, 2) # 3 rows, 1 column + fig = plt.figure(ss + 1 + init_fig_idx, figsize=(12, 8)) + a0 = fig.add_subplot(gs[0:2, 0]) + a1 = fig.add_subplot(gs[2, 0]) + a2 = fig.add_subplot(gs[0:2, 1]) + a3 = fig.add_subplot(gs[2, 1]) + + a0.errorbar(t_sorted[edx], xt_sorted[edx], yerr=xet_sorted[edx], fmt='ro') + a0.plot(t_sorted[edx], x_mod, 'k-') + a0.set_title(d[ss]['name_0'] + ' X') + a1.errorbar(t_sorted[edx], xt_sorted[edx] - x_mod, yerr=xet_sorted[edx], fmt='ro') + a1.axhline(0, linestyle='--') + a1.set_xlabel('Time (yrs)') + a2.errorbar(t_sorted[edx], yt_sorted[edx], yerr=yet_sorted[edx], fmt='ro') + a2.plot(t_sorted[edx], y_mod, 'k-') + a2.set_title(d[ss]['name_0'] + ' Y') + a3.errorbar(t_sorted[edx], yt_sorted[edx] - y_mod, yerr=yet_sorted[edx], fmt='ro') + a3.axhline(0, linestyle='--') + a3.set_xlabel('Time (yrs)') + + + + t0_all = np.array(t0_all) + px_all = np.array(px_all) + py_all = np.array(py_all) + pxe_all = np.array(pxe_all) + pye_all = np.array(pye_all) + chi2x_all = np.array(chi2x_all) + chi2y_all = np.array(chi2y_all) + dof_all = np.array(dof_all) + + # Done with all the stars... recast as numpy arrays and save to output table. + d['t0'] = t0_all + d['chi2x'] = chi2x_all + d['chi2y'] = chi2y_all + d['dof'] = dof_all + if poly_deg >= 0: + d['x0'] = px_all[:, -1] + d['y0'] = py_all[:, -1] + d['x0_err'] = pxe_all[:, -1] + d['y0_err'] = pye_all[:, -1] + + if poly_deg >= 1: + d['vx'] = px_all[:, -2] + d['vy'] = py_all[:, -2] + d['vx_err'] = pxe_all[:, -2] + d['vy_err'] = pye_all[:, -2] + + if poly_deg >= 2: + d['ax'] = px_all[:, -3] + d['ay'] = py_all[:, -3] + d['axe'] = pxe_all[:, -3] + d['aye'] = pye_all[:, -3] + + pdb.set_trace() + + return + diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 5035261..960af5d 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -6,6 +6,8 @@ class MotionModel(ABC): # Number of data points required to fit model n_pts_req = 0 + # Degrees of freedom for model + dof = 0 # Fit paramters: Shared fit parameters fitter_param_names = [] @@ -50,12 +52,24 @@ def fit_motion_model(self, t, x, y, xe, ye, update=True): """ #return params, param_errors pass + + def get_chi2(self,dt,x,y,xe,ye): + """ + Get the chi^2 value for the current MM and + the input data. + """ + # TODO: confirm whether we want reduced chi^2 or anything special - maybe kwarg option + x_pred,y_pred = self.get_pos_at_time(dt) + chi2x = np.sum((x-x_pred)**2 / xe**2) + chi2y = np.sum((y-y_pred)**2 / ye**2) + return chi2x,chi2y class Fixed(MotionModel): """ A non-moving motion model for a star on the sky. """ n_pts_req = 1 + dof=1 fitter_param_names = ['x0','y0'] fixed_param_names = [] @@ -111,6 +125,7 @@ class Linear(MotionModel): A 2D linear motion model for a star on the sky. """ n_pts_req = 2 + dof=2 fitter_param_names = ['x0', 'vx', 'y0', 'vy'] fixed_param_names = ['t0'] @@ -136,20 +151,14 @@ def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025.0, return - def get_pos_at_time(self, t): - dt = t - self.t0 - + def get_pos_at_time(self, dt): x = self.px(dt) y = self.py(dt) - return x, y - def get_pos_err_at_time(self, t): - dt = t - self.t0 - + def get_pos_err_at_time(self, dt): x_err = np.hypot(self.x0_err, self.vx_err*dt) y_err = np.hypot(self.y0_err, self.vy_err*dt) - return x_err, y_err def get_batch_pos_at_time(self,t, @@ -252,6 +261,7 @@ class Acceleration(MotionModel): A 2D accelerating motion model for a star on the sky. """ n_pts_req = 4 # TODO: consider special case for 3 pts + dof=3 fitter_param_names = ['x0', 'vx0', 'ax', 'y0', 'vy0', 'ay'] fixed_param_names = ['t0'] @@ -384,7 +394,10 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): return params, param_errors - +""" +Get all the motion model parameters for a given motion_model_name. +Optionally, include fixed and error parameters (included by default). +""" def get_one_motion_model_param_names(motion_model_name, with_errors=True, with_fixed=True): mod = eval(motion_model_name) list_of_parameters = [] @@ -395,6 +408,10 @@ def get_one_motion_model_param_names(motion_model_name, with_errors=True, with_f list_of_parameters += [par+'_err' for par in getattr(mod, 'fitter_param_names')] return list_of_parameters +""" +Get all the motion model parameters for all models given in motion_model_list. +Optionally, include fixed and error parameters (included by default). +""" def get_list_motion_model_param_names(motion_model_list, with_errors=True, with_fixed=True): list_of_parameters = [] all_motion_models = [eval(mm) for mm in np.unique(motion_model_list).tolist()] @@ -411,6 +428,10 @@ def get_list_motion_model_param_names(motion_model_list, with_errors=True, with_ return np.unique(list_of_parameters).tolist() +""" +Get all the motion model parameters for all models defined in this module. +Optionally, include fixed and error parameters (included by default). +""" def get_all_motion_model_param_names(with_errors=True, with_fixed=True): list_of_parameters = [] all_motion_models = MotionModel.__subclasses__() diff --git a/flystar/plots.py b/flystar/plots.py index c675170..e04cd68 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -518,8 +518,8 @@ def vel_diff_err_hist(ref_mat, starlist_mat, nbins=25, bin_width=None, vxlim=Non diff_vx = ref_mat['vx'] - starlist_mat['vx'] diff_vy = ref_mat['vy'] - starlist_mat['vy'] - vx_err = np.hypot(ref_mat['vxe'], starlist_mat['vxe']) - vy_err = np.hypot(ref_mat['vye'], starlist_mat['vye']) + vx_err = np.hypot(ref_mat['vx_err'], starlist_mat['vx_err']) + vy_err = np.hypot(ref_mat['vy_err'], starlist_mat['vy_err']) ratio_vx = diff_vx / vx_err ratio_vy = diff_vy / vy_err @@ -589,10 +589,10 @@ def residual_vpd(ref_mat, starlist_trans_mat, pscale=None): # Error calculation depends on if we are converting to mas/yr if pscale != None: - xerr_frac = np.hypot((ref_mat['vxe'] / ref_mat['vx']), - (starlist_trans_mat['vxe'] / starlist_trans_mat['vx'])) - yerr_frac = np.hypot((ref_mat['vye'] / ref_mat['vy']), - (starlist_trans_mat['vye'] / starlist_trans_mat['vy'])) + xerr_frac = np.hypot((ref_mat['vx_err'] / ref_mat['vx']), + (starlist_trans_mat['vx_err'] / starlist_trans_mat['vx'])) + yerr_frac = np.hypot((ref_mat['vy_err'] / ref_mat['vy']), + (starlist_trans_mat['vy_err'] / starlist_trans_mat['vy'])) # Now apply the plate scale to convert to mas/yr diff_x *= pscale @@ -600,8 +600,8 @@ def residual_vpd(ref_mat, starlist_trans_mat, pscale=None): xerr = diff_x * xerr_frac yerr = diff_y * yerr_frac else: - xerr = np.hypot(ref_mat['vxe'], starlist_trans_mat['vxe']) - yerr = np.hypot(ref_mat['vye'], starlist_trans_mat['vye']) + xerr = np.hypot(ref_mat['vx_err'], starlist_trans_mat['vx_err']) + yerr = np.hypot(ref_mat['vy_err'], starlist_trans_mat['vy_err']) # Plotting py.figure(figsize=(10,10)) @@ -1044,8 +1044,8 @@ def plot_gaia(gaia): def plot_pm_error(tab): plt.figure(figsize=(6,6)) plt.clf() - plt.semilogy(tab['m0'], tab['vxe']*1e3, 'r.', label=r'$\sigma_{\mu_{\alpha *}}$', alpha=0.4) - plt.semilogy(tab['m0'], tab['vye']*1e3, 'b.', label=r'$\sigma_{\mu_{\delta}}$', alpha=0.4) + plt.semilogy(tab['m0'], tab['vx_err']*1e3, 'r.', label=r'$\sigma_{\mu_{\alpha *}}$', alpha=0.4) + plt.semilogy(tab['m0'], tab['vy_err']*1e3, 'b.', label=r'$\sigma_{\mu_{\delta}}$', alpha=0.4) plt.legend() plt.xlabel('Mag') plt.ylabel('PM Error (mas/yr)') @@ -1055,7 +1055,7 @@ def plot_pm_error(tab): def plot_mag_error(tab): plt.figure(figsize=(6,6)) plt.clf() - plt.semilogy(tab['m0'], tab['m0e'], 'r.', alpha=0.4) + plt.semilogy(tab['m0'], tab['m0_err'], 'r.', alpha=0.4) plt.legend() plt.xlabel('Mag') plt.ylabel('Mag Error (mag)') @@ -1216,7 +1216,7 @@ def plot_quiver_residuals_with_orig_all_epochs(tab, trans_list, unit='arcsec', s scale=scale_orig, plotlim=plotlim) plot_mag_scatter(tab['m'][:, ee], - tab['m0'], tab['m0e'], + tab['m0'], tab['m0_err'], tab['x'][:, ee], tab['y'][:, ee], tab['xe'][:, ee], tab['ye'][:, ee], xt_mod, yt_mod, @@ -1226,7 +1226,7 @@ def plot_quiver_residuals_with_orig_all_epochs(tab, trans_list, unit='arcsec', s cte_fit=cte_fit, mlim=mlim) plot_y_scatter(tab['m'][:, ee], - tab['m0'], tab['m0e'], + tab['m0'], tab['m0_err'], tab['x'][:, ee], tab['y'][:, ee], tab['xe'][:, ee], tab['ye'][:, ee], xt_mod, yt_mod, @@ -2322,7 +2322,7 @@ def plot_chi2_dist_mag(tab, Ndetect, mlim=40, n_bins=30): m = tab['m'][ii, fnd] merr = tab['me'][ii, fnd] m0 = tab['m0'][ii] - m0err = tab['m0e'][ii] + m0err = tab['m0_err'][ii] diff_m = m0 - m sig_m = diff_m/merr @@ -2410,11 +2410,11 @@ def plot_stars(tab, star_names, NcolMax=2, epoch_array = None, figsize=(15,25), fitLineX = tab['x0'][ii] + (tab['vx'][ii] * dt) fitLineY = tab['y0'][ii] + (tab['vy'][ii] * dt) - fitSigX = np.hypot(tab['x0e'][ii], tab['vxe'][ii]*dt) - fitSigY = np.hypot(tab['y0e'][ii], tab['vye'][ii]*dt) + fitSigX = np.hypot(tab['x0_err'][ii], tab['vx_err'][ii]*dt) + fitSigY = np.hypot(tab['y0_err'][ii], tab['vy_err'][ii]*dt) fitLineM = np.repeat(tab['m0'][ii], len(dt)).reshape(len(dt),1) - fitSigM = np.repeat(tab['m0e'][ii], len(dt)).reshape(len(dt),1) + fitSigM = np.repeat(tab['m0_err'][ii], len(dt)).reshape(len(dt),1) diffX = x - fitLineX diffY = y - fitLineY @@ -2815,11 +2815,11 @@ def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_ fitLineX = tab['x0'][ii] + (tab['vx'][ii] * dt) fitLineY = tab['y0'][ii] + (tab['vy'][ii] * dt) - fitSigX = np.hypot(tab['x0e'][ii], tab['vxe'][ii]*dt) - fitSigY = np.hypot(tab['y0e'][ii], tab['vye'][ii]*dt) + fitSigX = np.hypot(tab['x0_err'][ii], tab['vx_err'][ii]*dt) + fitSigY = np.hypot(tab['y0_err'][ii], tab['vy_err'][ii]*dt) fitLineM = np.repeat(tab['m0'][ii], len(dt)).reshape(len(dt),1) - fitSigM = np.repeat(tab['m0e'][ii], len(dt)).reshape(len(dt),1) + fitSigM = np.repeat(tab['m0_err'][ii], len(dt)).reshape(len(dt),1) diffX = x - fitLineX diffY = y - fitLineY @@ -3166,8 +3166,8 @@ def plot_errors_vs_r_m(star_tab, vmax_perr=0.75, vmax_pmerr=0.75): two axis (as is used in pick_good_ref_stars()). """ r = np.hypot(star_tab['x0'], star_tab['y0']) - p_err = np.mean((star_tab['x0e'], star_tab['y0e']), axis=0) * 1e3 - pm_err = np.mean((star_tab['vxe'], star_tab['vye']), axis=0) * 1e3 + p_err = np.mean((star_tab['x0_err'], star_tab['y0_err']), axis=0) * 1e3 + pm_err = np.mean((star_tab['vx_err'], star_tab['vy_err']), axis=0) * 1e3 plt.figure(figsize=(12, 6)) plt.clf() diff --git a/flystar/startables.py b/flystar/startables.py index b68b752..95a21bf 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -592,7 +592,6 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b all_motion_models = np.unique(self['motion_model_input'].tolist() + ['Fixed']+[default_motion_model]).tolist() new_col_list = motion_model.get_list_motion_model_param_names(all_motion_models, with_errors=True) # Append goodness of fit metrics and t0. - # TODO: actually populate these columns new_col_list += ['chi2_x', 'chi2_y'] if 't0' not in new_col_list: new_col_list.append('t0') @@ -836,7 +835,11 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, mod = modClass(**param_dict) # Fit for the best parameters - params, param_errs = mod.fit_motion_model(dt, x, y, xe, ye, bootstrap=bootstrap) + params, param_errs = mod.fit_motion_model(dt, x, y, xe, ye, bootstrap=bootstrap, update=True) + chi2_x,chi2_y = mod.get_chi2(dt,x,y,xe,ye) + self['chi2_x'][ss]=chi2_x + self['chi2_y'][ss]=chi2_y + # Save parameters and errors to table. for pp in range(len(modClass.fitter_param_names)): par = modClass.fitter_param_names[pp] From 64876f0b00319da20299941f6849e230a8f35b90 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 26 Sep 2024 10:46:41 -0700 Subject: [PATCH 018/124] work in progress for motion model --- flystar/align.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 704339f..07e71b7 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -1842,12 +1842,10 @@ def add_rows_for_new_stars(ref_table, star_list, idx_lis, default_motion_model=' return ref_table, idx_lis_new, idx_ref_new - """ Functions specific to OB120169 moved to align_old_functions,py """ - def calc_mag_avg_all_stars(d): # Determine how many stars there are. N_stars = len(d) From d41ac6d882a0a7636f78a663f0b4d95d700de41b Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 22 Oct 2024 12:06:56 -0700 Subject: [PATCH 019/124] small updates to transforms --- flystar/align.py | 558 ++++++--------------------------- flystar/align_old_functions.py | 461 ++++++++++++++++++++++++++- 2 files changed, 549 insertions(+), 470 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 07e71b7..1609719 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -565,7 +565,7 @@ def setup_ref_table_from_starlist(self, star_list): """ Start with the reference list.... this will change and grow over time, so make a copy that we will keep updating. - The reference table will contain one columne for every named + The reference table will contain one column for every named array in the original reference star list. """ col_arrays = {} @@ -2320,6 +2320,8 @@ def write_transform(transform, starlist, reference, N_trans, deltaMag=0, restric return +# Transform_from_file original version moved to align_old_functions.py +# This version makes the transFile an object and uses transform_from_object def transform_from_file(starlist, transFile): """ Apply transformation from transFile to starlist. Returns astropy table with @@ -2327,8 +2329,7 @@ def transform_from_file(starlist, transFile): positions/position errors, plus velocities and velocity errors if they are present in starlist. - WARNING: THIS CODE WILL NOT WORK FOR LEGENDRE POLYNOMIAL - TRANSFORMS + WARNING: THIS CODE WORKS FOR POLYTRANSFORM Parameters: ---------- @@ -2344,153 +2345,31 @@ def transform_from_file(starlist, transFile): ------ Copy of starlist astropy table with transformed coordinates. """ - # Make a copy of starlist. This is what we will eventually modify with - # the transformed coordinates - starlist_f = copy.deepcopy(starlist) - - # Check to see if velocities are present in starlist. If so, we will - # need to transform these as well as positions - vel = False - keys = list(starlist.keys()) - if 'vx' in keys: - vel = True - - # Extract needed information from starlist - x_orig = starlist['x'] - y_orig = starlist['y'] - xe_orig = starlist['xe'] - ye_orig = starlist['ye'] - - if vel: - x0_orig = starlist['x0'] - y0_orig = starlist['y0'] - x0e_orig = starlist['x0_err'] - y0e_orig = starlist['y0_err'] - - vx_orig = starlist['vx'] - vy_orig = starlist['vy'] - vxe_orig = starlist['vx_err'] - vye_orig = starlist['vy_err'] - - # Read transFile - trans = Table.read(transFile, format='ascii.commented_header', header_start=-1) - Xcoeff = trans['Xcoeff'] - Ycoeff = trans['Ycoeff'] - - #-----------------------------------------------# - # General equation for applying the transform - #-----------------------------------------------# - #""" + # Make transform object + trans_table = Table.read(transFile, format='ascii.commented_header', header_start=-1) + Xcoeff = trans_table['Xcoeff'] + Ycoeff = trans_table['Ycoeff'] # First determine the order based on the number of terms # Comes from Nterms = (N+1)*(N+2) / 2. order = (np.sqrt(1 + 8*len(Xcoeff)) - 3) / 2. - if order%1 != 0: print( 'Incorrect number of coefficients for polynomial') print( 'Stopping') return order = int(order) - - # Position transformation - x_new, y_new = transform_pos_from_file(Xcoeff, Ycoeff, order, x_orig, - y_orig) + # Do transform + transform = transforms.PolyTransform(order, Xcoeff, Ycoeff) + return transform_from_object(starlist, transform) - if vel: - x0_new, y0_new = transform_pos_from_file(Xcoeff, Ycoeff, order, x0_orig, - y0_orig) - - # Position error transformation - xe_new, ye_new = transform_poserr_from_file(Xcoeff, Ycoeff, order, xe_orig, - ye_orig, x_orig, y_orig) - - if vel: - x0e_new, y0e_new = transform_poserr_from_file(Xcoeff, Ycoeff, order, x0e_orig, - y0e_orig, x0_orig, y0_orig) - - if vel: - # Velocity transformation - vx_new, vy_new = transform_vel_from_file(Xcoeff, Ycoeff, order, vx_orig, - vy_orig, x_orig, y_orig) - - # Velocity error transformation - vxe_new, vye_new = transform_velerr_from_file(Xcoeff, Ycoeff, order, - vxe_orig, vye_orig, - vx_orig, vy_orig, - xe_orig, ye_orig, - x_orig, y_orig) - - #----------------------------------------# - # Hard coded example: old but functional - #----------------------------------------# - """ - # How the transformation is applied depends on the type of transform. - # This can be determined by the length of Xcoeff, Ycoeff - if len(Xcoeff) == 3: - x_new = Xcoeff[0] + Xcoeff[1] * x_orig + Xcoeff[2] * y_orig - y_new = Ycoeff[0] + Ycoeff[1] * x_orig + Ycoeff[2] * y_orig - xe_new = np.sqrt( (Xcoeff[1] * xe_orig)**2 + (Xcoeff[2] * ye_orig)**2 ) - ye_new = np.sqrt( (Ycoeff[1] * xe_orig)**2 + (Ycoeff[2] * ye_orig)**2 ) - - if vel: - vx_new = Xcoeff[1] * vx_orig + Xcoeff[2] * vy_orig - vy_new = Ycoeff[1] * vx_orig + Ycoeff[2] * vy_orig - vxe_new = np.sqrt( (Xcoeff[1] * vxe_orig)**2 + (Xcoeff[2] * vye_orig)**2 ) - vye_new = np.sqrt( (Ycoeff[1] * vxe_orig)**2 + (Ycoeff[2] * vye_orig)**2 ) - - elif len(Xcoeff) == 6: - x_new = Xcoeff[0] + Xcoeff[1]*x_orig + Xcoeff[3]*x_orig**2 + Xcoeff[2]*y_orig + \ - Xcoeff[5]*y_orig**2. + Xcoeff[4]*x_orig*y_orig - - y_new = Ycoeff[0] + Ycoeff[1]*x_orig + Ycoeff[3]*x_orig**2 + Ycoeff[2]*y_orig + \ - Ycoeff[5]*y_orig**2. + Ycoeff[4]*x_orig*y_orig - - xe_new = np.sqrt( (Xcoeff[1] + 2*Xcoeff[3]*x_orig + Xcoeff[4]*y_orig)**2 * xe_orig**2 + \ - (Xcoeff[2] + 2*Xcoeff[5]*y_orig + Xcoeff[4]*x_orig)**2 * ye_orig**2 ) - - ye_new = np.sqrt( (Ycoeff[1] + 2*Ycoeff[3]*x_orig + Ycoeff[4]*y_orig)**2 * xe_orig**2 + \ - (Ycoeff[2] + 2*Ycoeff[5]*y_orig + Ycoeff[4]*x_orig)**2 * ye_orig**2 ) - - if vel: - vx_new = Xcoeff[1]*vx_orig + 2*Xcoeff[3]*x_orig*vx_orig + Xcoeff[2]*vy_orig + \ - 2.*Xcoeff[5]*y_orig*vy_orig + Xcoeff[4]*(x_orig*vy_orig + vx_orig*y_orig) - - vy_new = Ycoeff[1]*vx_orig + 2*Ycoeff[3]*x_orig*vx_orig + Ycoeff[2]*vy_orig + \ - 2.*Ycoeff[5]*y_orig*vy_orig + Ycoeff[4]*(x_orig*vy_orig + vx_orig*y_orig) - - vxe_new = np.sqrt( (Xcoeff[1] + 2*Xcoeff[3]*x_orig + Xcoeff[4]*y_orig)**2 * vxe_orig**2 + \ - (Xcoeff[2] + 2*Xcoeff[5]*y_orig + Xcoeff[4]*x_orig)**2 * vye_orig**2 + \ - (2*Xcoeff[3]*vx_orig + Xcoeff[4]*vy_orig)**2 * xe_orig**2 + \ - (2*Xcoeff[5]*vy_orig + Xcoeff[4]*vx_orig)**2 * ye_orig**2 ) - - vye_new = np.sqrt( (Ycoeff[1] + 2*Ycoeff[3]*x_orig + Ycoeff[4]*y_orig)**2 * vxe_orig**2 + \ - (Ycoeff[2] + 2*Ycoeff[5]*y_orig + Ycoeff[4]*x_orig)**2 * vye_orig**2 + \ - (2*Ycoeff[3]*vx_orig + Ycoeff[4]*vy_orig)**2 * xe_orig**2 + \ - (2*Ycoeff[5]*vy_orig + Ycoeff[4]*vx_orig)**2 * ye_orig**2 ) - """ - #Update transformed coords to copy of astropy table - starlist_f['x'] = x_new - starlist_f['y'] = y_new - starlist_f['xe'] = xe_new - starlist_f['ye'] = ye_new - if vel: - starlist_f['x0'] = x0_new - starlist_f['y0'] = y0_new - starlist_f['x0_err'] = x0e_new - starlist_f['y0_err'] = y0e_new - starlist_f['vx'] = vx_new - starlist_f['vy'] = vy_new - starlist_f['vx_err'] = vxe_new - starlist_f['vy_err'] = vye_new - - return starlist_f - def transform_from_object(starlist, transform): """ Apply transformation to starlist. Returns astropy table with transformed positions/position errors, velocities and velocity errors - if they are present in starlits + if they are present in starlits. If a more complex motion_model is + implemented, the motion parameters are set to nan, as we need the full time + series to refit. Parameters: ---------- @@ -2512,61 +2391,87 @@ def transform_from_object(starlist, transform): starlist_f = copy.deepcopy(starlist) keys = list(starlist.keys()) - # Check to see if velocities are present in starlist. If so, we will - # need to transform these as well as positions - vel = 'vx' in keys - err = 'xe' in keys + # Check to see if velocities or motion_model are present in starlist. + vel = ('vx' in keys)and ~("motion_model_assigned" in keys) + mot = ("motion_model_assigned" in keys) + # If the only motion models used are Fixed and Linear, we can still use the older, faster code. + if mot: + motion_models_unique = list(np.unique(starlist_f['motion_model_assigned'])) + if 'Linear' in motion_models_unique: + motion_models_unique.remove('Linear') + if 'Fixed' in motion_models_unique: + motion_models_unique.remove('Fixed') + if len(motion_models_unique)==0: + vel=True + mot=False - # Extract needed information from starlist - x = starlist_f['x'] - y = starlist_f['y'] - - if err: - xe = starlist_f['xe'] - ye = starlist_f['ye'] - + # Prior code before motion_model implementation + # Can still be used as shortcut for Linear+Fixed motion_model only if vel: - x0 = starlist_f['x0'] - y0 = starlist_f['y0'] - x0e = starlist_f['x0_err'] - y0e = starlist_f['y0_err'] - vx = starlist_f['vx'] - vy = starlist_f['vy'] - vxe = starlist_f['vx_err'] - vye = starlist_f['vy_err'] - - # calculate the transformed position and velocity - - # (x_new, y_new, xe_new, ye_new) in (x,y) - x_new, y_new, xe_new, ye_new = position_transform_from_object(x, y, xe, ye, transform) - - - if vel: - # (x0_new, y0_new, x0e_new, y0e_new) in (x0, y0, x0e, y0e) - x0_new, y0_new, x0e_new, y0e_new = position_transform_from_object(x0, y0, x0e, y0e, transform) - # (vx_new, vy_new, vxe_new, vye_new) in (x0, y0, x0e, y0e, vx, vy, vxe, vye) - vx_new, vy_new, vxe_new, vye_new = velocity_transform_from_object(x0, y0, x0e, y0e, vx, vy, vxe, vye, transform) - - # update transformed coords to copy of astropy table - starlist_f['x'] = x_new - starlist_f['y'] = y_new - starlist_f['xe'] = xe_new - starlist_f['ye'] = ye_new - - if vel: - starlist_f['x0'] = x0_new - starlist_f['y0'] = y0_new - starlist_f['x0_err'] = x0e_new - starlist_f['y0_err'] = y0e_new - starlist_f['vx'] = vx_new - starlist_f['vy'] = vy_new - starlist_f['vx_err'] = vxe_new - starlist_f['vy_err'] = vye_new + err = 'xe' in keys - return starlist_f + # Extract needed information from starlist + x = starlist_f['x'] + y = starlist_f['y'] + if err: + xe = starlist_f['xe'] + ye = starlist_f['ye'] + if vel: + x0 = starlist_f['x0'] + y0 = starlist_f['y0'] + x0e = starlist_f['x0_err'] + y0e = starlist_f['y0_err'] + vx = starlist_f['vx'] + vy = starlist_f['vy'] + vxe = starlist_f['vx_err'] + vye = starlist_f['vy_err'] + + # calculate the transformed position and velocity + + # (x_new, y_new, xe_new, ye_new) in (x,y) + x_new, y_new, xe_new, ye_new = position_transform_from_object(x, y, xe, ye, transform) + + if vel: + # (x0_new, y0_new, x0e_new, y0e_new) in (x0, y0, x0e, y0e) + x0_new, y0_new, x0e_new, y0e_new = position_transform_from_object(x0, y0, x0e, y0e, transform) + # (vx_new, vy_new, vxe_new, vye_new) in (x0, y0, x0e, y0e, vx, vy, vxe, vye) + vx_new, vy_new, vxe_new, vye_new = velocity_transform_from_object(x0, y0, x0e, y0e, vx, vy, vxe, vye, transform) + + # update transformed coords to copy of astropy table + starlist_f['x'] = x_new + starlist_f['y'] = y_new + starlist_f['xe'] = xe_new + starlist_f['ye'] = ye_new + + if vel: + starlist_f['x0'] = x0_new + starlist_f['y0'] = y0_new + starlist_f['x0_err'] = x0e_new + starlist_f['y0_err'] = y0e_new + starlist_f['vx'] = vx_new + starlist_f['vy'] = vy_new + starlist_f['vx_err'] = vxe_new + starlist_f['vy_err'] = vye_new + + # For more complicated motion_models, + # We can't easily transform them, set the values to nans and refit later + if mot: + # Transform positions + x_new, y_new, xe_new, ye_new = position_transform_from_object(x, y, xe, ye, transform) + starlist_f['x'] = x_new + starlist_f['y'] = y_new + starlist_f['xe'] = xe_new + starlist_f['ye'] = ye_new + + motion_model_params = motion_model.get_all_motion_model_param_names() + for param in motion_model_params: + if param in keys: + starlist_f[param] = np.nan + + return starlist_f def position_transform_from_object(x, y, xe, ye, transform): @@ -2815,291 +2720,6 @@ def velocity_transform_from_object(x0, y0, x0e, y0e, vx, vy, vxe, vye, transform return vx_new, vy_new, vxe_new, vye_new -def transform_pos_from_file(Xcoeff, Ycoeff, order, x_orig, y_orig): - """ - Given the read-in coefficients from transform_from_file, apply the - transformation to the observed positions. This is generalized to - work with any order polynomial transform. - - WARNING: THIS CODE WILL NOT WORK FOR LEGENDRE POLYNOMIAL - TRANSFORMS - - Parameters: - ---------- - Xcoeff: Array - Array with the coefficients of the X pos transformation - - Ycoeff: Array - Array with the coefficients of the Y pos transformation - - order: int - Order of transformation - - x_orig: array - Array with the original X positions - - y_orig: array - Array with the original Y positions - - Output: - ------ - x_new: array - Transformed X positions - - y_new: array - Transformed Y positions - - """ - idx = 0 # coeff index - x_new = 0.0 - y_new = 0.0 - for i in range(order+1): - for j in range(i+1): - x_new += Xcoeff[idx] * x_orig**(i-j) * y_orig**j - y_new += Ycoeff[idx] * x_orig**(i-j) * y_orig**j - - idx += 1 - - return x_new, y_new - -def transform_poserr_from_file(Xcoeff, Ycoeff, order, xe_orig, ye_orig, x_orig, y_orig): - """ - Given the read-in coefficients from transform_from_file, apply the - transformation to the observed position errors. This is generalized to - work with any order transform. - - WARNING: THIS CODE WILL NOT WORK FOR LEGENDRE POLYNOMIAL - TRANSFORMS - - Parameters: - ---------- - Xcoeff: Array - Array with the coefficients of the X pos transformation - - Ycoeff: Array - Array with the coefficients of the Y pos transformation - - order: int - Order of transformation - - xe_orig: array - Array with the original X position errs - - ye_orig: array - Array with the original Y position errs - - x_orig: array - Array with the original X positions - - y_orig: array - Array with the original Y positions - - Output: - ------ - xe_new: array - Transformed X position errs - - ye_new: array - Transformed Y position errs - """ - idx = 0 # coeff index - xe_new_tmp1 = 0.0 - ye_new_tmp1 = 0.0 - xe_new_tmp2 = 0.0 - ye_new_tmp2 = 0.0 - - # First loop: dx'/dx - for i in range(order+1): - for j in range(i+1): - xe_new_tmp1 += Xcoeff[idx] * (i - j) * x_orig**(i-j-1) * y_orig**j - ye_new_tmp1 += Ycoeff[idx] * (i - j) * x_orig**(i-j-1) * y_orig**j - - idx += 1 - - # Second loop: dy'/dy - idx = 0 # coeff index - for i in range(order+1): - for j in range(i+1): - xe_new_tmp2 += Xcoeff[idx] * (j) * x_orig**(i-j) * y_orig**(j-1) - ye_new_tmp2 += Ycoeff[idx] * (j) * x_orig**(i-j) * y_orig**(j-1) - - idx += 1 - # Take square root for xe/ye_new - xe_new = np.sqrt((xe_new_tmp1 * xe_orig)**2 + (xe_new_tmp2 * ye_orig)**2) - ye_new = np.sqrt((ye_new_tmp1 * ye_orig)**2 + (ye_new_tmp2 * ye_orig)**2) - - return xe_new, ye_new - -def transform_vel_from_file(Xcoeff, Ycoeff, order, vx_orig, vy_orig, x_orig, y_orig): - """ - Given the read-in coefficients from transform_from_file, apply the - transformation to the observed proper motions. This is generalized to - work with any order transform. - - WARNING: THIS CODE WILL NOT WORK FOR LEGENDRE POLYNOMIAL - TRANSFORMS - - Parameters: - ---------- - Xcoeff: Array - Array with the coefficients of the X pos transformation - - Ycoeff: Array - Array with the coefficients of the Y pos transformation - - order: int - Order of transformation - - vx_orig: array - Array with the original X proper motions - - vy_orig: array - Array with the original Y proper motions - - x_orig: array - Array with the original X positions - - y_orig: array - Array with the original Y positions - - Output: - ------ - vx_new: array - Transformed X proper motions - - vy_new: array - Transformed Y proper motions - """ - idx = 0 # coeff index - vx_new = 0.0 - vy_new = 0.0 - # First loop: dx'/dx - for i in range(order+1): - for j in range(i+1): - vx_new += Xcoeff[idx] * (i - j) * x_orig**(i-j-1) * y_orig**j * vx_orig - vy_new += Ycoeff[idx] * (i - j) * x_orig**(i-j-1) * y_orig**j * vx_orig - - idx += 1 - # Second loop: dy'/dy - idx = 0 # coeff index - for i in range(order+1): - for j in range(i+1): - vx_new += Xcoeff[idx] * (j) * x_orig**(i-j) * y_orig**(j-1) * vy_orig - vy_new += Ycoeff[idx] * (j) * x_orig**(i-j) * y_orig**(j-1) * vy_orig - - idx += 1 - - return vx_new, vy_new - -def transform_velerr_from_file(Xcoeff, Ycoeff, order, vxe_orig, vye_orig, vx_orig, - vy_orig, xe_orig, ye_orig, x_orig, y_orig): - """ - Given the read-in coefficients from transform_from_file, apply the - transformation to the observed proper motion errors. This is generalized to - work with any order transform. - - WARNING: THIS CODE WILL NOT WORK FOR LEGENDRE POLYNOMIAL - TRANSFORMS - - Parameters: - ---------- - Xcoeff: Array - Array with the coefficients of the X pos transformation - - Ycoeff: Array - Array with the coefficients of the Y pos transformation - - order: int - Order of transformation - - vxe_orig: array - Array with the original X proper motion errs - - vye_orig: array - Array with the original Y proper motion errs - - vx_orig: array - Array with the original X proper motions - - vy_orig: array - Array with the original Y proper motions - - xe_orig: array - Array with the original X position errs - - ye_orig: array - Array with the original Y position errs - - x_orig: array - Array with the original X positions - - y_orig: array - Array with the original Y positions - - Output: - ------ - vxe_new: array - Transformed X proper motion errs - - vye_new: array - Transformed Y proper motion errs - """ - idx = 0 - vxe_new_tmp1 = 0.0 - vye_new_tmp1 = 0.0 - vxe_new_tmp2 = 0.0 - vye_new_tmp2 = 0.0 - vxe_new_tmp3 = 0.0 - vye_new_tmp3 = 0.0 - vxe_new_tmp4 = 0.0 - vye_new_tmp4 = 0.0 - - - # First loop: dvx' / dx - for i in range(order+1): - for j in range(i+1): - vxe_new_tmp1 += Xcoeff[idx] * (i-j) * (i-j-1) * x_orig**(i-j-2) * y_orig**j * vx_orig - vxe_new_tmp1 += Xcoeff[idx] * (j) * (i-j) * x_orig**(i-j-1) * y_orig**(j-1) * vy_orig - vye_new_tmp1 += Ycoeff[idx] * (i-j) * (i-j-1) * x_orig**(i-j-2) * y_orig**j * vx_orig - vye_new_tmp1 += Ycoeff[idx] * (j) * (i-j) * x_orig**(i-j-1) * y_orig**(j-1) * vy_orig - - idx += 1 - - # Second loop: dvx' / dy - idx = 0 - for i in range(order+1): - for j in range(i+1): - vxe_new_tmp2 += Xcoeff[idx] * (i-j) * (j) * x_orig**(i-j-1) * y_orig**(j-1) * vx_orig - vxe_new_tmp2 += Xcoeff[idx] * (j) * (j-1) * x_orig**(i-j-1) * y_orig**(j-2) * vy_orig - vye_new_tmp2 += Ycoeff[idx] * (i-j) * (j) * x_orig**(i-j-1) * y_orig**(j-1) * vx_orig - vye_new_tmp2 += Ycoeff[idx] * (j) * (j-1) * x_orig**(i-j-1) * y_orig**(j-2) * vy_orig - - idx += 1 - - # Third loop: dvx' / dvx - idx = 0 - for i in range(order+1): - for j in range(i+1): - vxe_new_tmp3 += Xcoeff[idx] * (i-j) * x_orig**(i-j-1) * y_orig**j - vye_new_tmp3 += Ycoeff[idx] * (i-j) * x_orig**(i-j-1) * y_orig**j - - idx += 1 - - # Fourth loop: dvx' / dvy - idx = 0 - for i in range(order+1): - for j in range(i+1): - vxe_new_tmp4 += Xcoeff[idx] * (j) * x_orig**(i-j) * y_orig**(j-1) - vye_new_tmp4 += Ycoeff[idx] * (j) * x_orig**(i-j) * y_orig**(j-1) - - idx += 1 - - vxe_new = np.sqrt((vxe_new_tmp1 * xe_orig)**2 + (vxe_new_tmp2 * ye_orig)**2 + \ - (vxe_new_tmp3 * vxe_orig)**2 + (vxe_new_tmp4 * vye_orig)**2) - vye_new = np.sqrt((vye_new_tmp1 * xe_orig)**2 + (vye_new_tmp2 * ye_orig)**2 + \ - (vye_new_tmp3 * vxe_orig)**2 + (vye_new_tmp4 * vye_orig)**2) - - return vxe_new, vye_new def check_iter_tolerances(iters, dr_tol, dm_tol, outlier_tol): diff --git a/flystar/align_old_functions.py b/flystar/align_old_functions.py index 46aae42..9bae670 100755 --- a/flystar/align_old_functions.py +++ b/flystar/align_old_functions.py @@ -1,5 +1,464 @@ """ -Old functions iwht things hard-coded for OB120169 +Old functions that are only referenced in examples and template +""" +def transform_from_file(starlist, transFile): + """ + Apply transformation from transFile to starlist. Returns astropy table with + added columns with the transformed coordinates. NOTE: Transforms + positions/position errors, plus velocities and velocity errors if they + are present in starlist. + + WARNING: THIS CODE WILL NOT WORK FOR LEGENDRE POLYNOMIAL + TRANSFORMS + + Parameters: + ---------- + starlist: astropy table + Starlist we want to apply the transformation too. Must already + have standard column headers + + transFile: ascii file + File with the transformation coefficients. Assumed to be output of + write_transform, with coefficients specified as code documents + + Output: + ------ + Copy of starlist astropy table with transformed coordinates. + """ + # Make a copy of starlist. This is what we will eventually modify with + # the transformed coordinates + starlist_f = copy.deepcopy(starlist) + + # Check to see if velocities are present in starlist. If so, we will + # need to transform these as well as positions + vel = False + keys = list(starlist.keys()) + if 'vx' in keys: + vel = True + + # Extract needed information from starlist + x_orig = starlist['x'] + y_orig = starlist['y'] + xe_orig = starlist['xe'] + ye_orig = starlist['ye'] + + if vel: + x0_orig = starlist['x0'] + y0_orig = starlist['y0'] + x0e_orig = starlist['x0_err'] + y0e_orig = starlist['y0_err'] + + vx_orig = starlist['vx'] + vy_orig = starlist['vy'] + vxe_orig = starlist['vx_err'] + vye_orig = starlist['vy_err'] + + # Read transFile + trans = Table.read(transFile, format='ascii.commented_header', header_start=-1) + Xcoeff = trans['Xcoeff'] + Ycoeff = trans['Ycoeff'] + + #-----------------------------------------------# + # General equation for applying the transform + #-----------------------------------------------# + #""" + # First determine the order based on the number of terms + # Comes from Nterms = (N+1)*(N+2) / 2. + order = (np.sqrt(1 + 8*len(Xcoeff)) - 3) / 2. + + if order%1 != 0: + print( 'Incorrect number of coefficients for polynomial') + print( 'Stopping') + return + order = int(order) + + # Position transformation + x_new, y_new = transform_pos_from_file(Xcoeff, Ycoeff, order, x_orig, + y_orig) + + if vel: + x0_new, y0_new = transform_pos_from_file(Xcoeff, Ycoeff, order, x0_orig, + y0_orig) + + # Position error transformation + xe_new, ye_new = transform_poserr_from_file(Xcoeff, Ycoeff, order, xe_orig, + ye_orig, x_orig, y_orig) + + if vel: + x0e_new, y0e_new = transform_poserr_from_file(Xcoeff, Ycoeff, order, x0e_orig, + y0e_orig, x0_orig, y0_orig) + + if vel: + # Velocity transformation + vx_new, vy_new = transform_vel_from_file(Xcoeff, Ycoeff, order, vx_orig, + vy_orig, x_orig, y_orig) + + # Velocity error transformation + vxe_new, vye_new = transform_velerr_from_file(Xcoeff, Ycoeff, order, + vxe_orig, vye_orig, + vx_orig, vy_orig, + xe_orig, ye_orig, + x_orig, y_orig) + + #----------------------------------------# + # Hard coded example: old but functional + #----------------------------------------# + """ + # How the transformation is applied depends on the type of transform. + # This can be determined by the length of Xcoeff, Ycoeff + if len(Xcoeff) == 3: + x_new = Xcoeff[0] + Xcoeff[1] * x_orig + Xcoeff[2] * y_orig + y_new = Ycoeff[0] + Ycoeff[1] * x_orig + Ycoeff[2] * y_orig + xe_new = np.sqrt( (Xcoeff[1] * xe_orig)**2 + (Xcoeff[2] * ye_orig)**2 ) + ye_new = np.sqrt( (Ycoeff[1] * xe_orig)**2 + (Ycoeff[2] * ye_orig)**2 ) + + if vel: + vx_new = Xcoeff[1] * vx_orig + Xcoeff[2] * vy_orig + vy_new = Ycoeff[1] * vx_orig + Ycoeff[2] * vy_orig + vxe_new = np.sqrt( (Xcoeff[1] * vxe_orig)**2 + (Xcoeff[2] * vye_orig)**2 ) + vye_new = np.sqrt( (Ycoeff[1] * vxe_orig)**2 + (Ycoeff[2] * vye_orig)**2 ) + + elif len(Xcoeff) == 6: + x_new = Xcoeff[0] + Xcoeff[1]*x_orig + Xcoeff[3]*x_orig**2 + Xcoeff[2]*y_orig + \ + Xcoeff[5]*y_orig**2. + Xcoeff[4]*x_orig*y_orig + + y_new = Ycoeff[0] + Ycoeff[1]*x_orig + Ycoeff[3]*x_orig**2 + Ycoeff[2]*y_orig + \ + Ycoeff[5]*y_orig**2. + Ycoeff[4]*x_orig*y_orig + + xe_new = np.sqrt( (Xcoeff[1] + 2*Xcoeff[3]*x_orig + Xcoeff[4]*y_orig)**2 * xe_orig**2 + \ + (Xcoeff[2] + 2*Xcoeff[5]*y_orig + Xcoeff[4]*x_orig)**2 * ye_orig**2 ) + + ye_new = np.sqrt( (Ycoeff[1] + 2*Ycoeff[3]*x_orig + Ycoeff[4]*y_orig)**2 * xe_orig**2 + \ + (Ycoeff[2] + 2*Ycoeff[5]*y_orig + Ycoeff[4]*x_orig)**2 * ye_orig**2 ) + + if vel: + vx_new = Xcoeff[1]*vx_orig + 2*Xcoeff[3]*x_orig*vx_orig + Xcoeff[2]*vy_orig + \ + 2.*Xcoeff[5]*y_orig*vy_orig + Xcoeff[4]*(x_orig*vy_orig + vx_orig*y_orig) + + vy_new = Ycoeff[1]*vx_orig + 2*Ycoeff[3]*x_orig*vx_orig + Ycoeff[2]*vy_orig + \ + 2.*Ycoeff[5]*y_orig*vy_orig + Ycoeff[4]*(x_orig*vy_orig + vx_orig*y_orig) + + vxe_new = np.sqrt( (Xcoeff[1] + 2*Xcoeff[3]*x_orig + Xcoeff[4]*y_orig)**2 * vxe_orig**2 + \ + (Xcoeff[2] + 2*Xcoeff[5]*y_orig + Xcoeff[4]*x_orig)**2 * vye_orig**2 + \ + (2*Xcoeff[3]*vx_orig + Xcoeff[4]*vy_orig)**2 * xe_orig**2 + \ + (2*Xcoeff[5]*vy_orig + Xcoeff[4]*vx_orig)**2 * ye_orig**2 ) + + vye_new = np.sqrt( (Ycoeff[1] + 2*Ycoeff[3]*x_orig + Ycoeff[4]*y_orig)**2 * vxe_orig**2 + \ + (Ycoeff[2] + 2*Ycoeff[5]*y_orig + Ycoeff[4]*x_orig)**2 * vye_orig**2 + \ + (2*Ycoeff[3]*vx_orig + Ycoeff[4]*vy_orig)**2 * xe_orig**2 + \ + (2*Ycoeff[5]*vy_orig + Ycoeff[4]*vx_orig)**2 * ye_orig**2 ) + """ + #Update transformed coords to copy of astropy table + starlist_f['x'] = x_new + starlist_f['y'] = y_new + starlist_f['xe'] = xe_new + starlist_f['ye'] = ye_new + + if vel: + starlist_f['x0'] = x0_new + starlist_f['y0'] = y0_new + starlist_f['x0_err'] = x0e_new + starlist_f['y0_err'] = y0e_new + starlist_f['vx'] = vx_new + starlist_f['vy'] = vy_new + starlist_f['vx_err'] = vxe_new + starlist_f['vy_err'] = vye_new + + return starlist_f + +def transform_pos_from_file(Xcoeff, Ycoeff, order, x_orig, y_orig): + """ + Given the read-in coefficients from transform_from_file, apply the + transformation to the observed positions. This is generalized to + work with any order polynomial transform. + + WARNING: THIS CODE WILL NOT WORK FOR LEGENDRE POLYNOMIAL + TRANSFORMS + + Parameters: + ---------- + Xcoeff: Array + Array with the coefficients of the X pos transformation + + Ycoeff: Array + Array with the coefficients of the Y pos transformation + + order: int + Order of transformation + + x_orig: array + Array with the original X positions + + y_orig: array + Array with the original Y positions + + Output: + ------ + x_new: array + Transformed X positions + + y_new: array + Transformed Y positions + + """ + idx = 0 # coeff index + x_new = 0.0 + y_new = 0.0 + for i in range(order+1): + for j in range(i+1): + x_new += Xcoeff[idx] * x_orig**(i-j) * y_orig**j + y_new += Ycoeff[idx] * x_orig**(i-j) * y_orig**j + + idx += 1 + + return x_new, y_new + +def transform_poserr_from_file(Xcoeff, Ycoeff, order, xe_orig, ye_orig, x_orig, y_orig): + """ + Given the read-in coefficients from transform_from_file, apply the + transformation to the observed position errors. This is generalized to + work with any order transform. + + WARNING: THIS CODE WILL NOT WORK FOR LEGENDRE POLYNOMIAL + TRANSFORMS + + Parameters: + ---------- + Xcoeff: Array + Array with the coefficients of the X pos transformation + + Ycoeff: Array + Array with the coefficients of the Y pos transformation + + order: int + Order of transformation + + xe_orig: array + Array with the original X position errs + + ye_orig: array + Array with the original Y position errs + + x_orig: array + Array with the original X positions + + y_orig: array + Array with the original Y positions + + Output: + ------ + xe_new: array + Transformed X position errs + + ye_new: array + Transformed Y position errs + """ + idx = 0 # coeff index + xe_new_tmp1 = 0.0 + ye_new_tmp1 = 0.0 + xe_new_tmp2 = 0.0 + ye_new_tmp2 = 0.0 + + # First loop: dx'/dx + for i in range(order+1): + for j in range(i+1): + xe_new_tmp1 += Xcoeff[idx] * (i - j) * x_orig**(i-j-1) * y_orig**j + ye_new_tmp1 += Ycoeff[idx] * (i - j) * x_orig**(i-j-1) * y_orig**j + + idx += 1 + + # Second loop: dy'/dy + idx = 0 # coeff index + for i in range(order+1): + for j in range(i+1): + xe_new_tmp2 += Xcoeff[idx] * (j) * x_orig**(i-j) * y_orig**(j-1) + ye_new_tmp2 += Ycoeff[idx] * (j) * x_orig**(i-j) * y_orig**(j-1) + + idx += 1 + # Take square root for xe/ye_new + xe_new = np.sqrt((xe_new_tmp1 * xe_orig)**2 + (xe_new_tmp2 * ye_orig)**2) + ye_new = np.sqrt((ye_new_tmp1 * ye_orig)**2 + (ye_new_tmp2 * ye_orig)**2) + + return xe_new, ye_new + +def transform_vel_from_file(Xcoeff, Ycoeff, order, vx_orig, vy_orig, x_orig, y_orig): + """ + Given the read-in coefficients from transform_from_file, apply the + transformation to the observed proper motions. This is generalized to + work with any order transform. + + WARNING: THIS CODE WILL NOT WORK FOR LEGENDRE POLYNOMIAL + TRANSFORMS + + Parameters: + ---------- + Xcoeff: Array + Array with the coefficients of the X pos transformation + + Ycoeff: Array + Array with the coefficients of the Y pos transformation + + order: int + Order of transformation + + vx_orig: array + Array with the original X proper motions + + vy_orig: array + Array with the original Y proper motions + + x_orig: array + Array with the original X positions + + y_orig: array + Array with the original Y positions + + Output: + ------ + vx_new: array + Transformed X proper motions + + vy_new: array + Transformed Y proper motions + """ + idx = 0 # coeff index + vx_new = 0.0 + vy_new = 0.0 + # First loop: dx'/dx + for i in range(order+1): + for j in range(i+1): + vx_new += Xcoeff[idx] * (i - j) * x_orig**(i-j-1) * y_orig**j * vx_orig + vy_new += Ycoeff[idx] * (i - j) * x_orig**(i-j-1) * y_orig**j * vx_orig + + idx += 1 + # Second loop: dy'/dy + idx = 0 # coeff index + for i in range(order+1): + for j in range(i+1): + vx_new += Xcoeff[idx] * (j) * x_orig**(i-j) * y_orig**(j-1) * vy_orig + vy_new += Ycoeff[idx] * (j) * x_orig**(i-j) * y_orig**(j-1) * vy_orig + + idx += 1 + + return vx_new, vy_new + +def transform_velerr_from_file(Xcoeff, Ycoeff, order, vxe_orig, vye_orig, vx_orig, + vy_orig, xe_orig, ye_orig, x_orig, y_orig): + """ + Given the read-in coefficients from transform_from_file, apply the + transformation to the observed proper motion errors. This is generalized to + work with any order transform. + + WARNING: THIS CODE WILL NOT WORK FOR LEGENDRE POLYNOMIAL + TRANSFORMS + + Parameters: + ---------- + Xcoeff: Array + Array with the coefficients of the X pos transformation + + Ycoeff: Array + Array with the coefficients of the Y pos transformation + + order: int + Order of transformation + + vxe_orig: array + Array with the original X proper motion errs + + vye_orig: array + Array with the original Y proper motion errs + + vx_orig: array + Array with the original X proper motions + + vy_orig: array + Array with the original Y proper motions + + xe_orig: array + Array with the original X position errs + + ye_orig: array + Array with the original Y position errs + + x_orig: array + Array with the original X positions + + y_orig: array + Array with the original Y positions + + Output: + ------ + vxe_new: array + Transformed X proper motion errs + + vye_new: array + Transformed Y proper motion errs + """ + idx = 0 + vxe_new_tmp1 = 0.0 + vye_new_tmp1 = 0.0 + vxe_new_tmp2 = 0.0 + vye_new_tmp2 = 0.0 + vxe_new_tmp3 = 0.0 + vye_new_tmp3 = 0.0 + vxe_new_tmp4 = 0.0 + vye_new_tmp4 = 0.0 + + + # First loop: dvx' / dx + for i in range(order+1): + for j in range(i+1): + vxe_new_tmp1 += Xcoeff[idx] * (i-j) * (i-j-1) * x_orig**(i-j-2) * y_orig**j * vx_orig + vxe_new_tmp1 += Xcoeff[idx] * (j) * (i-j) * x_orig**(i-j-1) * y_orig**(j-1) * vy_orig + vye_new_tmp1 += Ycoeff[idx] * (i-j) * (i-j-1) * x_orig**(i-j-2) * y_orig**j * vx_orig + vye_new_tmp1 += Ycoeff[idx] * (j) * (i-j) * x_orig**(i-j-1) * y_orig**(j-1) * vy_orig + + idx += 1 + + # Second loop: dvx' / dy + idx = 0 + for i in range(order+1): + for j in range(i+1): + vxe_new_tmp2 += Xcoeff[idx] * (i-j) * (j) * x_orig**(i-j-1) * y_orig**(j-1) * vx_orig + vxe_new_tmp2 += Xcoeff[idx] * (j) * (j-1) * x_orig**(i-j-1) * y_orig**(j-2) * vy_orig + vye_new_tmp2 += Ycoeff[idx] * (i-j) * (j) * x_orig**(i-j-1) * y_orig**(j-1) * vx_orig + vye_new_tmp2 += Ycoeff[idx] * (j) * (j-1) * x_orig**(i-j-1) * y_orig**(j-2) * vy_orig + + idx += 1 + + # Third loop: dvx' / dvx + idx = 0 + for i in range(order+1): + for j in range(i+1): + vxe_new_tmp3 += Xcoeff[idx] * (i-j) * x_orig**(i-j-1) * y_orig**j + vye_new_tmp3 += Ycoeff[idx] * (i-j) * x_orig**(i-j-1) * y_orig**j + + idx += 1 + + # Fourth loop: dvx' / dvy + idx = 0 + for i in range(order+1): + for j in range(i+1): + vxe_new_tmp4 += Xcoeff[idx] * (j) * x_orig**(i-j) * y_orig**(j-1) + vye_new_tmp4 += Ycoeff[idx] * (j) * x_orig**(i-j) * y_orig**(j-1) + + idx += 1 + + vxe_new = np.sqrt((vxe_new_tmp1 * xe_orig)**2 + (vxe_new_tmp2 * ye_orig)**2 + \ + (vxe_new_tmp3 * vxe_orig)**2 + (vxe_new_tmp4 * vye_orig)**2) + vye_new = np.sqrt((vye_new_tmp1 * xe_orig)**2 + (vye_new_tmp2 * ye_orig)**2 + \ + (vye_new_tmp3 * vxe_orig)**2 + (vye_new_tmp4 * vye_orig)**2) + + return vxe_new, vye_new + + + + + + +""" +Old functions with things hard-coded for OB120169 """ def run_align_iter(catalog, trans_order=1, poly_deg=1, ref_mag_lim=19, ref_radius_lim=300): From dbdbde4e54a388945a05b91abdee4a38f1a7a376 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 2 Dec 2024 14:21:07 -0800 Subject: [PATCH 020/124] progress on parallax model, exception in transforms for complex motion --- flystar/align.py | 3 +- flystar/motion_model.py | 115 ++++++++++++-- flystar/parallax.py | 322 ++++++++++++++++++++++++++++++++++++++++ flystar/transforms.py | 23 ++- 4 files changed, 445 insertions(+), 18 deletions(-) create mode 100755 flystar/parallax.py diff --git a/flystar/align.py b/flystar/align.py index 1609719..4c39707 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -1996,7 +1996,6 @@ def transform_and_match(table1, table2, transform, dr_tol=1.0, dm_tol=None, verb y2 = table2['y'] m2 = table2['m'] - # Transform x, y coordinates from starlist 1 into starlist 2 x1t, y1t = transform.evaluate(x1, y1) @@ -2394,7 +2393,7 @@ def transform_from_object(starlist, transform): # Check to see if velocities or motion_model are present in starlist. vel = ('vx' in keys)and ~("motion_model_assigned" in keys) mot = ("motion_model_assigned" in keys) - # If the only motion models used are Fixed and Linear, we can still use the older, faster code. + # If the only motion models used are Fixed and Linear, we can still transform velocities. if mot: motion_models_unique = list(np.unique(starlist_f['motion_model_assigned'])) if 'Linear' in motion_models_unique: diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 960af5d..f9da0cf 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -2,6 +2,9 @@ import numpy as np from abc import ABC import pdb +from flystar import parallax +from astropy.time import Time +from scipy.optimize import minimize class MotionModel(ABC): # Number of data points required to fit model @@ -52,17 +55,6 @@ def fit_motion_model(self, t, x, y, xe, ye, update=True): """ #return params, param_errors pass - - def get_chi2(self,dt,x,y,xe,ye): - """ - Get the chi^2 value for the current MM and - the input data. - """ - # TODO: confirm whether we want reduced chi^2 or anything special - maybe kwarg option - x_pred,y_pred = self.get_pos_at_time(dt) - chi2x = np.sum((x-x_pred)**2 / xe**2) - chi2y = np.sum((y-y_pred)**2 / ye**2) - return chi2x,chi2y class Fixed(MotionModel): """ @@ -98,7 +90,7 @@ def get_batch_pos_at_time(self,t, x0_err=[], y0_err=[]): return x0,y0,x0_err,y0_err - def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): + def fit_motion_model(self, dt, x, y, xe, ye, update=True, bootstrap=0): # Handle single data point case if len(x)==1: return [x[0],y[0]],[xe[0],ye[0]] @@ -171,7 +163,7 @@ def get_batch_pos_at_time(self,t, y_err = np.hypot(y0_err, vy_err*dt) return x,y,x_err,y_err - def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): + def fit_motion_model(self, dt, x, y, xe, ye, update=True, bootstrap=0): fitter = fitting.LevMarLSQFitter() # Handle 2-data point case @@ -313,7 +305,7 @@ def get_batch_pos_at_time(self,t, y_err = np.sqrt(y0_err**2 + (vy0_err*dt)**2 + (0.5*ay_err*dt**2)**2) return x,y,x_err,y_err - def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): + def fit_motion_model(self, dt, x, y, xe, ye, update=True, bootstrap=0): fitter = fitting.LevMarLSQFitter() px_new = fitter(self.px, dt, x, weights=1/xe) @@ -394,6 +386,101 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=False, bootstrap=0): return params, param_errors +class Parallax(MotionModel): + """ + Motion model for linear proper motion + parallax + """ + n_pts_req = 5 + # TODO: did we count dofs properly in previous ones? (incl. x0 and y0) + dof=5 + fitter_param_names = ['x0', 'vx', 'y0', 'vy', 'pi'] + fixed_param_names = ['t0', 'RA','Dec','obs'] + + def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025.0, + x0_err=0, vx_err=0, y0_err=0, vy_err=0, + pi=0, pi_err=0, + RA=None, Dec=None, obs='earth'): + self.x0 = x0 + self.vx = vx + self.y0 = y0 + self.vy = vy + self.t0 = t0 + self.x0_err = x0_err + self.vx_err = vx_err + self.y0_err = y0_err + self.vy_err = vy_err + self.pi = pi + self.pi_err = pi_err + self.RA = RA + self.Dec = Dec + self.obs = obs + return + + def get_pos_at_time(self, t): + t_mjd = Time(t, format='decimalyear', scale='utc').mjd + pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs).T + # TODO: need to confirm x-e orientation + x = self.x0 + self.vx*(t-self.t0) + self.pi*pvec[0] + y = self.y0 + self.vy*(t-self.t0) + self.pi*pvec[1] + return x, y + + def get_pos_err_at_time(self, t): + t_mjd = Time(t, format='decimalyear', scale='utc').mjd + pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs).T + x_err = np.sqrt(self.y0_err**2 + ((t-self.t0)*self.vx_err)**2 + (self.pi_err*pvec[0])**2) + y_err = np.sqrt(self.x0_err**2 + ((t-self.t0)*self.vy_err)**2 + (self.pi_err*pvec[1])**2) + return x_err, y_err + + def get_batch_pos_at_time(self, t): + #return x, y, x_err, y_err + pass + + def fit_motion_model(self, t, x, y, xe, ye, update=True,method='Nelder-Mead'): + t_mjd = Time(t, format='decimalyear', scale='utc').mjd + pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs).T + def fit_func(params): + x0,y0, vx,vy, pi = params + x_res = x0 + vx*(t-self.t0) + pi*pvec[0] + y_res = y0 + vy*(t-self.t0) + pi*pvec[1] + chi2 = np.sum((x-x_res)**2/xe**2 + (y-y_res)**2/ye**2) + return chi2 + # Initial guesses, x0,y0 as x,y averages; + # vx,vy as average velocity if first and last points are perfectly measured; + # pi for 10 pc disance + res = minimize(fit_func, x0=[np.mean(x),np.mean(y), (x[-1]-x[0])/(t[-1]-t[0]),(y[-1]-y[0])/(t[-1]-t[0]), 1], + method = method) + print(res) + if res.success: + x0,y0,vx,vy,pi = res.x + if update: + self.x0 = x0 + self.y0=y0 + self.vx=vx + self.vy=vy + self.pi=pi + return res + else: + print('failed') + if update: + self.x0 = 0 + self.y0=0 + self.vx=0 + self.vy=0 + self.pi=0 + + def get_chi2(self,dt,x,y,xe,ye): + """ + Get the chi^2 value for the current MM and + the input data. + """ + # TODO: confirm whether we want reduced chi^2 or anything special - maybe kwarg option + x_pred,y_pred = self.get_pos_at_time(dt) + chi2x = np.sum((x-x_pred)**2 / xe**2) + chi2y = np.sum((y-y_pred)**2 / ye**2) + return chi2x,chi2y + + + """ Get all the motion model parameters for a given motion_model_name. Optionally, include fixed and error parameters (included by default). diff --git a/flystar/parallax.py b/flystar/parallax.py new file mode 100755 index 0000000..fff5026 --- /dev/null +++ b/flystar/parallax.py @@ -0,0 +1,322 @@ +import math + +import numpy as np +from joblib import Memory +import os +from astropy import units, units as u +from astropy.coordinates import SkyCoord, get_body_barycentric, get_body_barycentric_posvel, solar_system_ephemeris, \ + CartesianRepresentation +from astropy.time import Time + +# Use the JPL ephemerides. +solar_system_ephemeris.set('jpl') + +# Setup a parallax cache +try: + cache_dir = os.environ['PARALLAX_CACHE_DIR'] +except: + cache_dir = os.path.dirname(__file__) + '/parallax_cache/' +cache_memory = Memory(cache_dir, verbose=0, bytes_limit='1G') +# Default cache size is 1 GB +cache_memory.reduce_size() + +@cache_memory.cache() +def parallax_in_direction(RA, Dec, mjd, obsLocation='earth'): + """ + | R.A. in degrees. (J2000) + | Dec. in degrees. (J2000) + | MJD + + Equations following MulensModel. + """ + #print('parallax_in_direction: len(t) = ', len(mjd)) + + # Munge inputs into astropy format. + times = Time(mjd + 2400000.5, format='jd', scale='tdb') + coord = SkyCoord(RA, Dec, unit=(units.deg, units.deg)) + + direction = coord.cartesian.xyz.value + north = np.array([0., 0., 1.]) + _east_projected = np.cross(north, direction) / np.linalg.norm(np.cross(north, direction)) + _north_projected = np.cross(direction, _east_projected) / np.linalg.norm(np.cross(direction, _east_projected)) + + obs_pos = get_observer_barycentric(obsLocation, times) + sun_pos = get_body_barycentric(body='sun', time=times) + + sun_obs_pos = sun_pos - obs_pos + + pos = sun_obs_pos.xyz.T.to(units.au) + + e = np.dot(pos, _east_projected) + n = np.dot(pos, _north_projected) + + pvec = np.array([e.value, n.value]).T + + return pvec + + +def dparallax_dt_in_direction(RA, Dec, mjd, obsLocation='earth'): + """ + R.A. in degrees. (J2000) + Dec. in degrees. (J2000) + MJD + + Equations following MulensModel. + Time derivative --> units are yr^-1 + + """ + # print('parallax_in_direction: len(t) = ', len(mjd)) + # Munge inputs into astropy format. + times = Time(mjd + 2400000.5, format='jd', scale='tdb') + coord = SkyCoord(RA, Dec, unit=(units.deg, units.deg)) + + direction = coord.cartesian.xyz.value + north = np.array([0., 0., 1.]) + _east_projected = np.cross(north, direction) / np.linalg.norm(np.cross(north, direction)) + _north_projected = np.cross(direction, _east_projected) / np.linalg.norm(np.cross(direction, _east_projected)) + + obs_posvel = get_observer_barycentric(obsLocation, times, velocity=True)[1] + sun_posvel = get_body_barycentric_posvel('Sun', times)[1] + sun_obs_vel = sun_posvel - obs_posvel + vel = sun_obs_vel.xyz.T.to(units.au / units.year) + + e = np.dot(vel, _east_projected) + n = np.dot(vel, _north_projected) + + dpvec_dt = np.array([e.value, n.value]).T + + return dpvec_dt + + +def get_observer_barycentric(body, times, min_ephem_step=1, velocity=False): + """ + Get the barycentric position of a satellite or other Solar System body + using JPL emphemerides through the Horizon app. + + The ephemeris is queried at a decimated time step set by min_ephem_step + (def=1 day) that must be 1 day or larger. The positions + (and optionally velocities) are then interpolated onto the desired + time array. + + Inputs + ------ + body : str + The name of the Solar System body. Must use the JPL Horizon + naming scheme. + + times : astropy.time.Time array + Array of times (astropy.time.core.Time) objects at which to + fetch the position of the specified Solar System body. + + Optional Inputs + --------------- + min_ephem_step : int + Minimum time step to query JPL in days. Must not be <1 and must + be in integer days. + + veloctiy : bool + If true, return both position and velocity vectors over time. + + Return + ------ + coord : astropy.coordinates.CartesianRepresentation + The xyz coordinates in the plane of the Solar System at the + input times. + """ + + if body in solar_system_ephemeris.bodies: + if velocity: + obs_pos, obs_vel = get_body_barycentric_posvel(body=body, time=times) + else: + obs_pos = get_body_barycentric(body=body, time=times) + else: + # Figure out a cadence for the ephemerides, not smaller than 1 day. + dt = np.median(np.diff(times)).jd + if dt < min_ephem_step: + dt = min_ephem_step + + # Get the date range, add some padding on each side. + t_min = times.min() + t_max = times.max() + t_min.format = 'iso' + t_max.format = 'iso' + t_min = str(t_min - dt*u.day).split()[0] + t_max = str(t_max + dt*u.day).split()[0] + step = f'{dt:.0f}d' + + # Fetch the Horizons ephemeris. + from astroquery.jplhorizons import Horizons + obj = Horizons(id=body, epochs={'start':t_min, 'stop':t_max, 'step':step}) + obj_data = obj.vectors() + + ephem_jd = obj_data['datetime_jd'] + + # Interpolate to the actual time array. + obj_x_at_t = np.interp(times.jd, ephem_jd, obj_data['x'].to('km')) * u.km + obj_y_at_t = np.interp(times.jd, ephem_jd, obj_data['y'].to('km')) * u.km + obj_z_at_t = np.interp(times.jd, ephem_jd, obj_data['z'].to('km')) * u.km + + if velocity: + obj_vx_at_t = np.interp(times.jd, ephem_jd, obj_data['vx'].to('km/s')) * u.km / u.s + obj_vy_at_t = np.interp(times.jd, ephem_jd, obj_data['vy'].to('km/s')) * u.km / u.s + obj_vz_at_t = np.interp(times.jd, ephem_jd, obj_data['vz'].to('km/s')) * u.km / u.s + + obs_vel = CartesianRepresentation(obj_vx_at_t, obj_vy_at_t, obj_vz_at_t) + + obs_pos = CartesianRepresentation(obj_x_at_t, obj_y_at_t, obj_z_at_t) + + if velocity: + return (obs_pos, obs_vel) + else: + return obs_pos + + +def sun_position(mjd, radians=False): + """ + + NAME: + SUNPOS + + PURPOSE: + To compute the RA and Dec of the Sun at a given date. + + INPUTS: + mjd - The modified Julian date of the day (and time), scalar or vector + + OUTPUTS: + ra: + | The right ascension of the sun at that date in DEGREES + | double precision, same number of elements as jd + dec: + The declination of the sun at that date in DEGREES + elong: + Ecliptic longitude of the sun at that date in DEGREES. + obliquity: + the obliquity of the ecliptic, in DEGREES + + OPTIONAL INPUT KEYWORD: + RADIAN [def=False] - If this keyword is set to True, then all output variables + are given in Radians rather than Degrees + + NOTES: + Patrick Wallace (Rutherford Appleton Laboratory, UK) has tested the + accuracy of a C adaptation of the sunpos.pro code and found the + following results. From 1900-2100 SUNPOS gave 7.3 arcsec maximum + error, 2.6 arcsec RMS. Over the shorter interval 1950-2050 the figures + were 6.4 arcsec max, 2.2 arcsec RMS. + + The returned RA and Dec are in the given date's equinox. + + Procedure was extensively revised in May 1996, and the new calling + sequence is incompatible with the old one. + METHOD: + Uses a truncated version of Newcomb's Sun. Adapted from the IDL + routine SUN_POS by CD Pike, which was adapted from a FORTRAN routine + by B. Emerson (RGO). + EXAMPLE: + (1) Find the apparent RA and Dec of the Sun on May 1, 1982 + + | IDL> jdcnv, 1982, 5, 1,0 ,jd ;Find Julian date jd = 2445090.5 + | IDL> sunpos, jd, ra, dec + | IDL> print,adstring(ra,dec,2) + | 02 31 32.61 +14 54 34.9 + + The Astronomical Almanac gives 02 31 32.58 +14 54 34.9 so the error + in SUNPOS for this case is < 0.5". + + (2) Find the apparent RA and Dec of the Sun for every day in 1997 + + | IDL> jdcnv, 1997,1,1,0, jd ;Julian date on Jan 1, 1997 + | IDL> sunpos, jd+ dindgen(365), ra, dec ;RA and Dec for each day + + MODIFICATION HISTORY: + + * Written by Michael R. Greason, STX, 28 October 1988. + * Accept vector arguments, W. Landsman - April,1989 + * Eliminated negative right ascensions - MRG, Hughes STX, 6 May 1992. + * Rewritten using the 1993 Almanac. Keywords added. MRG, HSTX, 10 February 1994. + * Major rewrite, improved accuracy, always return values in degrees - W. Landsman May, 1996 + * Added /RADIAN keyword; W. Landsman; August, 1997 + * Converted to IDL V5.0; W. Landsman; September 1997 + * Converted to python; J. R. Lu; August 2016 + """ + # form time in Julian centuries from 1900.0 + t_obj = Time(mjd, format='mjd') + t = (t_obj.jd - 2415020.0) / 36525.0 + + # form sun's mean longitude + l = (279.696678 + ((36000.768925 * t) % 360.0)) * 3600.0 + + # allow for ellipticity of the orbit (equation of centre) + # using the Earth's mean anomaly ME + me = 358.475844 + ((35999.049750 * t) % 360.0) + ellcor = (6910.1 - 17.2 * t) * np.sin(np.radians(me)) + 72.3 * np.sin( + np.radians(2.0 * me)) + l = l + ellcor + + # allow for the Venus perturbations using the mean anomaly of Venus MV + mv = 212.603219 + ((58517.803875 * t) % 360.0) + vencorr = 4.8 * np.cos(np.radians(299.1017 + mv - me)) + \ + 5.5 * np.cos(np.radians(148.3133 + 2.0 * mv - 2.0 * me)) + \ + 2.5 * np.cos(np.radians(315.9433 + 2.0 * mv - 3.0 * me)) + \ + 1.6 * np.cos(np.radians(345.2533 + 3.0 * mv - 4.0 * me)) + \ + 1.0 * np.cos(np.radians(318.1500 + 3.0 * mv - 5.0 * me)) + l += vencorr + + # Allow for the Mars perturbations using the mean anomaly of Mars MM + mm = 319.529425 + ((19139.858500 * t) % 360.0) + marscorr = 2.0 * np.cos(np.radians(343.8883 - 2.0 * mm + 2.0 * me)) + \ + 1.8 * np.cos(np.radians(200.4017 - 2.0 * mm + me)) + l += marscorr + + # Allow for the Jupiter perturbations using the mean anomaly of Jupiter MJ + mj = 225.328328 + ((3034.6920239 * t) % 360.0) + jupcorr = 7.2 * np.cos(np.radians(179.5317 - mj + me)) + \ + 2.6 * np.cos(np.radians(263.2167 - mj)) + \ + 2.7 * np.cos(np.radians(87.1450 - 2.0 * mj + 2.0 * me)) + \ + 1.6 * np.cos(np.radians(109.4933 - 2.0 * mj + me)) + l += jupcorr + + # Allow for the Moons perturbations using the mean elongation of + # the Moon from the Sun D + d = 350.7376814 + ((445267.11422 * t) % 360.0) + mooncorr = 6.5 * np.sin(np.radians(d)) + l += mooncorr + + # Allow for long period terms + longterm = + 6.4 * np.sin(np.radians(231.19 + 20.20 * t)) + l += longterm + l = (l + 2592000.0) % 1296000.0 + longmed = l / 3600.0 + + # Allow for Aberration + l -= 20.5 + + # Allow for Nutation using the longitude of the Moons mean node OMEGA + omega = 259.183275 - ((1934.142008 * t) % 360.0) + l -= 17.2 * np.sin(np.radians(omega)) + + # Form the True Obliquity + oblt = 23.452294 - 0.0130125 * t + ( + 9.2 * np.cos(np.radians(omega))) / 3600.0 + + # Form Right Ascension and Declination + l = l / 3600.0 + l_rad = np.radians(l) + oblt_rad = np.radians(oblt) + ra = np.arctan2(np.sin(l_rad) * np.cos(oblt_rad), np.cos(l_rad)) + + if (len(ra) > 1): + neg = np.where(ra < 0.0)[0] + ra[neg] = ra[neg] + 2.0 * math.pi + + dec = np.arcsin(np.sin(l_rad) * np.sin(oblt_rad)) + + if radians: + oblt = oblt_rad + longmed = np.radians(longmed) + else: + ra = np.degrees(ra) + dec = np.degrees(dec) + + return ra, dec, longmed, oblt diff --git a/flystar/transforms.py b/flystar/transforms.py index 7de327e..1ed7cd0 100755 --- a/flystar/transforms.py +++ b/flystar/transforms.py @@ -6,6 +6,7 @@ import collections import re import pdb +from flystar import motion_model class Transform2D(object): ''' @@ -112,8 +113,26 @@ def evaluate_starlist(self, star_list): new_list['xe'] = vals[0] new_list['ye'] = vals[1] - # Velocities (if they exist) - if 'vx' in new_list.colnames: + # Velocities (if they exist and no more complex motion model used) + complex_motion_model = ('motion_model_assigned' in new_list.colnames) + if complex_motion_model: + # If the only motion models used are Fixed and Linear, we can still transform velocities. + motion_models_unique = list(np.unique(starlist_f['motion_model_assigned'])) + if 'Linear' in motion_models_unique: + motion_models_unique.remove('Linear') + if 'Fixed' in motion_models_unique: + motion_models_unique.remove('Fixed') + if len(motion_models_unique)==0: + complex_motion_model=False + # Cannot transform more complex motion models - set values to nan + if complex_motion_model: + motion_params = motion_model.get_list_motion_model_param_names(new_list['motion_model_assigned'], with_errors=True, with_fixed=False) + for param in motion_params: + if param in new_list.colnames: + new_list[param] = np.nan + + if ('vx' in new_list.colnames) and (not complex_motion_model): + # For velocity only, no problem vals = self.evaluate_vel(star_list['x'], star_list['y'], star_list['vx'], star_list['vy']) new_list['vx'] = vals[0] From 34c2dcc48296c6d52f6f46e516a7e33ae093e3c3 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 2 Dec 2024 14:31:00 -0800 Subject: [PATCH 021/124] progress on parallax model, exception in transforms for complex motion --- flystar/align.py | 93 +++++++++++++++++++++--------------------------- 1 file changed, 40 insertions(+), 53 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 4c39707..6ac1dfa 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -2406,65 +2406,52 @@ def transform_from_object(starlist, transform): # Prior code before motion_model implementation # Can still be used as shortcut for Linear+Fixed motion_model only + err = 'xe' in keys + + # Extract needed information from starlist + x = starlist_f['x'] + y = starlist_f['y'] + + if err: + xe = starlist_f['xe'] + ye = starlist_f['ye'] + if vel: - err = 'xe' in keys + x0 = starlist_f['x0'] + y0 = starlist_f['y0'] + x0e = starlist_f['x0_err'] + y0e = starlist_f['y0_err'] + vx = starlist_f['vx'] + vy = starlist_f['vy'] + vxe = starlist_f['vx_err'] + vye = starlist_f['vy_err'] - # Extract needed information from starlist - x = starlist_f['x'] - y = starlist_f['y'] - - if err: - xe = starlist_f['xe'] - ye = starlist_f['ye'] - - if vel: - x0 = starlist_f['x0'] - y0 = starlist_f['y0'] - x0e = starlist_f['x0_err'] - y0e = starlist_f['y0_err'] - vx = starlist_f['vx'] - vy = starlist_f['vy'] - vxe = starlist_f['vx_err'] - vye = starlist_f['vy_err'] - - # calculate the transformed position and velocity - - # (x_new, y_new, xe_new, ye_new) in (x,y) - x_new, y_new, xe_new, ye_new = position_transform_from_object(x, y, xe, ye, transform) + # calculate the transformed position and velocity + x_new, y_new, xe_new, ye_new = position_transform_from_object(x, y, xe, ye, transform) - - if vel: - # (x0_new, y0_new, x0e_new, y0e_new) in (x0, y0, x0e, y0e) - x0_new, y0_new, x0e_new, y0e_new = position_transform_from_object(x0, y0, x0e, y0e, transform) - # (vx_new, vy_new, vxe_new, vye_new) in (x0, y0, x0e, y0e, vx, vy, vxe, vye) - vx_new, vy_new, vxe_new, vye_new = velocity_transform_from_object(x0, y0, x0e, y0e, vx, vy, vxe, vye, transform) - - # update transformed coords to copy of astropy table - starlist_f['x'] = x_new - starlist_f['y'] = y_new - starlist_f['xe'] = xe_new - starlist_f['ye'] = ye_new - - if vel: - starlist_f['x0'] = x0_new - starlist_f['y0'] = y0_new - starlist_f['x0_err'] = x0e_new - starlist_f['y0_err'] = y0e_new - starlist_f['vx'] = vx_new - starlist_f['vy'] = vy_new - starlist_f['vx_err'] = vxe_new - starlist_f['vy_err'] = vye_new + if vel: + x0_new, y0_new, x0e_new, y0e_new = position_transform_from_object(x0, y0, x0e, y0e, transform) + vx_new, vy_new, vxe_new, vye_new = velocity_transform_from_object(x0, y0, x0e, y0e, vx, vy, vxe, vye, transform) + + # update transformed coords to copy of astropy table + starlist_f['x'] = x_new + starlist_f['y'] = y_new + starlist_f['xe'] = xe_new + starlist_f['ye'] = ye_new + + if vel: + starlist_f['x0'] = x0_new + starlist_f['y0'] = y0_new + starlist_f['x0_err'] = x0e_new + starlist_f['y0_err'] = y0e_new + starlist_f['vx'] = vx_new + starlist_f['vy'] = vy_new + starlist_f['vx_err'] = vxe_new + starlist_f['vy_err'] = vye_new # For more complicated motion_models, - # We can't easily transform them, set the values to nans and refit later + # we can't easily transform them, set the values to nans and refit later. if mot: - # Transform positions - x_new, y_new, xe_new, ye_new = position_transform_from_object(x, y, xe, ye, transform) - starlist_f['x'] = x_new - starlist_f['y'] = y_new - starlist_f['xe'] = xe_new - starlist_f['ye'] = ye_new - motion_model_params = motion_model.get_all_motion_model_param_names() for param in motion_model_params: if param in keys: From 58ae5ab850878d1280d4403847f806b0ef403fc6 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 2 Dec 2024 17:30:04 -0800 Subject: [PATCH 022/124] parallax fitter working --- flystar/align.py | 4 +--- flystar/motion_model.py | 48 ++++++++++++++++++++--------------------- 2 files changed, 24 insertions(+), 28 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 6ac1dfa..ab0fd06 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -2511,10 +2511,9 @@ def position_transform_from_object(x, y, xe, ye, transform): for j in range(1, N+2-i): sub = int(2*N + 2 + j + (2*N+2-i) * (i-1)/2.) y_new += Ycoeff[sub] * (x**i) * (y**j) - """ - THIS IS WRONG BELOW! + THIS IS WRONG BELOW! - NOTE: I don't think this is wrong any more Currently doing: ((A + B + C) * xe)**2 @@ -2659,7 +2658,6 @@ def velocity_transform_from_object(x0, y0, x0e, y0e, vx, vy, vxe, vye, transform vxe_new = np.sqrt((temp1*x0e)**2 + (temp2*y0e)**2 + (temp3*vxe)**2 + (temp4*vye)**2) - vye_new = 0 temp1 = 0 temp2 = 0 diff --git a/flystar/motion_model.py b/flystar/motion_model.py index f9da0cf..18436a4 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -4,7 +4,7 @@ import pdb from flystar import parallax from astropy.time import Time -from scipy.optimize import minimize +from scipy.optimize import minimize,curve_fit class MotionModel(ABC): # Number of data points required to fit model @@ -438,35 +438,33 @@ def get_batch_pos_at_time(self, t): def fit_motion_model(self, t, x, y, xe, ye, update=True,method='Nelder-Mead'): t_mjd = Time(t, format='decimalyear', scale='utc').mjd pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs).T - def fit_func(params): - x0,y0, vx,vy, pi = params + def fit_func(t, x0,y0, vx,vy, pi): x_res = x0 + vx*(t-self.t0) + pi*pvec[0] y_res = y0 + vy*(t-self.t0) + pi*pvec[1] - chi2 = np.sum((x-x_res)**2/xe**2 + (y-y_res)**2/ye**2) - return chi2 + diff = (x-x_res)**2/xe**2 + (y-y_res)**2/ye**2 + return diff # Initial guesses, x0,y0 as x,y averages; # vx,vy as average velocity if first and last points are perfectly measured; # pi for 10 pc disance - res = minimize(fit_func, x0=[np.mean(x),np.mean(y), (x[-1]-x[0])/(t[-1]-t[0]),(y[-1]-y[0])/(t[-1]-t[0]), 1], - method = method) - print(res) - if res.success: - x0,y0,vx,vy,pi = res.x - if update: - self.x0 = x0 - self.y0=y0 - self.vx=vx - self.vy=vy - self.pi=pi - return res - else: - print('failed') - if update: - self.x0 = 0 - self.y0=0 - self.vx=0 - self.vy=0 - self.pi=0 + res = curve_fit(fit_func, t, np.zeros(len(t)), + p0=[np.mean(x),np.mean(y), (x[-1]-x[0])/(t[-1]-t[0]),(y[-1]-y[0])/(t[-1]-t[0]), 1]) + x0,y0,vx,vy,pi = res[0] + x0_err,y0_err,vx_err,vy_err,pi_err = np.sqrt(np.diag(res[1])) + if update: + self.x0 = x0 + self.y0=y0 + self.vx=vx + self.vy=vy + self.pi=pi + self.x0_err=x0_err + self.y0_err=y0_err + self.vx_err=vx_err + self.vy_err=vy_err + self.pi_err=pi_err + params = [x0, vx, y0, vy, pi] + param_errors = [x0_err, vx_err, y0_err, vy_err, pi_err] + return params, param_errors + def get_chi2(self,dt,x,y,xe,ye): """ From db08bdc69b8c4f0cad87901b349c965cc3c43aff Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 3 Dec 2024 17:16:14 -0800 Subject: [PATCH 023/124] check in parallax progress, PA working --- flystar/motion_model.py | 42 +++++++++++++++++++++++++---------------- flystar/parallax.py | 14 ++++++++++---- 2 files changed, 36 insertions(+), 20 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 18436a4..0d097ff 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -4,7 +4,7 @@ import pdb from flystar import parallax from astropy.time import Time -from scipy.optimize import minimize,curve_fit +from scipy.optimize import curve_fit class MotionModel(ABC): # Number of data points required to fit model @@ -389,17 +389,21 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=True, bootstrap=0): class Parallax(MotionModel): """ Motion model for linear proper motion + parallax + + Requires RA, Dec, and PA parameters (degrees) for parallax calculation. + RA, Dec in J2000 + PA is counterclockwise offset between North and the image y-axis. + Optional obs parameter describing observer location, default is 'earth'. """ - n_pts_req = 5 - # TODO: did we count dofs properly in previous ones? (incl. x0 and y0) - dof=5 + n_pts_req = 4 + dof=3 fitter_param_names = ['x0', 'vx', 'y0', 'vy', 'pi'] - fixed_param_names = ['t0', 'RA','Dec','obs'] + fixed_param_names = ['t0', 'RA','Dec','PA','obs'] def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025.0, x0_err=0, vx_err=0, y0_err=0, vy_err=0, pi=0, pi_err=0, - RA=None, Dec=None, obs='earth'): + RA=None, Dec=None, PA=None, obs='earth'): self.x0 = x0 self.vx = vx self.y0 = y0 @@ -413,12 +417,13 @@ def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025.0, self.pi_err = pi_err self.RA = RA self.Dec = Dec + self.PA = PA self.obs = obs return def get_pos_at_time(self, t): t_mjd = Time(t, format='decimalyear', scale='utc').mjd - pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs).T + pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA).T # TODO: need to confirm x-e orientation x = self.x0 + self.vx*(t-self.t0) + self.pi*pvec[0] y = self.y0 + self.vy*(t-self.t0) + self.pi*pvec[1] @@ -426,18 +431,26 @@ def get_pos_at_time(self, t): def get_pos_err_at_time(self, t): t_mjd = Time(t, format='decimalyear', scale='utc').mjd - pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs).T + pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA).T x_err = np.sqrt(self.y0_err**2 + ((t-self.t0)*self.vx_err)**2 + (self.pi_err*pvec[0])**2) y_err = np.sqrt(self.x0_err**2 + ((t-self.t0)*self.vy_err)**2 + (self.pi_err*pvec[1])**2) return x_err, y_err - def get_batch_pos_at_time(self, t): - #return x, y, x_err, y_err - pass + def get_batch_pos_at_time(self, t, + x0=[],vx=[], y0=[],vy=[], pi=[], t0=[], + x0_err=[],vx_err=[], y0_err=[],vy_err=[], pi_err=[]): + t_mjd = Time(t, format='decimalyear', scale='utc').mjd + pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA).T + dt = t-t0 + x = x0 + dt*vx + pi*pvec[0] + y = y0 + dt*vy + pi*pvec[1] + x_err = np.sqrt(x0_err**2 + (vx_err*dt)**2 + (pi_err*pvec[0])**2) + y_err = np.sqrt(y0_err**2 + (vy_err*dt)**2 + (pi_err*pvec[1])**2) + return x,y,x_err,y_err - def fit_motion_model(self, t, x, y, xe, ye, update=True,method='Nelder-Mead'): + def fit_motion_model(self, t, x, y, xe, ye, update=True): t_mjd = Time(t, format='decimalyear', scale='utc').mjd - pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs).T + pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA).T def fit_func(t, x0,y0, vx,vy, pi): x_res = x0 + vx*(t-self.t0) + pi*pvec[0] y_res = y0 + vy*(t-self.t0) + pi*pvec[1] @@ -464,7 +477,6 @@ def fit_func(t, x0,y0, vx,vy, pi): params = [x0, vx, y0, vy, pi] param_errors = [x0_err, vx_err, y0_err, vy_err, pi_err] return params, param_errors - def get_chi2(self,dt,x,y,xe,ye): """ @@ -477,8 +489,6 @@ def get_chi2(self,dt,x,y,xe,ye): chi2y = np.sum((y-y_pred)**2 / ye**2) return chi2x,chi2y - - """ Get all the motion model parameters for a given motion_model_name. Optionally, include fixed and error parameters (included by default). diff --git a/flystar/parallax.py b/flystar/parallax.py index fff5026..88360cc 100755 --- a/flystar/parallax.py +++ b/flystar/parallax.py @@ -21,11 +21,12 @@ cache_memory.reduce_size() @cache_memory.cache() -def parallax_in_direction(RA, Dec, mjd, obsLocation='earth'): +def parallax_in_direction(RA, Dec, mjd, obsLocation='earth', PA=0): """ | R.A. in degrees. (J2000) | Dec. in degrees. (J2000) | MJD + | PA in degrees. (counterclockwise misalignment of North and image y-axis) Equations following MulensModel. """ @@ -49,9 +50,14 @@ def parallax_in_direction(RA, Dec, mjd, obsLocation='earth'): e = np.dot(pos, _east_projected) n = np.dot(pos, _north_projected) - - pvec = np.array([e.value, n.value]).T - + + # Rotate frame e,n->x,y accounting for PA + PA_rad = np.pi/180.0 * PA + x = -e.value*np.cos(PA_rad) + n.value*np.sin(PA_rad) + y = e.value*np.sin(PA_rad) + n.value*np.cos(PA_rad) + + pvec = np.array([x, y]).T + return pvec From cdc58964c136fe178059adef53d6d41195f538c1 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 4 Dec 2024 15:00:17 -0800 Subject: [PATCH 024/124] fix documentation error --- flystar/motion_model.py | 81 ++++++++++++++++++++++++----------------- flystar/parallax.py | 2 +- flystar/startables.py | 4 -- 3 files changed, 48 insertions(+), 39 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 0d097ff..329e234 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -55,6 +55,17 @@ def fit_motion_model(self, t, x, y, xe, ye, update=True): """ #return params, param_errors pass + + def get_chi2(self,t,x,y,xe,ye): + """ + Get the chi^2 value for the current MM and + the input data. + """ + # TODO: confirm whether we want reduced chi^2 or anything special - maybe kwarg option + x_pred,y_pred = self.get_pos_at_time(t) + chi2x = np.sum((x-x_pred)**2 / xe**2) + chi2y = np.sum((y-y_pred)**2 / ye**2) + return chi2x,chi2y class Fixed(MotionModel): """ @@ -80,26 +91,35 @@ def __init__(self, x0=0, y0=0, t0=2025.0, return def get_pos_at_time(self,t): - return self.x0, self.y0 + if hasattr(t, "__len__"): + return np.repeat(self.x0, len(t)), np.repeat(self.y0, len(t)) + else: + return self.x0, self.y0 def get_pos_err_at_time(self,t): - return self.x0_err, self.y0_err + if hasattr(t, "__len__"): + return np.repeat(self.x0_err, len(t)), np.repeat(self.y0_err, len(t)) + else: + return self.x0_err, self.y0_err def get_batch_pos_at_time(self,t, x0=[],y0=[],t0=[], x0_err=[], y0_err=[]): - return x0,y0,x0_err,y0_err + if hasattr(t, "__len__"): + return np.repeat(x0[:,np.newaxis],len(t),axis=1), np.repeat(y0[:,np.newaxis],len(t),axis=1), np.repeat(x0_err[:,np.newaxis],len(t),axis=1), np.repeat(y0_err[:,np.newaxis],len(t),axis=1) + else: + return x0,y0,x0_err,y0_err - def fit_motion_model(self, dt, x, y, xe, ye, update=True, bootstrap=0): + def fit_motion_model(self, t, x, y, xe, ye, update=True, bootstrap=0): # Handle single data point case if len(x)==1: return [x[0],y[0]],[xe[0],ye[0]] #TODO: it seems like sometimes it's weighted by std and sometimes by var - confirm which to do here x0 = np.average(x, weights=1/xe**2) - x0e = np.sqrt(np.average((x-x0)**2,weights=1/xe)) + x0e = np.sqrt(np.average((x-x0)**2,weights=1/xe**2)) y0 = np.average(y, weights=1/ye**2) - y0e = np.sqrt(np.average((y-y0)**2,weights=1/ye)) + y0e = np.sqrt(np.average((y-y0)**2,weights=1/ye**2)) params = [x0, y0] param_errors = [x0e, y0e] @@ -142,25 +162,30 @@ def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025.0, self.py = models.Polynomial1D(self.poly_order, c0=self.y0, c1=self.vy) return - - def get_pos_at_time(self, dt): - x = self.px(dt) - y = self.py(dt) - return x, y - def get_pos_err_at_time(self, dt): - x_err = np.hypot(self.x0_err, self.vx_err*dt) - y_err = np.hypot(self.y0_err, self.vy_err*dt) - return x_err, y_err + def get_pos_at_time(self, t): + dt = t-self.t0 + return self.x0 + self.vx*dt, self.y0 + self.vy*dt - def get_batch_pos_at_time(self,t, + def get_pos_err_at_time(self, t): + dt = t-self.t0 + return np.hypot(self.x0_err, self.vx_err*dt), np.hypot(self.y0_err, self.vy_err*dt) + + def get_batch_pos_at_time(self, t, x0=[],vx=[], y0=[],vy=[], t0=[], x0_err=[],vx_err=[], y0_err=[],vy_err=[]): - dt = t-t0 - x = x0 + dt*vx - y = y0 + dt*vy - x_err = np.hypot(x0_err, vx_err*dt) - y_err = np.hypot(y0_err, vy_err*dt) + if hasattr(t, "__len__"): + dt = t-t0[:,np.newaxis] + x = x0[:,np.newaxis] + dt*vx[:,np.newaxis] + y = y0[:,np.newaxis] + dt*vy[:,np.newaxis] + x_err = np.hypot(x0_err[:,np.newaxis], vx_err[:,np.newaxis]*dt) + y_err = np.hypot(y0_err[:,np.newaxis], vy_err[:,np.newaxis]*dt) + else: + dt = t-t0 + x = x0 + dt*vx + y = y0 + dt*vy + x_err = np.hypot(x0_err, vx_err*dt) + y_err = np.hypot(y0_err, vy_err*dt) return x,y,x_err,y_err def fit_motion_model(self, dt, x, y, xe, ye, update=True, bootstrap=0): @@ -392,7 +417,7 @@ class Parallax(MotionModel): Requires RA, Dec, and PA parameters (degrees) for parallax calculation. RA, Dec in J2000 - PA is counterclockwise offset between North and the image y-axis. + PA is counterclockwise offset of the image y-axis from North. Optional obs parameter describing observer location, default is 'earth'. """ n_pts_req = 4 @@ -424,7 +449,6 @@ def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025.0, def get_pos_at_time(self, t): t_mjd = Time(t, format='decimalyear', scale='utc').mjd pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA).T - # TODO: need to confirm x-e orientation x = self.x0 + self.vx*(t-self.t0) + self.pi*pvec[0] y = self.y0 + self.vy*(t-self.t0) + self.pi*pvec[1] return x, y @@ -478,17 +502,6 @@ def fit_func(t, x0,y0, vx,vy, pi): param_errors = [x0_err, vx_err, y0_err, vy_err, pi_err] return params, param_errors - def get_chi2(self,dt,x,y,xe,ye): - """ - Get the chi^2 value for the current MM and - the input data. - """ - # TODO: confirm whether we want reduced chi^2 or anything special - maybe kwarg option - x_pred,y_pred = self.get_pos_at_time(dt) - chi2x = np.sum((x-x_pred)**2 / xe**2) - chi2y = np.sum((y-y_pred)**2 / ye**2) - return chi2x,chi2y - """ Get all the motion model parameters for a given motion_model_name. Optionally, include fixed and error parameters (included by default). diff --git a/flystar/parallax.py b/flystar/parallax.py index 88360cc..4c60ae7 100755 --- a/flystar/parallax.py +++ b/flystar/parallax.py @@ -26,7 +26,7 @@ def parallax_in_direction(RA, Dec, mjd, obsLocation='earth', PA=0): | R.A. in degrees. (J2000) | Dec. in degrees. (J2000) | MJD - | PA in degrees. (counterclockwise misalignment of North and image y-axis) + | PA in degrees. (counterclockwise offset of the image y-axis from North) Equations following MulensModel. """ diff --git a/flystar/startables.py b/flystar/startables.py index 95a21bf..a9ed67d 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -655,7 +655,6 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, default_motion_model='Linear', mask_val=None, mask_lists=False): # TODO: "weighting" is not used - # # Make a mask of invalid (NaN) values and a user-specified invalid value. # @@ -670,7 +669,6 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, if not np.ma.is_masked(y): y.mask = np.zeros_like(y.data, dtype=bool) - if mask_lists is not False: # Remove a list if isinstance(mask_lists, list): @@ -681,7 +679,6 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, # Throw a warning if mask_lists is not a list if not isinstance(mask_lists, list): raise RuntimeError('mask_lists needs to be a list.') - # # Assign the appropriate positional errors # @@ -854,7 +851,6 @@ def get_star_positions_at_time(self, t): """ Get current x,y positions of each star according to its motion_model Instead of looping through every star, we implement a faster calculation for Fixed and Linear models, and loop through any stars with a more complex model - TODO: can add acceleration model to the ones with shortcuts """ # Start with empty arrays so we can fill them in batches N_stars = len(self) From 37393be93439d6c87b47ec5cd45942035ef12444 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 12 Dec 2024 17:08:12 -0800 Subject: [PATCH 025/124] check in progress on motion model testing --- flystar/align.py | 52 ++++-- flystar/motion_model.py | 58 ++++--- flystar/startables.py | 20 ++- flystar/tests/test_align.py | 106 ++++++++++++- flystar/tests/test_motion_model.py | 243 +++++++++++++++++++++++++++++ flystar/transforms.py | 6 +- 6 files changed, 445 insertions(+), 40 deletions(-) create mode 100755 flystar/tests/test_motion_model.py diff --git a/flystar/align.py b/flystar/align.py index ab0fd06..f8374f8 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -27,6 +27,7 @@ def __init__(self, list_of_starlists, ref_index=0, iters=2, use_vel=None, default_motion_model='Fixed', calc_trans_inverse=False, init_guess_mode='miracle', iter_callback=None, + position_angle=None, RA=None, Dec=None, observer_location='earth', verbose=True): """ Make a mosaic object by passing in a list of starlists and then running fit(). @@ -129,7 +130,16 @@ def = None. If not None, then this should contain an array or list of transform iter_callback : None or function A function to call (that accepts a StarTable object and an iteration number) - at the end of every iteration. This can be used for plotting or printing state. + at the end of every iteration. This can be used for plotting or printing state. + + position_angle, RA, Dec : float (degrees) + [Only required if using Parallax motion model] + position_angle: clockwise angular offset of image y-axis from North + RA, Dec: J2000.0 coordinates of your image center + These values are assumed to be the same for all starlists + + observer_location: str + Only used for parallax motion models, default is 'earth' verbose : int (0 to 9, inclusive) Controls the verbosity of print statements. (0 least, 9 most verbose). @@ -180,6 +190,11 @@ def = None. If not None, then this should contain an array or list of transform self.trans_input = trans_input self.trans_class = trans_class self.calc_trans_inverse = calc_trans_inverse + self.position_angle=position_angle + self.RA=RA + self.Dec=Dec + self.observer_location=observer_location + # TODO: consider whether we want this fallback if use_vel is None: self.default_motion_model = default_motion_model @@ -587,7 +602,7 @@ def setup_ref_table_from_starlist(self, star_list): col_arrays[new_col_name] = new_col_data # Use the columns from the ref list to make the ref_table. - ref_table = StarTable(**col_arrays) + ref_table = StarTable(**col_arrays, position_angle=self.position_angle, RA=self.RA, Dec=self.Dec) # Make new columns to hold original values. These will be copies # of the old columns and will only include x, y, m, xe, ye, me. @@ -1091,8 +1106,8 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot motion_model_list = ['Fixed', self.default_motion_model] if 'motion_model_used' in ref_table.keys(): motion_model_list += ref_table['motion_model_used'].tolist() - elif 'motion_model_assigned' in ref_table.keys(): - motion_model_list += ref_table['motion_model_assigned'].tolist() + elif 'motion_model_input' in ref_table.keys(): + motion_model_list += ref_table['motion_model_input'].tolist() motion_col_list = motion_model.get_list_motion_model_param_names(np.unique(motion_model_list).tolist(), with_errors=False, with_fixed=False) if calc_vel_in_bootstrap: motion_data = {} @@ -1291,6 +1306,8 @@ def __init__(self, ref_list, list_of_starlists, iters=2, update_ref_orig=False, init_guess_mode='miracle', iter_callback=None, + position_angle=None, RA=None, Dec=None, + observer_location='earth', verbose=True): """ @@ -1416,7 +1433,16 @@ def = None. If not None, then this should contain an array or list of transform iter_callback : None or function A function to call (that accepts a StarTable object and an iteration number) - at the end of every iteration. This can be used for plotting or printing state. + at the end of every iteration. This can be used for plotting or printing state. + + position_angle, RA, Dec : float (degrees) + Only required if using Parallax motion model + position_angle: clockwise angular offset of image y-axis from North + RA, Dec: J2000.0 coordinates of your image center + These values are assumed to be the same for all starlists + + observer_location: str + Only used for parallax motion models, default is 'earth' Example ---------- @@ -1460,6 +1486,8 @@ def = None. If not None, then this should contain an array or list of transform default_motion_model = default_motion_model, init_guess_mode=init_guess_mode, iter_callback=iter_callback, + position_angle=position_angle, RA=RA, Dec=Dec, + observer_location=observer_location, verbose=verbose) self.ref_list = copy.deepcopy(ref_list) @@ -1542,10 +1570,10 @@ def fit(self): self.ref_table = self.setup_ref_table_from_starlist(self.ref_list) # copy over motion model parameters if they exist in the reference list - if 'motion_model_assigned' in self.ref_list.colnames: - self.ref_table['motion_model_assigned'] = self.ref_list['motion_model_assigned'] + if 'motion_model_input' in self.ref_list.colnames: + self.ref_table['motion_model_input'] = self.ref_list['motion_model_input'] if 'motion_model' in self.ref_list.colnames: - self.ref_table['motion_model_assigned'] = self.ref_list['motion_model'] + self.ref_table['motion_model_input'] = self.ref_list['motion_model'] for param in motion_model.get_all_motion_model_param_names(with_fixed=True, with_errors=True): if param in self.ref_list.colnames: self.ref_table[param] = self.ref_list[param] @@ -1675,7 +1703,7 @@ def setup_ref_table_from_starlist(star_list): col_arrays[new_col_name] = new_col_data # Use the columns from the ref list to make the ref_table. - ref_table = StarTable(**col_arrays) + ref_table = StarTable(**col_arrays, position_angle=self.position_angle, RA=self.RA, Dec=self.Dec) # Make new columns to hold original values. These will be copies # of the old columns and will only include x, y, m, xe, ye, me. @@ -2391,11 +2419,11 @@ def transform_from_object(starlist, transform): keys = list(starlist.keys()) # Check to see if velocities or motion_model are present in starlist. - vel = ('vx' in keys)and ~("motion_model_assigned" in keys) - mot = ("motion_model_assigned" in keys) + vel = ('vx' in keys)and ~("motion_model_input" in keys) + mot = ("motion_model_input" in keys) # If the only motion models used are Fixed and Linear, we can still transform velocities. if mot: - motion_models_unique = list(np.unique(starlist_f['motion_model_assigned'])) + motion_models_unique = list(np.unique(starlist_f['motion_model_input'])) if 'Linear' in motion_models_unique: motion_models_unique.remove('Linear') if 'Fixed' in motion_models_unique: diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 329e234..a6726d3 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -77,7 +77,7 @@ class Fixed(MotionModel): fixed_param_names = [] def __init__(self, x0=0, y0=0, t0=2025.0, - x0_err=0, y0_err=0): + x0_err=0, y0_err=0, **kwargs): self.x0 = x0 self.y0 = y0 self.t0 = t0 @@ -142,7 +142,7 @@ class Linear(MotionModel): fixed_param_names = ['t0'] def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025.0, - x0_err=0, vx_err=0, y0_err=0, vy_err=0): + x0_err=0, vx_err=0, y0_err=0, vy_err=0, **kwargs): self.x0 = x0 self.vx = vx self.y0 = y0 @@ -173,7 +173,7 @@ def get_pos_err_at_time(self, t): def get_batch_pos_at_time(self, t, x0=[],vx=[], y0=[],vy=[], t0=[], - x0_err=[],vx_err=[], y0_err=[],vy_err=[]): + x0_err=[],vx_err=[], y0_err=[],vy_err=[], **kwargs): if hasattr(t, "__len__"): dt = t-t0[:,np.newaxis] x = x0[:,np.newaxis] + dt*vx[:,np.newaxis] @@ -283,7 +283,7 @@ class Acceleration(MotionModel): fixed_param_names = ['t0'] def __init__(self, x0=0, vx0=0, ax=0, y0=0, vy0=0, ay=0, t0=2025.0, - x0_err=0, vx0_err=0, ax_err=0, y0_err=0, vy0_err=0, ay_err=0): + x0_err=0, vx0_err=0, ax_err=0, y0_err=0, vy0_err=0, ay_err=0, **kwargs): self.x0 = x0 self.vx0 = vx0 self.ax = ax @@ -316,18 +316,25 @@ def get_pos_at_time(self, t): def get_pos_err_at_time(self, t): dt = t - self.t0 - x_err = np.sqrt(self.x0_err**2 + (self.vx_err*dt)**2 + (self.ax_err*dt**2)**2) - y_err = np.sqrt(self.y0_err**2 + (self.vy_err*dt)**2 + (self.ay_err*dt**2)**2) + x_err = np.sqrt(self.x0_err**2 + (self.vx0_err*dt)**2 + (0.5*self.ax_err*dt**2)**2) + y_err = np.sqrt(self.y0_err**2 + (self.vy0_err*dt)**2 + (0.5*self.ay_err*dt**2)**2) return x_err, y_err def get_batch_pos_at_time(self,t, x0=[],vx0=[],ax=[], y0=[],vy0=[],ay=[], t0=[], - x0_err=[],vx0_err=[],ax_err=[], y0_err=[],vy0_err=[],ay_err=[]): - dt = t-t0 - x = x0 + dt*vx0 + 0.5*dt**2*ax - y = y0 + dt*vy0 + 0.5*dt**2*ay - x_err = np.sqrt(x0_err**2 + (vx0_err*dt)**2 + (0.5*ax_err*dt**2)**2) - y_err = np.sqrt(y0_err**2 + (vy0_err*dt)**2 + (0.5*ay_err*dt**2)**2) + x0_err=[],vx0_err=[],ax_err=[], y0_err=[],vy0_err=[],ay_err=[], **kwargs): + if hasattr(t, "__len__"): + dt = t-t0[:,np.newaxis] + x = x0[:,np.newaxis] + dt*vx0[:,np.newaxis] + 0.5*dt**2*ax[:,np.newaxis] + y = y0[:,np.newaxis] + dt*vy0[:,np.newaxis] + 0.5*dt**2*ay[:,np.newaxis] + x_err = np.sqrt(x0_err[:,np.newaxis]**2 + (vx0_err[:,np.newaxis]*dt)**2 + (0.5*ax_err[:,np.newaxis]*dt**2)**2) + y_err = np.sqrt(y0_err[:,np.newaxis]**2 + (vy0_err[:,np.newaxis]*dt)**2 + (0.5*ay_err[:,np.newaxis]*dt**2)**2) + else: + dt = t-t0 + x = x0 + dt*vx0 + 0.5*dt**2*ax + y = y0 + dt*vy0 + 0.5*dt**2*ay + x_err = np.sqrt(x0_err**2 + (vx0_err*dt)**2 + (0.5*ax_err*dt**2)**2) + y_err = np.sqrt(y0_err**2 + (vy0_err*dt)**2 + (0.5*ay_err*dt**2)**2) return x,y,x_err,y_err def fit_motion_model(self, dt, x, y, xe, ye, update=True, bootstrap=0): @@ -428,7 +435,7 @@ class Parallax(MotionModel): def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025.0, x0_err=0, vx_err=0, y0_err=0, vy_err=0, pi=0, pi_err=0, - RA=None, Dec=None, PA=None, obs='earth'): + RA=None, Dec=None, PA=None, obs='earth', **kwargs): self.x0 = x0 self.vx = vx self.y0 = y0 @@ -462,14 +469,27 @@ def get_pos_err_at_time(self, t): def get_batch_pos_at_time(self, t, x0=[],vx=[], y0=[],vy=[], pi=[], t0=[], - x0_err=[],vx_err=[], y0_err=[],vy_err=[], pi_err=[]): + x0_err=[],vx_err=[], y0_err=[],vy_err=[], pi_err=[], **kwargs): t_mjd = Time(t, format='decimalyear', scale='utc').mjd pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA).T - dt = t-t0 - x = x0 + dt*vx + pi*pvec[0] - y = y0 + dt*vy + pi*pvec[1] - x_err = np.sqrt(x0_err**2 + (vx_err*dt)**2 + (pi_err*pvec[0])**2) - y_err = np.sqrt(y0_err**2 + (vy_err*dt)**2 + (pi_err*pvec[1])**2) + if hasattr(t, "__len__"): + dt = t-t0[:,np.newaxis] + x = x0[:,np.newaxis] + dt*vx[:,np.newaxis] + pi[:,np.newaxis]*pvec[0] + y = y0[:,np.newaxis] + dt*vy[:,np.newaxis] + pi[:,np.newaxis]*pvec[1] + try: + x_err = np.sqrt(x0_err[:,np.newaxis]**2 + (vx_err[:,np.newaxis]*dt)**2 + (pi_err[:,np.newaxis]*pvec[0])**2) + y_err = np.sqrt(y0_err[:,np.newaxis]**2 + (vy_err[:,np.newaxis]*dt)**2 + (pi_err[:,np.newaxis]*pvec[1])**2) + except: + x_err,y_err = [],[] + else: + dt = t-t0 + x = x0 + dt*vx + pi*pvec[0] + y = y0 + dt*vy + pi*pvec[1] + try: + x_err = np.sqrt(x0_err**2 + (vx_err*dt)**2 + (pi_err*pvec[0])**2) + y_err = np.sqrt(y0_err**2 + (vy_err*dt)**2 + (pi_err*pvec[1])**2) + except: + x_err,y_err = [],[] return x,y,x_err,y_err def fit_motion_model(self, t, x, y, xe, ye, update=True): diff --git a/flystar/startables.py b/flystar/startables.py index a9ed67d..20f4263 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -60,7 +60,18 @@ class StarTable(Table): ref_list : int Specify which list is the reference list (if any). - + + position_angle: float (degree) + required for parallax motion model + clockwise angular offset between image y-axis and North + + RA, Dec: float (degrees) + required for parallax motion model + image position coordinates + + observer_location: string + only used by parallax motion model + default is 'earth' Examples -------------------------- @@ -72,7 +83,7 @@ class StarTable(Table): print(t['name'][0:10]) # print the first 10 star names print(t['x'][0:10, 0]) # print x from the first epoch/list/column for the first 10 stars """ - def __init__(self, *args, ref_list=0, **kwargs): + def __init__(self, *args, ref_list=0, position_angle=None, RA=None, Dec=None, observer_location='earth', **kwargs): """ """ @@ -150,7 +161,8 @@ def __init__(self, *args, ref_list=0, **kwargs): Table.__init__(self, (kwargs['name'], kwargs['x'], kwargs['y'], kwargs['m']), names=('name', 'x', 'y', 'm')) self['name'] = self['name'].astype('U20') - self.meta = {'n_stars': n_stars, 'n_lists': n_lists, 'ref_list': ref_list} + self.meta = {'n_stars': n_stars, 'n_lists': n_lists, 'ref_list': ref_list, + 'position_angle': position_angle, 'RA': RA, 'Dec':Dec, 'observer_location':observer_location} for meta_arg in meta_tab: if meta_arg in kwargs: @@ -829,7 +841,7 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, param_dict[par] = self[par][ss] # Model object - mod = modClass(**param_dict) + mod = modClass(**param_dict, PA=self.meta['position_angle'], RA=self.meta['RA'], Dec=self.meta['Dec'], obs=self.meta['observer_location']) # Fit for the best parameters params, param_errs = mod.fit_motion_model(dt, x, y, xe, ye, bootstrap=bootstrap, update=True) diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 9b99f06..5b78653 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -3,6 +3,7 @@ from flystar import startables from flystar import transforms from flystar import analysis +from flystar import motion_model from astropy.table import Table import numpy as np import pylab as plt @@ -534,7 +535,7 @@ def make_fake_starlists_poly1_vel(seed=-1): # Save the new list as a starlist. new_lis = starlists.StarList([lis['name'], md, mde, xd, xde, yd, yde, t], - names=('name', 'm', 'me', 'x', 'xe', 'y', 'ye', 't')) + names=('name', 'm', 'm_err', 'x', 'x_err', 'y', 'y_err', 't')) new_lis.write('random_vel_{0:d}.fits'.format(ss), overwrite=True) @@ -583,7 +584,7 @@ def make_fake_starlists_poly1_acc(seed=-1): names = ('name', 'm0', 'm0_err', 'x0', 'x0_err', 'y0', 'y0_err', 'vx0', 'vx0_err', 'vy0', 'vy0_err', - 'ax', 'axe', 'ay', 'aye', + 'ax', 'ax_err', 'ay', 'ay_err', 't0')) sdx = np.argsort(m0) @@ -641,6 +642,107 @@ def make_fake_starlists_poly1_acc(seed=-1): new_lis.write('random_acc_{0:d}.fits'.format(ss), overwrite=True) return (xy_trans, mag_trans) + +def make_fake_starlists_poly1_par(seed=-1): + # If seed >=0, then set random seed to that value + if seed >= 0: + np.random.seed(seed=seed) + + N_stars = 200 + + x0 = np.random.rand(N_stars) * 10.0 # arcsec (increasing to East) + y0 = np.random.rand(N_stars) * 10.0 # arcsec + x0e = np.random.randn(N_stars) * 5.0e-4 # arcsec + y0e = np.random.randn(N_stars) * 5.0e-4 # arcsec + vx = np.random.randn(N_stars) * 5.0 # mas / yr + vy = np.random.randn(N_stars) * 5.0 # mas / yr + vxe = np.random.randn(N_stars) * 0.1 # mas / yr + vye = np.random.randn(N_stars) * 0.1 # mas / yr + pi = np.random.randn(N_stars) * 0.5 # mas + pie = np.random.randn(N_stars) * 0.01 # mas + m0 = (np.random.rand(N_stars) * 8) + 9 # mag + m0e = np.random.randn(N_stars) * 0.05 # mag + t0 = np.ones(N_stars) * 2019.5 + + # Make all the errors positive + x0e = np.abs(x0e) + y0e = np.abs(y0e) + m0e = np.abs(m0e) + vxe = np.abs(vxe) + vye = np.abs(vye) + pie = np.abs(pie) + + name = ['star_{0:03d}'.format(ii) for ii in range(N_stars)] + + # Make an StarList + lis = starlists.StarList([name, m0, m0e, + x0, x0e, y0, y0e, + vx, vxe, vy, vye, + pi, pie, + t0], + names = ('name', 'm0', 'm0_err', + 'x0', 'x0_err', 'y0', 'y0_err', + 'vx', 'vx_err', 'vy', 'vy_err', + 'pi', 'pi_err', + 't0')) + + sdx = np.argsort(m0) + lis = lis[sdx] + + # Save original positions as reference (1st) list + # in a StarList format (with velocities). + lis.write('random_par_ref.fits', overwrite=True) + + ########## + # Propogate to new times and distort. + ########## + # Make 4 new starlists with different epochs and transformations. + times = [2018.5, 2019.5, 2020.5, 2021.5] + xy_trans = [[[ 6.5, 0.99, 1e-5], [ 10.1, 1e-5, 0.99]], + [[100.3, 0.98, 1e-5], [ 50.5, 9e-6, 1.001]], + [[ 0.0, 1.00, 0.0], [ 0.0, 0.0, 1.0]], + [[250.0, 0.97, 2e-5], [-250.0, 1e-5, 1.001]]] + mag_trans = [0.1, 0.4, 0.0, -0.3] + + # Convert into pixels (undistorted) with the following info. + scale = 0.01 # arcsec / pix + shift = [1.0, 1.0] # pix + + for ss in range(len(times)): + dt = times[ss] - lis['t0'] + + par_mod = motion_model.Parallax(PA=0,RA=18.0, Dec=-30.0) + par_mod_dat = par_mod.get_batch_pos_at_time(dt+lis['t0'], x0=lis['x0'],vx=lis['vx']/1e3, pi=lis['pi'], + y0=lis['y0'], vy=lis['vy']/1e3, t0=lis['t0']) + x,y = par_mod_dat[0], par_mod_dat[1] + t = np.ones(N_stars) * times[ss] + + # Convert into pixels + xp = (x / -scale) + shift[0] # -1 from switching to increasing to West (right) + yp = (y / scale) + shift[1] + xpe = lis['x0_err'] / scale + ype = lis['y0_err'] / scale + + # Distort the positions + trans = transforms.PolyTransform(1, xy_trans[ss][0], xy_trans[ss][1], mag_offset=mag_trans[ss]) + xd, yd = trans.evaluate(xp, yp) + md = trans.evaluate_mag(lis['m0']) + + # Perturb with small errors (0.1 pix) + xd += np.random.randn(N_stars) * 0.1 + yd += np.random.randn(N_stars) * 0.1 + md += np.random.randn(N_stars) * 0.02 + xde = xpe + yde = ype + mde = lis['m0_err'] + + # Save the new list as a starlist. + new_lis = starlists.StarList([lis['name'], md, mde, xd, xde, yd, yde, t], + names=('name', 'm', 'me', 'x', 'xe', 'y', 'ye', 't')) + + new_lis.write('random_par_{0:d}.fits'.format(ss), overwrite=True) + + return (xy_trans, mag_trans) def test_MosaicToRef_hst_me(): diff --git a/flystar/tests/test_motion_model.py b/flystar/tests/test_motion_model.py new file mode 100755 index 0000000..d221a29 --- /dev/null +++ b/flystar/tests/test_motion_model.py @@ -0,0 +1,243 @@ +from flystar import motion_model +import numpy as np +import pytest + +def within_error(true_val, fit_val, fit_err, n_sigma=1): + return (true_val < (fit_val+fit_err)) & (true_val> (fit_val-fit_err)) + +def test_Fixed(): + # Test handling of a single star + true_params = {'x0': 1.0, 'y0':0.5, 'x0_err':0.1, 'y0_err':0.1} + mod_true = motion_model.Fixed(**true_params) + param_list = mod_true.fitter_param_names + # Confirm return of proper values for single t and array t + x_t, y_t = mod_true.get_pos_at_time(0.0) + assert x_t==true_params['x0'] + assert y_t==true_params['y0'] + x_t, y_t = mod_true.get_pos_at_time([0.0,mod_true.t0,10000]) + assert (x_t==true_params['x0']).all() + assert (y_t==true_params['y0']).all() + x_err_t, y_err_t = mod_true.get_pos_err_at_time(0.0) + assert x_err_t==true_params['x0_err'] + assert y_err_t==true_params['y0_err'] + x_err_t, y_err_t = mod_true.get_pos_err_at_time([0.0,mod_true.t0,10000]) + assert (x_err_t==true_params['x0_err']).all() + assert (y_err_t==true_params['y0_err']).all() + + # Check behavior of get_batch_pos_at_time + x0_batch = np.random.uniform(-2.0,2.0, 50) + y0_batch = np.random.uniform(-2.0,2.0, 50) + x0_err_batch = np.repeat(0.1, 50) + y0_err_batch = np.repeat(0.1, 50) + # Single epoch + t_batch=2020.0 + x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod_true.get_batch_pos_at_time(t_batch, + x0=x0_batch, y0=y0_batch, x0_err=x0_err_batch, y0_err=y0_err_batch) + assert (x_t_batch==x0_batch).all() + assert (y_t_batch==y0_batch).all() + assert (x_err_t_batch==x0_err_batch).all() + assert (y_err_t_batch==y0_err_batch).all() + # Multiple times + t_batch = np.arange(2015.0,2025.0, 0.5) + x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod_true.get_batch_pos_at_time(t_batch, + x0=x0_batch, y0=y0_batch, x0_err=x0_err_batch, y0_err=y0_err_batch) + assert (x_t_batch==np.array([np.repeat(x0_batch_i, len(t_batch)) for x0_batch_i in x0_batch])).all() + assert (y_t_batch==np.array([np.repeat(y0_batch_i, len(t_batch)) for y0_batch_i in y0_batch])).all() + assert (x_err_t_batch==np.array([np.repeat(x0_err_batch_i, len(t_batch)) for x0_err_batch_i in x0_err_batch])).all() + assert (y_err_t_batch==np.array([np.repeat(y0_err_batch_i, len(t_batch)) for y0_err_batch_i in y0_err_batch])).all() + + # Test fitter + t = np.arange(2015.0,2025.0, 0.5) + # Get values from model and add scatter + x_true, y_true = mod_true.get_pos_at_time(t) + x_true_err, y_true_err = mod_true.get_pos_err_at_time(t) + x_sim = np.random.normal(x_true, x_true_err) + y_sim = np.random.normal(y_true, y_true_err) + # Run fit + mod_fit = motion_model.Fixed() + params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) + # Confirm true value is within error bar of fit value + assert [within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))] + + +def test_Linear(): + # Test handling of a single star + true_params = {'x0': 1.0, 'y0':0.5, 'x0_err':0.1, 'y0_err':0.1, + 'vx':0.2, 'vy':0.5, 'vx_err':0.05, 'vy_err':0.05} + mod_true = motion_model.Linear(**true_params) + param_list = mod_true.fitter_param_names + # Confirm return of proper values for single t=t0 and array t + x_t, y_t = mod_true.get_pos_at_time(mod_true.t0) + assert x_t==true_params['x0'] + assert y_t==true_params['y0'] + t_arr = np.array([2010.0,mod_true.t0,2030.0]) + x_t, y_t = mod_true.get_pos_at_time(t_arr) + assert (x_t==(true_params['x0'] + (t_arr-mod_true.t0)*true_params['vx'])).all() + assert (y_t==(true_params['y0'] + (t_arr-mod_true.t0)*true_params['vy'])).all() + x_err_t, y_err_t = mod_true.get_pos_err_at_time(mod_true.t0) + assert x_err_t==true_params['x0_err'] + assert y_err_t==true_params['y0_err'] + x_err_t, y_err_t = mod_true.get_pos_err_at_time(t_arr) + assert (x_err_t==np.hypot(true_params['x0_err'],(t_arr-mod_true.t0)*true_params['vx_err'])).all() + assert (y_err_t==np.hypot(true_params['y0_err'],(t_arr-mod_true.t0)*true_params['vy_err'])).all() + + # Check behavior of get_batch_pos_at_time + x0_batch = np.random.uniform(-2.0,2.0, 50) + y0_batch = np.random.uniform(-2.0,2.0, 50) + vx_batch = np.random.uniform(-2.0,2.0, 50) + vy_batch = np.random.uniform(-2.0,2.0, 50) + x0_err_batch = np.repeat(0.1, 50) + y0_err_batch = np.repeat(0.1, 50) + vx_err_batch = np.repeat(0.05, 50) + vy_err_batch = np.repeat(0.05, 50) + t0_batch = np.repeat(2025.0,50) + # Single epoch + t_batch=2020.0 + x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod_true.get_batch_pos_at_time(t_batch, + x0=x0_batch, y0=y0_batch, x0_err=x0_err_batch, y0_err=y0_err_batch, + vx=vx_batch, vy=vy_batch, vx_err=vx_err_batch, vy_err=vy_err_batch, + t0=t0_batch) + assert (x_t_batch==(x0_batch+(t_batch-t0_batch)*vx_batch)).all() + assert (y_t_batch==(y0_batch+(t_batch-t0_batch)*vy_batch)).all() + assert (x_err_t_batch==np.hypot(x0_err_batch, (t_batch-t0_batch)*vx_err_batch)).all() + assert (y_err_t_batch==np.hypot(y0_err_batch, (t_batch-t0_batch)*vy_err_batch)).all() + # Multiple times + t_batch = np.arange(2015.0,2025.0, 0.5) + x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod_true.get_batch_pos_at_time(t_batch, + x0=x0_batch, y0=y0_batch, x0_err=x0_err_batch, y0_err=y0_err_batch, + vx=vx_batch, vy=vy_batch, vx_err=vx_err_batch, vy_err=vy_err_batch, + t0=t0_batch) + assert (x_t_batch==np.array([x0_batch[i] + (t_batch-t0_batch[i])*vx_batch[i] for i in range(len(x0_batch))])).all() + assert (y_t_batch==np.array([y0_batch[i] + (t_batch-t0_batch[i])*vy_batch[i] for i in range(len(x0_batch))])).all() + assert (x_err_t_batch==np.array([np.hypot(x0_err_batch[i], (t_batch-t0_batch[i])*vx_err_batch[i]) for i in range(len(x0_batch))])).all() + assert (y_err_t_batch==np.array([np.hypot(y0_err_batch[i], (t_batch-t0_batch[i])*vy_err_batch[i]) for i in range(len(x0_batch))])).all() + + # Test fitter + t = np.arange(2015.0,2025.0, 0.5) + # Get values from model and add scatter + x_true, y_true = mod_true.get_pos_at_time(t) + x_true_err, y_true_err = mod_true.get_pos_err_at_time(t) + x_sim = np.random.normal(x_true, x_true_err) + y_sim = np.random.normal(y_true, y_true_err) + # Run fit + mod_fit = motion_model.Linear() + params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) + # Confirm true value is within error bar of fit value + assert [within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))] + + +def test_Acceleration(): + # Test handling of a single star + true_params = {'x0': 1.0, 'y0':0.5, 'x0_err':0.1, 'y0_err':0.1, + 'vx0':0.2, 'vy0':0.5, 'vx0_err':0.05, 'vy0_err':0.05, + 'ax':0.1, 'ay':-0.1, 'ax_err':0.02, 'ay_err':0.02} + mod_true = motion_model.Acceleration(**true_params) + param_list = mod_true.fitter_param_names + # Confirm return of proper values for single t=t0 and array t + x_t, y_t = mod_true.get_pos_at_time(mod_true.t0) + assert x_t==true_params['x0'] + assert y_t==true_params['y0'] + t_arr = np.array([2010.0,mod_true.t0,2030.0]) + x_t, y_t = mod_true.get_pos_at_time(t_arr) + assert (x_t==(true_params['x0'] + (t_arr-mod_true.t0)*true_params['vx0'] + (t_arr-mod_true.t0)**2*true_params['ax'])).all() + assert (y_t==(true_params['y0'] + (t_arr-mod_true.t0)*true_params['vy0'] + (t_arr-mod_true.t0)**2*true_params['ay'])).all() + x_err_t, y_err_t = mod_true.get_pos_err_at_time(mod_true.t0) + assert x_err_t==true_params['x0_err'] + assert y_err_t==true_params['y0_err'] + x_err_t, y_err_t = mod_true.get_pos_err_at_time(t_arr) + assert (x_err_t==np.sqrt(true_params['x0_err']**2 + ((t_arr-mod_true.t0)*true_params['vx0_err'])**2 + + (0.5*(t_arr-mod_true.t0)**2*true_params['ax_err'])**2)).all() + assert (y_err_t==np.sqrt(true_params['y0_err']**2 + ((t_arr-mod_true.t0)*true_params['vy0_err'])**2 + + (0.5*(t_arr-mod_true.t0)**2*true_params['ay_err'])**2)).all() + + # Check behavior of get_batch_pos_at_time + x0_batch = np.random.uniform(-2.0,2.0, 50) + y0_batch = np.random.uniform(-2.0,2.0, 50) + vx0_batch = np.random.uniform(-2.0,2.0, 50) + vy0_batch = np.random.uniform(-2.0,2.0, 50) + ax_batch = np.random.uniform(-1.0,1.0, 50) + ay_batch = np.random.uniform(-1.0,1.0, 50) + x0_err_batch = np.repeat(0.1, 50) + y0_err_batch = np.repeat(0.1, 50) + vx0_err_batch = np.repeat(0.05, 50) + vy0_err_batch = np.repeat(0.05, 50) + ax_err_batch = np.repeat(0.02, 50) + ay_err_batch = np.repeat(0.02, 50) + t0_batch = np.repeat(2025.0,50) + # Single epoch + t_batch=2020.0 + x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod_true.get_batch_pos_at_time(t_batch, + x0=x0_batch, y0=y0_batch, x0_err=x0_err_batch, y0_err=y0_err_batch, + vx0=vx0_batch, vy0=vy0_batch, vx0_err=vx0_err_batch, vy0_err=vy0_err_batch, + ax=ax_batch, ay=ay_batch, ax_err=ax_err_batch, ay_err=ay_err_batch, + t0=t0_batch) + assert (x_t_batch==(x0_batch + (t_batch-t0_batch)*vx0_batch + 0.5*(t_batch-t0_batch)**2*ax_batch)).all() + assert (y_t_batch==(y0_batch + (t_batch-t0_batch)*vy0_batch + 0.5*(t_batch-t0_batch)**2*ay_batch)).all() + assert (x_err_t_batch==np.sqrt(x0_err_batch**2 + ((t_batch-t0_batch)*vx0_err_batch)**2 + + (0.5*(t_batch-t0_batch)**2*ax_err_batch)**2)).all() + assert (y_err_t_batch==np.sqrt(y0_err_batch**2 + ((t_batch-t0_batch)*vy0_err_batch)**2 + + (0.5*(t_batch-t0_batch)**2*ay_err_batch)**2)).all() + # Multiple times + t_batch = np.arange(2015.0,2025.0, 0.5) + x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod_true.get_batch_pos_at_time(t_batch, + x0=x0_batch, y0=y0_batch, x0_err=x0_err_batch, y0_err=y0_err_batch, + vx0=vx0_batch, vy0=vy0_batch, vx0_err=vx0_err_batch, vy0_err=vy0_err_batch, + ax=ax_batch, ay=ay_batch, ax_err=ax_err_batch, ay_err=ay_err_batch, + t0=t0_batch) + assert (x_t_batch==np.array([x0_batch[i] + (t_batch-t0_batch[i])*vx0_batch[i] + 0.5*(t_batch-t0_batch[i])**2*ax_batch[i] for i in range(len(x0_batch))])).all() + assert (y_t_batch==np.array([y0_batch[i] + (t_batch-t0_batch[i])*vy0_batch[i] + 0.5*(t_batch-t0_batch[i])**2*ay_batch[i] for i in range(len(x0_batch))])).all() + assert (x_err_t_batch==np.array([np.sqrt(x0_err_batch[i]**2 + ((t_batch-t0_batch[i])*vx0_err_batch[i])**2 + (0.5*(t_batch-t0_batch[i])**2*ax_err_batch[i])**2) for i in range(len(x0_batch))])).all() + assert (y_err_t_batch==np.array([np.sqrt(y0_err_batch[i]**2 + ((t_batch-t0_batch[i])*vy0_err_batch[i])**2 + (0.5*(t_batch-t0_batch[i])**2*ay_err_batch[i])**2) for i in range(len(x0_batch))])).all() + + # Test fitter + t = np.arange(2015.0,2025.0, 0.5) + # Get values from model and add scatter + x_true, y_true = mod_true.get_pos_at_time(t) + x_true_err, y_true_err = mod_true.get_pos_err_at_time(t) + x_sim = np.random.normal(x_true, x_true_err) + y_sim = np.random.normal(y_true, y_true_err) + # Run fit + mod_fit = motion_model.Acceleration() + params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) + # Confirm true value is within error bar of fit value + assert [within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))] + +#@pytest.mark.skip(reason="not written") +def test_Parallax(): + # Test handling of a single star + true_params = {'x0': 1.0, 'y0':-0.5, 'x0_err':0.1, 'y0_err':0.1, + 'vx':-0.2, 'vy':0.5, 'vx_err':0.05, 'vy_err':0.05, + 'pi':0.5, 'RA':17.76, 'Dec':-28.933, 'PA':0} + mod_true = motion_model.Parallax(**true_params) + param_list = mod_true.fitter_param_names + + # Test fitter + t = np.arange(2015.0,2025.0, 0.5) + # Get values from model and add scatter + x_true, y_true = mod_true.get_pos_at_time(t) + x_true_err, y_true_err = mod_true.get_pos_err_at_time(t) + x_sim = np.random.normal(x_true, x_true_err) + y_sim = np.random.normal(y_true, y_true_err) + # Run fit + mod_fit = motion_model.Parallax(RA=17.76, Dec=-28.933, PA=0) + params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) + # Confirm true value is within error bar of fit value + assert [within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))] + + +def test_Parallax_PA(): + # Set PA=0 model + x0, y0 = 2.0, -1.0 + vx, vy = 0.2, 0.5 + RA, Dec = 17.76, -28.933 + pi = 0.5 + mod_pa0 = motion_model.Parallax(x0=x0,vx=vx,y0=y0,vy=vy,pi=pi, + RA=RA,Dec=Dec,t0=2020.0, PA=0) + # Set PA=90 model with equivalent parameters in that frame + mod_pa90 = motion_model.Parallax(x0=y0,vx=vy,y0=-x0,vy=-vx,pi=pi, + RA=RA,Dec=Dec,t0=2020.0, PA=90) + t_set = np.arange(2018,2024,0.01) + dat_pa0 = mod_pa0.get_pos_at_time(t_set) + dat_pa90 = mod_pa90.get_pos_at_time(t_set) + assert (np.abs(dat_pa0[0]-(-dat_pa90[1]))<1e-10).all() + assert (np.abs(dat_pa0[1]-(dat_pa90[0]))<1e-10).all() diff --git a/flystar/transforms.py b/flystar/transforms.py index 1ed7cd0..2bb80d3 100755 --- a/flystar/transforms.py +++ b/flystar/transforms.py @@ -114,10 +114,10 @@ def evaluate_starlist(self, star_list): new_list['ye'] = vals[1] # Velocities (if they exist and no more complex motion model used) - complex_motion_model = ('motion_model_assigned' in new_list.colnames) + complex_motion_model = ('motion_model_input' in new_list.colnames) if complex_motion_model: # If the only motion models used are Fixed and Linear, we can still transform velocities. - motion_models_unique = list(np.unique(starlist_f['motion_model_assigned'])) + motion_models_unique = list(np.unique(starlist_f['motion_model_input'])) if 'Linear' in motion_models_unique: motion_models_unique.remove('Linear') if 'Fixed' in motion_models_unique: @@ -126,7 +126,7 @@ def evaluate_starlist(self, star_list): complex_motion_model=False # Cannot transform more complex motion models - set values to nan if complex_motion_model: - motion_params = motion_model.get_list_motion_model_param_names(new_list['motion_model_assigned'], with_errors=True, with_fixed=False) + motion_params = motion_model.get_list_motion_model_param_names(new_list['motion_model_input'], with_errors=True, with_fixed=False) for param in motion_params: if param in new_list.colnames: new_list[param] = np.nan From 90496535bf8e0d08ee7798633431994ea082ef80 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Fri, 13 Dec 2024 16:01:23 -0800 Subject: [PATCH 026/124] motion model testing progress --- flystar/tests/test_align.py | 94 ++++++++++++++++++++++++++++++------- 1 file changed, 78 insertions(+), 16 deletions(-) diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 5b78653..6cd7abe 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -69,19 +69,19 @@ def test_MosaicSelfRef(): plt.clf() plt.plot(msc.ref_table['x'][:, 0], msc.ref_table['y'][:, 0], - 'k+', color='red', mec='red', mfc='none') + '+', color='red', mec='red', mfc='none') plt.plot(msc.ref_table['x'][:, 1], msc.ref_table['y'][:, 1], - 'kx', color='blue', mec='blue', mfc='none') + 'x', color='blue', mec='blue', mfc='none') plt.plot(msc.ref_table['x'][:, 2], msc.ref_table['y'][:, 2], - 'ko', color='cyan', mec='cyan', mfc='none') + 'o', color='cyan', mec='cyan', mfc='none') plt.plot(msc.ref_table['x'][:, 3], msc.ref_table['y'][:, 3], - 'k^', color='green', mec='green', mfc='none') + '^', color='green', mec='green', mfc='none') plt.plot(msc.ref_table['x0'], msc.ref_table['y0'], - 'k.', color='black', alpha=0.2) + '.', color='black', alpha=0.2) return @@ -217,6 +217,66 @@ def test_MosaicSelfRef_vel(): 'k.', color='black', alpha=0.2) return + +'''def test_MosaicSelfRef_acc(): + """ + Cross-match and align 4 starlists using the OO version of mosaic lists. + + """ + make_fake_starlists_poly1_acc(seed=42) + + ref_file = 'random_acc_ref.fits' + ref_list = Table.read(ref_file) + names = ref_list["name"] + list_files = ['random_acc_0.fits', + 'random_acc_1.fits', + 'random_acc_2.fits', + 'random_acc_3.fits'] + lists = [starlists.StarList.read(lf) for lf in list_files] + + ########## + # Test instantiation and basic fitting. + ########## + msc = align.MosaicSelfRef(lists, ref_index=0, iters=3, + dr_tol=[5, 3, 3], dm_tol=[1, 1, 0.5], outlier_tol=None, + trans_class=transforms.PolyTransform, + trans_args={'order': 2}, default_motion_model='Acceleration', + verbose=False) + + msc.fit() + + # Check some of the output quantities on the final table. + assert 'x0' in msc.ref_table.colnames + assert 'x0_err' in msc.ref_table.colnames + assert 'y0' in msc.ref_table.colnames + assert 'y0_err' in msc.ref_table.colnames + assert 'm0' in msc.ref_table.colnames + assert 'm0_err' in msc.ref_table.colnames + assert 'vx0' in msc.ref_table.colnames + assert 'vx0_err' in msc.ref_table.colnames + assert 'vy0' in msc.ref_table.colnames + assert 'vy0_err' in msc.ref_table.colnames + assert 'ax' in msc.ref_table.colnames + assert 'ax_err' in msc.ref_table.colnames + assert 'ay' in msc.ref_table.colnames + assert 'ay_err' in msc.ref_table.colnames + assert 't0' in msc.ref_table.colnames + + # Check that we have some matched stars... should be at least 35 stars + # that are detected in all 4 starlists. + idx = np.where(msc.ref_table['n_detect'] == 4)[0] + assert len(idx) > 35 + + # Check that the transformation error isn't too big + assert (msc.ref_table['x0_err'] < 3.0).all() # less than 1 pix + assert (msc.ref_table['y0_err'] < 3.0).all() + assert (msc.ref_table['m0_err'] < 1.0).all() # less than 0.5 mag + + # Check fit quality + for param in ['x0','y0','vx0','vy0','ax','ay']: + #np.testing.assert_almost_equal(msc.ref_table[param][:len(ref_list)], ref_list[param], 2) + print(param,np.transpose([msc.ref_table[param][:len(ref_list)], ref_list[param]])) + return''' def test_MosaicToRef(): @@ -246,7 +306,7 @@ def test_MosaicToRef(): dr_tol=[0.2, 0.1], dm_tol=[1, 0.5], trans_class=transforms.PolyTransform, trans_args={'order': 2}, use_vel=True, - update_ref_orig=False, verbose=False) + update_ref_orig=False, verbose=True) msc.fit() @@ -262,7 +322,6 @@ def test_MosaicToRef(): np.testing.assert_almost_equal(msc.ref_table['vx'], ref_list['vx'], 5) np.testing.assert_almost_equal(msc.ref_table['vy'], ref_list['vy'], 5) - ########## # Align and let velocities be free. ########## @@ -279,7 +338,6 @@ def test_MosaicToRef(): return msc -# TODO: Make this a valid test def test_MosaicToRef_acc(): make_fake_starlists_poly1_acc(seed=42) @@ -302,8 +360,8 @@ def test_MosaicToRef_acc(): # Convert accelerations to arcsec/yr**2 ref_list['ax'] *= 1e-3 ref_list['ay'] *= 1e-3 - ref_list['axe'] *= 1e-3 - ref_list['aye'] *= 1e-3 + ref_list['ax_err'] *= 1e-3 + ref_list['ay_err'] *= 1e-3 # Switch our list to a "increasing to the West" list. ref_list['x0'] *= -1.0 @@ -598,12 +656,16 @@ def make_fake_starlists_poly1_acc(seed=-1): # Propogate to new times and distort. ########## # Make 4 new starlists with different epochs and transformations. - times = [2018.5, 2019.5, 2020.5, 2021.5] + times = [2018.5, 2019.0, 2019.5, 2020.0, 2020.5, 2021.0, 2021.5, 2022.0] xy_trans = [[[ 6.5, 0.99, 1e-5], [ 10.1, 1e-5, 0.99]], [[100.3, 0.98, 1e-5], [ 50.5, 9e-6, 1.001]], - [[ 0.0, 1.00, 0.0], [ 0.0, 0.0, 1.0]], - [[250.0, 0.97, 2e-5], [-250.0, 1e-5, 1.001]]] - mag_trans = [0.1, 0.4, 0.0, -0.3] + [[ 0.0, 1.00, 0.0], [ 0.0, 0.0, 1.000]], + [[250.0, 0.97, 2e-5], [-250.0, 1e-5, 1.001]], + [[ 50.0, 1.01, 1e-5], [ -31.0, 1e-5, 1.000]], + [[ 78.0, 0.98, 0.0 ], [ 45.0, 9e-6, 1.001]], + [[-13.0, 0.99, 1e-5], [ 150, 2e-5, 1.002]], + [[ 94.0, 1.00, 9e-6], [-182.0, 0.0, 0.99]]] + mag_trans = [0.1, 0.4, 0.0, -0.3, 0.2, 0.0, -0.1, -0.3] # Convert into pixels (undistorted) with the following info. scale = 0.01 # arcsec / pix @@ -612,8 +674,8 @@ def make_fake_starlists_poly1_acc(seed=-1): for ss in range(len(times)): dt = times[ss] - lis['t0'] - x = lis['x0'] + (lis['vx0']/1e3) * dt + (lis['ax']/1e3) * dt**2 - y = lis['y0'] + (lis['vy0']/1e3) * dt + (lis['ay']/1e3) * dt**2 + x = lis['x0'] + (lis['vx0']/1e3) * dt + 0.5*(lis['ax']/1e3) * dt**2 + y = lis['y0'] + (lis['vy0']/1e3) * dt + 0.5*(lis['ay']/1e3) * dt**2 t = np.ones(N_stars) * times[ss] # Convert into pixels From be831f3af84fdf285c3e11f79425f32281b5d410 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 17 Dec 2024 14:53:47 -0800 Subject: [PATCH 027/124] motion model testing progress --- flystar/align.py | 23 +-- flystar/motion_model.py | 202 +++++++++++-------------- flystar/startables.py | 29 ++-- flystar/tests/test_align.py | 233 ++++++++++++++++++++++------- flystar/tests/test_motion_model.py | 31 +++- flystar/transforms.py | 11 +- 6 files changed, 334 insertions(+), 195 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index f8374f8..2d697b5 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -521,7 +521,7 @@ def match_and_transform(self, ref_mag_lim, dr_tol, dm_tol, outlier_tol, trans_ar ### Update the "average" values to be used as the reference frame for the next list. if self.update_ref_orig != 'periter': self.update_ref_table_aggregates() - + # Print out some metrics if self.verbose > 0: msg1 = ' {0:2s} (mean and std) for {1:10s}: {2:8.5f} +/- {3:8.5f}' @@ -837,23 +837,27 @@ def update_ref_table_aggregates(self, n_boot=0): if mm in self.ref_table.keys(): vals_orig[mm] = self.ref_table[mm][ref_orig_idx] - #if self.use_motion: - # Combine positions with a velocity fit. + #if 'motion_model_input' in self.ref_table.keys(): + # Combine positions with a velocity fit. + if 'vx' in self.ref_table.keys(): + print('before:',self.ref_table['vx'][:10]) self.ref_table.fit_velocities(bootstrap=n_boot, verbose=self.verbose, default_motion_model=self.default_motion_model) + print(np.unique(self.ref_table['motion_model_used'])) + if 'vx' in self.ref_table.keys(): + print('after:', self.ref_table['vx'][:10]) # Combine (transformed) magnitudes - # TODO: how does this work? if 'me' in self.ref_table.colnames: weights_col = None else: weights_col = 'me' self.ref_table.combine_lists('m', weights_col=weights_col, ismag=True) - '''else: - weighted_xy = ('xe' in self.ref_table.colnames) and ('ye' in self.ref_table.colnames) - weighted_m = ('me' in self.ref_table.colnames) + #else: + # weighted_xy = ('xe' in self.ref_table.colnames) and ('ye' in self.ref_table.colnames) + # weighted_m = ('me' in self.ref_table.colnames) - self.ref_table.combine_lists_xym(weighted_xy=weighted_xy, weighted_m=weighted_m)''' + # self.ref_table.combine_lists_xym(weighted_xy=weighted_xy, weighted_m=weighted_m) # Replace the originals if we are supposed to keep them fixed. if not self.update_ref_orig: for val in vals_orig.keys(): @@ -962,6 +966,7 @@ def get_ref_list_from_table(self, epoch): if ('motion_model_used' in self.ref_table.colnames): x,y,xe,ye = self.ref_table.get_star_positions_at_time(epoch) + #print('ref star pos',epoch,x,y) else: # No velocities... just used average positions. x = self.ref_table['x0'] @@ -3037,7 +3042,7 @@ def get_weighting_scheme(weights, ref_list, star_list): return weight -# TODO: I think this is a startable, not a starlist +# TODO: I think this is a startable, not a starlist, at least as currently used def get_pos_at_time(t, starlist): """ Take a starlist, check to see if it has motion/velocity columns. diff --git a/flystar/motion_model.py b/flystar/motion_model.py index a6726d3..ff9fbd5 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -5,6 +5,7 @@ from flystar import parallax from astropy.time import Time from scipy.optimize import curve_fit +import warnings class MotionModel(ABC): # Number of data points required to fit model @@ -18,6 +19,8 @@ class MotionModel(ABC): # Fixed parameters: These are parameters that are required for the model, but are not # fit quantities. For example, RA and Dec in a parallax model. fixed_param_names = [] + # TODO: for values that are for the full data set, not per star - are we happy with this method? + fixed_meta_data = [] # Non-fit paramters: Custom paramters that will not be fit. # These parameters should be derived from the fit parameters and @@ -44,8 +47,21 @@ def get_pos_err_at_time(self, t): def get_batch_pos_at_time(self, t): #return x, y, x_err, y_err pass + + def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): + # Run a single fit (used both for overall fit + bootstrap iterations) + pass + + def get_weights(self, xe, ye, weighting='var'): + if weighting=='std': + return 1./xe, 1./ye + elif weighting=='var': + return 1./xe**2, 1./ye**2 + else: + warnings.warn("Invalid weighting, using default weighting scheme var.", UserWarning) + return 1./xe**2, 1./ye**2 - def fit_motion_model(self, t, x, y, xe, ye, update=True): + def fit_motion_model(self, t, x, y, xe, ye, update=True, bootstrap=0, weighting='var'): """ Fit the input positions on the sky and errors to determine new parameters for this motion model (MM). @@ -53,10 +69,26 @@ def fit_motion_model(self, t, x, y, xe, ye, update=True): Best-fit parameters will be returned along with uncertainties and updated if update=True. """ - #return params, param_errors - pass + params, param_errs = self.run_fit(t, x, y, xe, ye, weighting=weighting, update=True) + + if bootstrap>0 and len(x)>(self.n_pts_req): + edx = np.arange(len(x), dtype=int) + bb_params = [] + for bb in range(bootstrap): + bdx = np.random.choice(edx, len(x)) + params_bdx, param_errs_bdx = self.run_fit(t[bdx], x[bdx], y[bdx], xe[bdx], ye[bdx], weighting=weighting, update=False) + bb_params.append(params_bdx) + + # Save the errors from the bootstrap + param_errs = np.std(bb_params, axis=0) + + if update: + for i in range(len(self.fitter_param_names)): + setattr(self, self.fitter_param_names[i]+'_err', param_errs[i]) + + return params, param_errs - def get_chi2(self,t,x,y,xe,ye): + def get_chi2(self,t,x,y,xe,ye,reduced=False): """ Get the chi^2 value for the current MM and the input data. @@ -65,6 +97,11 @@ def get_chi2(self,t,x,y,xe,ye): x_pred,y_pred = self.get_pos_at_time(t) chi2x = np.sum((x-x_pred)**2 / xe**2) chi2y = np.sum((y-y_pred)**2 / ye**2) + if reduced: + if len(t)==self.dof: + chi2x, chi2y = 0,0 + else: + chi2x, chi2y = chi2x/(len(x)-self.dof), chi2y/(len(x)-self.dof) return chi2x,chi2y class Fixed(MotionModel): @@ -110,16 +147,16 @@ def get_batch_pos_at_time(self,t, else: return x0,y0,x0_err,y0_err - def fit_motion_model(self, t, x, y, xe, ye, update=True, bootstrap=0): + def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): # Handle single data point case if len(x)==1: return [x[0],y[0]],[xe[0],ye[0]] - #TODO: it seems like sometimes it's weighted by std and sometimes by var - confirm which to do here - x0 = np.average(x, weights=1/xe**2) - x0e = np.sqrt(np.average((x-x0)**2,weights=1/xe**2)) - y0 = np.average(y, weights=1/ye**2) - y0e = np.sqrt(np.average((y-y0)**2,weights=1/ye**2)) + x_wt, y_wt = self.get_weights(xe,ye, weighting=weighting) + x0 = np.average(x, weights=x_wt) + x0e = np.sqrt(np.average((x-x0)**2,weights=x_wt)) + y0 = np.average(y, weights=y_wt) + y0e = np.sqrt(np.average((y-y0)**2,weights=y_wt)) params = [x0, y0] param_errors = [x0e, y0e] @@ -188,91 +225,62 @@ def get_batch_pos_at_time(self, t, y_err = np.hypot(y0_err, vy_err*dt) return x,y,x_err,y_err - def fit_motion_model(self, dt, x, y, xe, ye, update=True, bootstrap=0): + def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): fitter = fitting.LevMarLSQFitter() - + dt = t-self.t0 # Handle 2-data point case - # TODO: is this the best way to handle this case ? Altered it to be consistent with t0 if len(x)==2: ix = int(xe[0]>xe[1]) iy = int(ye[0]>ye[1]) dx = np.diff(x)[0] dy = np.diff(y)[0] - dt_diff = np.diff(dt)[0] - vx = dx / dt_diff - vy = dy / dt_diff - x0 = x[ix]-vx*dt[ix] - y0 = y[iy]-vy*dt[iy] - vxe = np.hypot(*xe)/dt_diff - vye = np.hypot(*ye)/dt_diff + t_diff = np.diff(t)[0] + vx = dx / t_diff + vy = dy / t_diff + x0 = x[ix]+vx*(-dt[ix]) + y0 = y[ix]+vy*(-dt[ix]) + vxe = np.hypot(*xe)/t_diff + vye = np.hypot(*ye)/t_diff x0e = np.sqrt(xe[ix]**2 + (dt[ix]*vxe)**2) y0e = np.sqrt(ye[iy]**2 + (dt[iy]*vye)**2) return [x0, vx, y0, vy],[x0e, vxe, y0e, vye] - px_new = fitter(self.px, dt, x, weights=1/xe) + x_wt, y_wt = self.get_weights(xe,ye, weighting=weighting) + px_new = fitter(self.px, dt, x, weights=x_wt) px_cov = fitter.fit_info['param_cov'] - py_new = fitter(self.py, dt, y, weights=1/ye) + py_new = fitter(self.py, dt, y, weights=y_wt) py_cov = fitter.fit_info['param_cov'] x0 = px_new.c0.value vx = px_new.c1.value y0 = py_new.c0.value vy = py_new.c1.value - - # Run the bootstrap - if bootstrap > 0: - edx = np.arange(len(x), dtype=int) - fit_x0_b = np.zeros(bootstrap, dtype=float) - fit_vx_b = np.zeros(bootstrap, dtype=float) - fit_y0_b = np.zeros(bootstrap, dtype=float) - fit_vy_b = np.zeros(bootstrap, dtype=float) - - for bb in range(bootstrap): - bdx = np.random.choice(edx, len(x)) - - px_b = fitter(self.px, dt[bdx], x[bdx], weights=1/xe[bdx]) - px_b_cov = fitter.fit_info['param_cov'] - py_b = fitter(self.py, dt[bdx], y[bdx], weights=1/ye[bdx]) - py_b_cov = fitter.fit_info['param_cov'] + px_param_errs = dict(zip(self.px.param_names, np.diag(px_cov)**0.5)) + py_param_errs = dict(zip(self.py.param_names, np.diag(py_cov)**0.5)) + x0e = px_param_errs['c0'] + vxe = px_param_errs['c1'] + y0e = py_param_errs['c0'] + vye = py_param_errs['c1'] - fit_x0_b[bb] = px_b.c0.value - fit_vx_b[bb] = px_b.c1.value - fit_y0_b[bb] = py_b.c0.value - fit_vy_b[bb] = py_b.c1.value - - # Save the errors from the bootstrap - x0e = fit_x0_b.std() - vxe = fit_vx_b.std() - y0e = fit_y0_b.std() - vye = fit_vy_b.std() - else: - px_param_errs = dict(zip(self.px.param_names, np.diag(px_cov)**0.5)) - py_param_errs = dict(zip(self.py.param_names, np.diag(py_cov)**0.5)) - x0e = px_param_errs['c0'] - vxe = px_param_errs['c1'] - y0e = py_param_errs['c0'] - vye = py_param_errs['c1'] + params = [x0, vx, y0, vy] + param_errors = [x0e, vxe, y0e, vye] if update: self.px = px_new self.py = py_new - self.x0 = x0 self.vx = vx self.y0 = y0 self.vy = vy - self.x0_err = x0e self.vx_err = vxe self.y0_err = y0e self.vy_err = vye - - params = [x0, vx, y0, vy] - param_errors = [x0e, vxe, y0e, vye] return params, param_errors - + + class Acceleration(MotionModel): """ A 2D accelerating motion model for a star on the sky. @@ -337,12 +345,14 @@ def get_batch_pos_at_time(self,t, y_err = np.sqrt(y0_err**2 + (vy0_err*dt)**2 + (0.5*ay_err*dt**2)**2) return x,y,x_err,y_err - def fit_motion_model(self, dt, x, y, xe, ye, update=True, bootstrap=0): + def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): fitter = fitting.LevMarLSQFitter() + dt = t-self.t0 + x_wt, y_wt = self.get_weights(xe,ye, weighting=weighting) - px_new = fitter(self.px, dt, x, weights=1/xe) + px_new = fitter(self.px, dt, x, weights=x_wt) px_cov = fitter.fit_info['param_cov'] - py_new = fitter(self.py, dt, y, weights=1/ye) + py_new = fitter(self.py, dt, y, weights=y_wt) py_cov = fitter.fit_info['param_cov'] x0 = px_new.c0.value @@ -351,61 +361,25 @@ def fit_motion_model(self, dt, x, y, xe, ye, update=True, bootstrap=0): y0 = py_new.c0.value vy0 = py_new.c1.value ay = py_new.c2.value - - # Run the bootstrap - if bootstrap > 0: - edx = np.arange(len(x), dtype=int) - - fit_x0_b = np.zeros(bootstrap, dtype=float) - fit_vx0_b = np.zeros(bootstrap, dtype=float) - fit_ax_b = np.zeros(bootstrap, dtype=float) - fit_y0_b = np.zeros(bootstrap, dtype=float) - fit_vy0_b = np.zeros(bootstrap, dtype=float) - fit_ay_b = np.zeros(bootstrap, dtype=float) - - for bb in range(bootstrap): - bdx = np.random.choice(edx, len(x)) - - px_b = fitter(self.px, dt[bdx], x[bdx], weights=1/xe[bdx]) - px_b_cov = fitter.fit_info['param_cov'] - py_b = fitter(self.py, dt[bdx], y[bdx], weights=1/ye[bdx]) - py_b_cov = fitter.fit_info['param_cov'] - - fit_x0_b[bb] = px_b.c0.value - fit_vx0_b[bb] = px_b.c1.value - fit_ax_b[bb] = px_b.c2.value - fit_y0_b[bb] = py_b.c0.value - fit_vy0_b[bb] = py_b.c1.value - fit_ay_b[bb] = py_b.c2.value - - # Save the errors from the bootstrap - x0e = fit_x0_b.std() - vx0e = fit_vx0_b.std() - axe = fit_ax_b.std() - y0e = fit_y0_b.std() - vy0e = fit_vy0_b.std() - aye = fit_ay_b.std() - else: - px_param_errs = dict(zip(self.px.param_names, np.diag(px_cov)**0.5)) - py_param_errs = dict(zip(self.py.param_names, np.diag(py_cov)**0.5)) - x0e = px_param_errs['c0'] - vx0e = px_param_errs['c1'] - axe = px_param_errs['c2'] - y0e = py_param_errs['c0'] - vy0e = py_param_errs['c1'] - aye = py_param_errs['c2'] + + px_param_errs = dict(zip(self.px.param_names, np.diag(px_cov)**0.5)) + py_param_errs = dict(zip(self.py.param_names, np.diag(py_cov)**0.5)) + x0e = px_param_errs['c0'] + vx0e = px_param_errs['c1'] + axe = px_param_errs['c2'] + y0e = py_param_errs['c0'] + vy0e = py_param_errs['c1'] + aye = py_param_errs['c2'] if update: self.px = px_new self.py = py_new - self.x0 = x0 self.vx0 = vx0 self.ax = ax self.y0 = y0 self.vy0 = vy0 self.ay = ay - self.x0_err = x0e self.vx0_err = vx0e self.ax_err = axe @@ -425,12 +399,13 @@ class Parallax(MotionModel): Requires RA, Dec, and PA parameters (degrees) for parallax calculation. RA, Dec in J2000 PA is counterclockwise offset of the image y-axis from North. - Optional obs parameter describing observer location, default is 'earth'. + Optional obs parameter describes observer location, default is 'earth'. """ n_pts_req = 4 dof=3 fitter_param_names = ['x0', 'vx', 'y0', 'vy', 'pi'] - fixed_param_names = ['t0', 'RA','Dec','PA','obs'] + fixed_param_names = ['t0'] + fixed_meta_data = ['RA','Dec','PA','obs'] def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025.0, x0_err=0, vx_err=0, y0_err=0, vy_err=0, @@ -492,13 +467,14 @@ def get_batch_pos_at_time(self, t, x_err,y_err = [],[] return x,y,x_err,y_err - def fit_motion_model(self, t, x, y, xe, ye, update=True): + def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): t_mjd = Time(t, format='decimalyear', scale='utc').mjd pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA).T + x_wt, y_wt = self.get_weights(xe,ye, weighting=weighting) def fit_func(t, x0,y0, vx,vy, pi): x_res = x0 + vx*(t-self.t0) + pi*pvec[0] y_res = y0 + vy*(t-self.t0) + pi*pvec[1] - diff = (x-x_res)**2/xe**2 + (y-y_res)**2/ye**2 + diff = (x-x_res)**2 * x_wt + (y-y_res)**2 * y_wt return diff # Initial guesses, x0,y0 as x,y averages; # vx,vy as average velocity if first and last points are perfectly measured; diff --git a/flystar/startables.py b/flystar/startables.py index 20f4263..dea27dc 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -178,8 +178,8 @@ def __init__(self, *args, ref_list=0, position_angle=None, RA=None, Dec=None, ob self['name_in_list'] = self['name_in_list'].astype('U20') if arg == 'motion_model_input': self['motion_model_input'] = self['motion_model_input'].astype('U20') - '''if 'motion_model' not in kwargs: - self['motion_model'] = np.repeat(default_motion_model, len(self['name']))''' + #if 'motion_model_input' not in kwargs: + # self['motion_model_input'] = np.repeat(self.default_motion_model, len(self['name'])) return @@ -247,7 +247,7 @@ def _add_list_data_from_starlist(self, starlist): # Meta table entries with a size that matches the n_lists size are the ones # that need a new value. We have to add something... whatever was passed in or None - if isinstance(self.meta[tab_key], collections.abc.Iterable) and (len(self.meta[tab_key]) == self.meta['n_lists']): + if isinstance(self.meta[tab_key], collections.abc.Iterable) and (len(self.meta[tab_key]) == self.meta['n_lists']) and (not isinstance(self.meta[tab_key], str)): # If we find the key in the starlists' meta argument, then add the new values. # Otherwise, add "None". @@ -304,7 +304,7 @@ def _add_list_data_from_keywords(self, **kwargs): for key in self.meta.keys(): # Meta table entries with a size that matches the n_lists size are the ones # that need a new value. We have to add something... whatever was passed in or None - if isinstance(self.meta[key], collections.abc.Iterable) and (len(self.meta[key]) == self.meta['n_lists']): + if isinstance(self.meta[key], collections.abc.Iterable) and (len(self.meta[key]) == self.meta['n_lists']) and (not isinstance(self.meta[key], str)): # If we find the key is the passed in meta argument, then add the new values. # Otherwise, add "None". if 'meta' in kwargs: @@ -641,7 +641,7 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b self['n_fit'] = 1 return - + # STARS LOOP through the stars and work on them 1 at a time. # This is slow; but robust. if show_progress: @@ -670,6 +670,11 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, # # Make a mask of invalid (NaN) values and a user-specified invalid value. # + + if ss==0: + print('first star') + print(' x', self['x'][ss, :].data) + x = np.ma.masked_invalid(self['x'][ss, :].data) y = np.ma.masked_invalid(self['y'][ss, :].data) if mask_val: @@ -797,7 +802,6 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, t0 = self.t0 else: t0 = fixed_t0[ss] - dt = t - t0 self['t0'][ss] = t0 self['n_fit'][ss] = N_good @@ -815,7 +819,7 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, (N_good < getattr(motion_model, default_motion_model).n_pts_req): motion_model_use = 'Fixed' # If the points do not cover multiple times, go to a fixed model - if (dt == dt[0]).all(): + if (t == t[0]).all(): motion_model_use = 'Fixed' self['motion_model_used'][ss] = motion_model_use @@ -829,8 +833,9 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, if ~np.isnan(self[par][ss]): param_dict[par] = self[par][ss] + # TODO: this doesn't match how we actually handle ra,dec,pa - need to adjust # Load fixed parameters, if needed. - for par in modClass.fixed_param_names: + '''for par in modClass.fixed_param_names: if par not in self.colnames: msg = f'fit_velocity_for_star: ' msg += f'Missing fixed_params column {par} needed for motion model {motion_model_use}.' @@ -838,14 +843,14 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, raise RuntimeException(msg) if self[par][ss] != np.nan: - param_dict[par] = self[par][ss] + param_dict[par] = self[par][ss]''' # Model object mod = modClass(**param_dict, PA=self.meta['position_angle'], RA=self.meta['RA'], Dec=self.meta['Dec'], obs=self.meta['observer_location']) # Fit for the best parameters - params, param_errs = mod.fit_motion_model(dt, x, y, xe, ye, bootstrap=bootstrap, update=True) - chi2_x,chi2_y = mod.get_chi2(dt,x,y,xe,ye) + params, param_errs = mod.fit_motion_model(t, x, y, xe, ye, bootstrap=bootstrap, update=True) + chi2_x,chi2_y = mod.get_chi2(t,x,y,xe,ye) self['chi2_x'][ss]=chi2_x self['chi2_y'][ss]=chi2_y @@ -882,7 +887,7 @@ def get_star_positions_at_time(self, t): param_dict = {} for par in motion_model.get_one_motion_model_param_names(mm,with_errors=True,with_fixed=True): param_dict[par] = self[par][idx] - mod = modClass() + mod = modClass(RA=self.meta['RA'], Dec=self.meta['Dec'], PA=self.meta['position_angle'], obs=self.meta['observer_location']) x[idx],y[idx],xe[idx],ye[idx] = mod.get_batch_pos_at_time(t,**param_dict) return x,y,xe,ye diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 6cd7abe..6926ec1 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -137,11 +137,7 @@ def test_MosaicSelfRef_vel_tconst(): np.testing.assert_almost_equal(msc.trans_list[ii].py.c0_1, 1.0, 2) # Check that the velocities aren't crazy... - # they should be zero (since there is no time difference) - # TODO: is there a reason these were both happening? seemed like a duplicate assert - #np.testing.assert_almost_equal(msc.ref_table['vx'], 0, 1) - #np.testing.assert_almost_equal(msc.ref_table['vy'], 0, 1) - + # they should be non-existent (since there is no time difference) assert np.isnan(msc.ref_table['vx']).all() assert np.isnan(msc.ref_table['vy']).all() assert np.isnan(msc.ref_table['vx_err']).all() @@ -177,7 +173,7 @@ def test_MosaicSelfRef_vel(): msc = align.MosaicSelfRef(lists, ref_index=0, iters=3, dr_tol=[5, 3, 3], dm_tol=[1, 1, 0.5], outlier_tol=None, trans_class=transforms.PolyTransform, - trans_args={'order': 2}, use_vel=True, + trans_args={'order': 2}, default_motion_model='Linear', verbose=False) msc.fit() @@ -280,13 +276,83 @@ def test_MosaicSelfRef_vel(): def test_MosaicToRef(): + make_fake_starlists_poly1(seed=42) + + ref_file = 'random_ref.fits' + list_files = ['random_0.fits', + 'random_1.fits', + 'random_2.fits', + 'random_3.fits', + 'random_4.fits', + 'random_5.fits', + 'random_6.fits', + 'random_7.fits'] + + ref_list = Table.read(ref_file) + + # Switch our list to a "increasing to the West" list. + ref_list['x0'] *= -1.0 + + lists = [starlists.StarList.read(lf) for lf in list_files] + + msc = align.MosaicToRef(ref_list, lists, iters=2, + dr_tol=[0.2, 0.1], dm_tol=[1, 0.5], + trans_class=transforms.PolyTransform, + trans_args={'order': 2}, default_motion_model='Fixed', + update_ref_orig=False, verbose=True) + + msc.fit() + + # Check our status columns + assert 'use_in_trans' in msc.ref_table.colnames + assert 'used_in_trans' in msc.ref_table.colnames + assert 'ref_orig' in msc.ref_table.colnames + assert msc.ref_table['use_in_trans'].shape == msc.ref_table['x0'].shape + assert msc.ref_table['used_in_trans'].shape == msc.ref_table['x'].shape + + # The velocities should be almost the same as the input + # velocities since update_ref_orig == False. + for i,star in enumerate(ref_list["name"]): + if star in msc.ref_table["name"]: + ii = np.where(msc.ref_table["name"]==star)[0][0] + np.testing.assert_almost_equal(msc.ref_table['x0'][ii], ref_list['x0'][i], 5) + np.testing.assert_almost_equal(msc.ref_table['y0'][ii], ref_list['y0'][i], 5) + + ########## + # Align and let velocities be free. + ########## + msc.update_ref_orig = True + msc.fit() + + # The velocities should be almost the same (but not as close as before) + # as the input velocities since update_ref == False. + for i,star in enumerate(ref_list["name"]): + if star in msc.ref_table["name"]: + ii = np.where(msc.ref_table["name"]==star)[0][0] + np.testing.assert_almost_equal(msc.ref_table['x0'][ii], ref_list['x0'][i], 1) + np.testing.assert_almost_equal(msc.ref_table['y0'][ii], ref_list['y0'][i], 1) + + # Also double check that they aren't exactly the same for the reference stars. + #assert np.any(np.not_equal(msc.ref_table['vx'], ref_list['vx'])) + for i,star in enumerate(ref_list["name"]): + if star in msc.ref_table["name"]: + ii = np.where(msc.ref_table["name"]==star)[0][0] + assert np.not_equal(msc.ref_table['x0'][ii], ref_list['x0'][i]) + + return msc + +def test_MosaicToRef_vel(): make_fake_starlists_poly1_vel(seed=42) ref_file = 'random_vel_ref.fits' list_files = ['random_vel_0.fits', 'random_vel_1.fits', 'random_vel_2.fits', - 'random_vel_3.fits'] + 'random_vel_3.fits', + 'random_vel_4.fits', + 'random_vel_5.fits', + 'random_vel_6.fits', + 'random_vel_7.fits'] ref_list = Table.read(ref_file) @@ -305,7 +371,7 @@ def test_MosaicToRef(): msc = align.MosaicToRef(ref_list, lists, iters=2, dr_tol=[0.2, 0.1], dm_tol=[1, 0.5], trans_class=transforms.PolyTransform, - trans_args={'order': 2}, use_vel=True, + trans_args={'order': 2}, default_motion_model='Linear', update_ref_orig=False, verbose=True) msc.fit() @@ -319,8 +385,11 @@ def test_MosaicToRef(): # The velocities should be almost the same as the input # velocities since update_ref_orig == False. - np.testing.assert_almost_equal(msc.ref_table['vx'], ref_list['vx'], 5) - np.testing.assert_almost_equal(msc.ref_table['vy'], ref_list['vy'], 5) + for i,star in enumerate(ref_list["name"]): + if star in msc.ref_table["name"]: + ii = np.where(msc.ref_table["name"]==star)[0][0] + np.testing.assert_almost_equal(msc.ref_table['vx'][ii], ref_list['vx'][i], 5) + np.testing.assert_almost_equal(msc.ref_table['vy'][ii], ref_list['vy'][i], 5) ########## # Align and let velocities be free. @@ -330,11 +399,18 @@ def test_MosaicToRef(): # The velocities should be almost the same (but not as close as before) # as the input velocities since update_ref == False. - np.testing.assert_almost_equal(msc.ref_table['vx'], ref_list['vx'], 1) - np.testing.assert_almost_equal(msc.ref_table['vy'], ref_list['vy'], 1) + for i,star in enumerate(ref_list["name"]): + if star in msc.ref_table["name"]: + ii = np.where(msc.ref_table["name"]==star)[0][0] + np.testing.assert_almost_equal(msc.ref_table['vx'][ii], ref_list['vx'][i], 1) + np.testing.assert_almost_equal(msc.ref_table['vy'][ii], ref_list['vy'][i], 1) # Also double check that they aren't exactly the same for the reference stars. - assert np.any(np.not_equal(msc.ref_table['vx'], ref_list['vx'])) + #assert np.any(np.not_equal(msc.ref_table['vx'], ref_list['vx'])) + for i,star in enumerate(ref_list["name"]): + if star in msc.ref_table["name"]: + ii = np.where(msc.ref_table["name"]==star)[0][0] + assert np.not_equal(msc.ref_table['vx'][ii], ref_list['vx'][i]) return msc @@ -345,7 +421,11 @@ def test_MosaicToRef_acc(): list_files = ['random_acc_0.fits', 'random_acc_1.fits', 'random_acc_2.fits', - 'random_acc_3.fits'] + 'random_acc_3.fits', + 'random_acc_4.fits', + 'random_acc_5.fits', + 'random_acc_6.fits', + 'random_acc_7.fits'] ref_list = Table.read(ref_file) print(ref_list.keys()) @@ -371,14 +451,13 @@ def test_MosaicToRef_acc(): lists = [starlists.StarList.read(lf) for lf in list_files] msc = align.MosaicToRef(ref_list, lists, iters=2, - dr_tol=[0.2, 0.1], dm_tol=[1, 0.5], + dr_tol=[0.4, 0.2], dm_tol=[1, 0.5], trans_class=transforms.PolyTransform, trans_args={'order': 2}, default_motion_model='Acceleration', update_ref_orig=False, verbose=False) msc.fit() - print(msc.ref_table['motion_model_input','motion_model_used']) # Check our status columns assert 'use_in_trans' in msc.ref_table.colnames @@ -389,9 +468,11 @@ def test_MosaicToRef_acc(): # The velocities should be almost the same as the input # velocities since update_ref_orig == False. - np.testing.assert_almost_equal(msc.ref_table['vx0'], ref_list['vx0'], 5) - np.testing.assert_almost_equal(msc.ref_table['vy0'], ref_list['vy0'], 5) - + for i,star in enumerate(ref_list["name"]): + if star in msc.ref_table["name"]: + ii = np.where(msc.ref_table["name"]==star)[0][0] + np.testing.assert_almost_equal(msc.ref_table['vx0'][ii], ref_list['vx0'][i], 5) + np.testing.assert_almost_equal(msc.ref_table['vy0'][ii], ref_list['vy0'][i], 5) ########## # Align and let velocities be free. @@ -401,8 +482,11 @@ def test_MosaicToRef_acc(): # The velocities should be almost the same (but not as close as before) # as the input velocities since update_ref == False. - np.testing.assert_almost_equal(msc.ref_table['vx0'], ref_list['vx0'], 1) - np.testing.assert_almost_equal(msc.ref_table['vy0'], ref_list['vy0'], 1) + for i,star in enumerate(ref_list["name"]): + if star in msc.ref_table["name"]: + ii = np.where(msc.ref_table["name"]==star)[0][0] + np.testing.assert_almost_equal(msc.ref_table['vx0'][ii], ref_list['vx0'][i], 1) + np.testing.assert_almost_equal(msc.ref_table['vy0'][ii], ref_list['vy0'][i], 1) # Also double check that they aren't exactly the same for the reference stars. assert np.any(np.not_equal(msc.ref_table['vx0'], ref_list['vx0'])) @@ -463,51 +547,85 @@ def make_fake_starlists_poly1(seed=-1): np.random.seed(seed=seed) N_stars = 200 - x = np.random.rand(N_stars) * 1000 - y = np.random.rand(N_stars) * 1000 - m = (np.random.rand(N_stars) * 8) + 9 - - sdx = np.argsort(m) - x = x[sdx] - y = y[sdx] - m = m[sdx] + + x0 = np.random.rand(N_stars) * 10.0 # arcsec (increasing to East) + y0 = np.random.rand(N_stars) * 10.0 # arcsec + x0e = np.random.randn(N_stars) * 5.0e-4 # arcsec + y0e = np.random.randn(N_stars) * 5.0e-4 # arcsec + m0 = (np.random.rand(N_stars) * 8) + 9 # mag + m0e = np.random.randn(N_stars) * 0.05 # mag + t0 = np.ones(N_stars) * 2019.5 + + # Make all the errors positive + x0e = np.abs(x0e) + y0e = np.abs(y0e) + m0e = np.abs(m0e) name = ['star_{0:03d}'.format(ii) for ii in range(N_stars)] - # Save original positions as reference (1st) list. - fmt = '{0:10s} {1:5.2f} 2015.0 {2:9.4f} {3:9.4f} 0 0 0 0\n' - _out = open('random_0.lis', 'w') - for ii in range(N_stars): - _out.write(fmt.format(name[ii], m[ii], x[ii], y[ii])) - _out.close() + # Make an StarList + lis = starlists.StarList([name, m0, m0e, x0, x0e, y0, y0e, t0], + names = ('name', 'm0', 'm0_err', 'x0', 'x0_err', 'y0', 'y0_err', 't0')) + + sdx = np.argsort(m0) + lis = lis[sdx] + # Save original positions as reference (1st) list + # in a StarList format (with velocities). + lis.write('random_ref.fits', overwrite=True) ########## # Shifts ########## # Make 4 new starlists with different shifts. - transforms = [[[ 6.5, 0.99, 1e-5], [ 10.1, 1e-5, 0.99]], - [[100.3, 0.98, 1e-5], [ 50.5, 9e-6, 1.001]], - [[-30.0, 1.00, 1e-5], [-100.7, 2e-5, 0.999]], - [[250.0, 0.97, 2e-5], [-250.0, 1e-5, 1.001]]] + times = [2018.5, 2019.0, 2019.5, 2020.0, 2020.5, 2021.0, 2021.5, 2022.0] + xy_trans = [[[ 6.5, 0.99, 1e-5], [ 10.1, 1e-5, 0.99]], + [[100.3, 0.98, 1e-5], [ 50.5, 9e-6, 1.001]], + [[ 0.0, 1.00, 0.0], [ 0.0, 0.0, 1.0]], + [[250.0, 0.97, 2e-5], [-250.0, 1e-5, 1.001]], + [[ 50.0, 1.01, 1e-5], [ -31.0, 1e-5, 1.000]], + [[ 78.0, 0.98, 0.0 ], [ 45.0, 9e-6, 1.001]], + [[-13.0, 0.99, 1e-5], [ 150, 2e-5, 1.002]], + [[ 94.0, 1.00, 9e-6], [-182.0, 0.0, 0.99]]] + mag_trans = [0.1, 0.4, 0.0, -0.3, 0.2, 0.0, -0.1, -0.3] + + # Convert into pixels (undistorted) with the following info. + scale = 0.01 # arcsec / pix + shift = [1.0, 1.0] # pix - for ss in range(len(shifts)): - #transforms.PolyTransform2D(1, transforms[ss]) - xnew = x - shifts[ss][0] - ynew = y - shifts[ss][1] + for ss in range(len(times)): + dt = times[ss] - lis['t0'] + + x = lis['x0'] + y = lis['y0'] + t = np.ones(N_stars) * times[ss] + + # Convert into pixels + xp = (x / -scale) + shift[0] # -1 from switching to increasing to West (right) + yp = (y / scale) + shift[1] + xpe = lis['x0_err'] / scale + ype = lis['y0_err'] / scale + + # Distort the positions + trans = transforms.PolyTransform(1, xy_trans[ss][0], xy_trans[ss][1], mag_offset=mag_trans[ss]) + xd, yd = trans.evaluate(xp, yp) + md = trans.evaluate_mag(lis['m0']) # Perturb with small errors (0.1 pix) - xnew += np.random.randn(N_stars) * 0.1 - ynew += np.random.randn(N_stars) * 0.1 + xd += np.random.randn(N_stars) * 0.1 + yd += np.random.randn(N_stars) * 0.1 + md += np.random.randn(N_stars) * 0.02 + xde = xpe + yde = ype + mde = lis['m0_err'] - mnew = m + np.random.randn(N_stars) * 0.05 + # Save the new list as a starlist. + new_lis = starlists.StarList([lis['name'], md, mde, xd, xde, yd, yde, t], + names=('name', 'm', 'me', 'x', 'xe', 'y', 'ye', 't')) - _out = open('random_shift_{0:d}.lis'.format(ss+1), 'w') - for ii in range(N_stars): - _out.write(fmt.format(name[ii], mnew[ii], xnew[ii], ynew[ii])) - _out.close() + new_lis.write('random_{0:d}.fits'.format(ss), overwrite=True) - return shifts + return (xy_trans,mag_trans) def make_fake_starlists_poly1_vel(seed=-1): @@ -554,12 +672,16 @@ def make_fake_starlists_poly1_vel(seed=-1): # Propogate to new times and distort. ########## # Make 4 new starlists with different epochs and transformations. - times = [2018.5, 2019.5, 2020.5, 2021.5] + times = [2018.5, 2019.0, 2019.5, 2020.0, 2020.5, 2021.0, 2021.5, 2022.0] xy_trans = [[[ 6.5, 0.99, 1e-5], [ 10.1, 1e-5, 0.99]], [[100.3, 0.98, 1e-5], [ 50.5, 9e-6, 1.001]], [[ 0.0, 1.00, 0.0], [ 0.0, 0.0, 1.0]], - [[250.0, 0.97, 2e-5], [-250.0, 1e-5, 1.001]]] - mag_trans = [0.1, 0.4, 0.0, -0.3] + [[250.0, 0.97, 2e-5], [-250.0, 1e-5, 1.001]], + [[ 50.0, 1.01, 1e-5], [ -31.0, 1e-5, 1.000]], + [[ 78.0, 0.98, 0.0 ], [ 45.0, 9e-6, 1.001]], + [[-13.0, 0.99, 1e-5], [ 150, 2e-5, 1.002]], + [[ 94.0, 1.00, 9e-6], [-182.0, 0.0, 0.99]]] + mag_trans = [0.1, 0.4, 0.0, -0.3, 0.2, 0.0, -0.1, -0.3] # Convert into pixels (undistorted) with the following info. scale = 0.01 # arcsec / pix @@ -582,6 +704,7 @@ def make_fake_starlists_poly1_vel(seed=-1): trans = transforms.PolyTransform(1, xy_trans[ss][0], xy_trans[ss][1], mag_offset=mag_trans[ss]) xd, yd = trans.evaluate(xp, yp) md = trans.evaluate_mag(lis['m0']) + print([xd-xp]) # Perturb with small errors (0.1 pix) xd += np.random.randn(N_stars) * 0.1 @@ -593,7 +716,7 @@ def make_fake_starlists_poly1_vel(seed=-1): # Save the new list as a starlist. new_lis = starlists.StarList([lis['name'], md, mde, xd, xde, yd, yde, t], - names=('name', 'm', 'm_err', 'x', 'x_err', 'y', 'y_err', 't')) + names=('name', 'm', 'me', 'x', 'xe', 'y', 'ye', 't')) new_lis.write('random_vel_{0:d}.fits'.format(ss), overwrite=True) diff --git a/flystar/tests/test_motion_model.py b/flystar/tests/test_motion_model.py index d221a29..4fe703f 100755 --- a/flystar/tests/test_motion_model.py +++ b/flystar/tests/test_motion_model.py @@ -122,6 +122,35 @@ def test_Linear(): # Run fit mod_fit = motion_model.Linear() params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) + print(param_errs) + # Confirm true value is within error bar of fit value + assert [within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))] + + # Test fitter with bootstrap + t = np.arange(2015.0,2025.0, 0.5) + # Get values from model and add scatter + x_true, y_true = mod_true.get_pos_at_time(t) + x_true_err, y_true_err = mod_true.get_pos_err_at_time(t) + x_sim = np.random.normal(x_true, x_true_err) + y_sim = np.random.normal(y_true, y_true_err) + # Run fit + mod_fit = motion_model.Linear() + params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err,bootstrap=10) + print(param_errs) + # Confirm true value is within error bar of fit value + assert [within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))] + + # Test fitter for 2 pts + t = np.array([2015.0,2025.0]) + # Get values from model and add scatter + x_true, y_true = mod_true.get_pos_at_time(t) + x_true_err, y_true_err = mod_true.get_pos_err_at_time(t) + x_sim = np.random.normal(x_true, x_true_err) + y_sim = np.random.normal(y_true, y_true_err) + # Run fit + mod_fit = motion_model.Linear() + params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) + print(param_errs) # Confirm true value is within error bar of fit value assert [within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))] @@ -223,7 +252,7 @@ def test_Parallax(): params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) # Confirm true value is within error bar of fit value assert [within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))] - + def test_Parallax_PA(): # Set PA=0 model diff --git a/flystar/transforms.py b/flystar/transforms.py index 2bb80d3..b4f7a2d 100755 --- a/flystar/transforms.py +++ b/flystar/transforms.py @@ -273,14 +273,14 @@ def __init__(self, order, px, py, pxerr=None, pyerr=None, mag_offset=0.0): Parameters ---------- - px : list or array [a0, a1, a2, ...] + order : int + The order of the transformation. 0 = 2 free parameters, 1 = 6 free parameters. + + px : list or array [a0, a1, a2, ...] coefficients to transform input x coordinates into output x' coordinates. py : list or array [b0, b1, b2, ...] coefficients to transform input y coordinates into output y' coordinates. - - order : int - The order of the transformation. 0 = 2 free parameters, 1 = 6 free parameters. pxerr : array or list array or list of errors of the coefficients to transform input x coordinates @@ -331,7 +331,7 @@ def make_param_dict(initial_param, order, isY=False): a0 + a1*x + a2*y + a3*x^2 + a4*x*y + a5*y^2 + a6*x^3 + a7*x^2*y + a8*x*y^2 + a9*y^3 - and conver this into a dictionary where: + and convert this into a dictionary where: c0_0 = a0 c1_0 = a1 @@ -611,6 +611,7 @@ def derive_transform(cls, x, y, xref, yref, order, m=None, mref=None, fit_p = fitting.LinearLSQFitter() + #pdb.set_trace() px = fit_p(p_init_x, x, y, xref, weights=weights) py = fit_p(p_init_y, x, y, yref, weights=weights) From fea26125c58f484430f7ca2c3b714c11325c1745 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 18 Dec 2024 10:09:13 -0800 Subject: [PATCH 028/124] check in testing progress --- flystar/align.py | 12 +++---- flystar/startables.py | 22 +++++++++--- flystar/tests/test_align.py | 69 +++++++++++++++++-------------------- 3 files changed, 53 insertions(+), 50 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 2d697b5..477989a 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -646,7 +646,6 @@ def setup_ref_table_from_starlist(self, star_list): # Some munging to convert data shape from (N,1) to (N,), # since these are all 1D cols vals = np.transpose(np.array(ref_table[orig_err_cols[ii]]))[0] - # Now add to ref_table new_col = Column(vals, name=new_err_cols[ii]) ref_table.add_column(new_col) @@ -837,14 +836,13 @@ def update_ref_table_aggregates(self, n_boot=0): if mm in self.ref_table.keys(): vals_orig[mm] = self.ref_table[mm][ref_orig_idx] - #if 'motion_model_input' in self.ref_table.keys(): # Combine positions with a velocity fit. - if 'vx' in self.ref_table.keys(): - print('before:',self.ref_table['vx'][:10]) + #if 'vx' in self.ref_table.keys(): + #print('before:',self.ref_table['vx'][:10]) self.ref_table.fit_velocities(bootstrap=n_boot, verbose=self.verbose, default_motion_model=self.default_motion_model) - print(np.unique(self.ref_table['motion_model_used'])) - if 'vx' in self.ref_table.keys(): - print('after:', self.ref_table['vx'][:10]) + #print(np.unique(self.ref_table['motion_model_used'])) + #if 'vx' in self.ref_table.keys(): + #print('after:', self.ref_table['vx'][:10]) # Combine (transformed) magnitudes if 'me' in self.ref_table.colnames: diff --git a/flystar/startables.py b/flystar/startables.py index dea27dc..f6f6382 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -578,6 +578,15 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b KeyError If there's not time information in the table """ + + ss=0 + print('first star') + print(' x', self['x'][ss, :].data) + print(' y', self['y'][ss, :].data) + if 'vx' in self.keys(): + print(' vx', self['vx'][ss]) + print(' vy', self['vy'][ss]) + if weighting not in ['var', 'std']: raise ValueError(f"fit_velocities: Weighting must either be 'var' or 'std', not {weighting}!") @@ -612,7 +621,7 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b for col in new_col_list: # Clean/remove up old arrays. if col in self.colnames: self.remove_column(col) - # Add column + # Add column #TODO: is this good for filling??? self.add_column(Column(data = np.full(N_stars, np.nan, dtype=float), name = col)) # Add a column to keep track of the number of points used in a fit. @@ -671,10 +680,6 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, # Make a mask of invalid (NaN) values and a user-specified invalid value. # - if ss==0: - print('first star') - print(' x', self['x'][ss, :].data) - x = np.ma.masked_invalid(self['x'][ss, :].data) y = np.ma.masked_invalid(self['y'][ss, :].data) if mask_val: @@ -783,6 +788,7 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, # Catch the case where there is NO good data. if N_good == 0: + #self['motion_model_used'][ss] = 'None' return # Everything below has N_good >= 1 @@ -854,6 +860,8 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, self['chi2_x'][ss]=chi2_x self['chi2_y'][ss]=chi2_y + #print('N good', N_good, motion_model_use, params) + # Save parameters and errors to table. for pp in range(len(modClass.fitter_param_names)): par = modClass.fitter_param_names[pp] @@ -878,10 +886,12 @@ def get_star_positions_at_time(self, t): # Check which motion models we need # use complex_mms to collect models besides Fixed and Linear unique_mms = np.unique(self['motion_model_used']).tolist() + print(list(self['motion_model_used'])) # Calculate current position in batches by motion model for mm in unique_mms: # Identify stars with this model & get class idx = np.where(self['motion_model_used']==mm)[0] + print(mm,'idx',idx) modClass = getattr(motion_model, mm) # Set up parameters param_dict = {} @@ -889,6 +899,8 @@ def get_star_positions_at_time(self, t): param_dict[par] = self[par][idx] mod = modClass(RA=self.meta['RA'], Dec=self.meta['Dec'], PA=self.meta['position_angle'], obs=self.meta['observer_location']) x[idx],y[idx],xe[idx],ye[idx] = mod.get_batch_pos_at_time(t,**param_dict) + print('all x',x) + print('nans:', np.sum(np.isnan(x))) return x,y,xe,ye diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 6926ec1..602ae9c 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -58,8 +58,8 @@ def test_MosaicSelfRef(): # Check that the transformation lists aren't too wacky for ii in range(4): - np.testing.assert_almost_equal(msc.trans_list[ii].px.c1_0, 1.0, 2) - np.testing.assert_almost_equal(msc.trans_list[ii].py.c0_1, 1.0, 2) + np.testing.assert_allclose(msc.trans_list[ii].px.c1_0, 1.0, rtol=1e-2) + np.testing.assert_allclose(msc.trans_list[ii].py.c0_1, 1.0, rtol=1e-2) # We didn't do any velocity fitting, so make sure nothing got created. assert 'vx' not in msc.ref_table.colnames assert 'vy' not in msc.ref_table.colnames @@ -133,8 +133,8 @@ def test_MosaicSelfRef_vel_tconst(): # Check that the transformation lists aren't too wacky for ii in range(4): - np.testing.assert_almost_equal(msc.trans_list[ii].px.c1_0, 1.0, 2) - np.testing.assert_almost_equal(msc.trans_list[ii].py.c0_1, 1.0, 2) + np.testing.assert_allclose(msc.trans_list[ii].px.c1_0, 1.0, rtol=1e-2) + np.testing.assert_allclose(msc.trans_list[ii].py.c0_1, 1.0, rtol=1e-2) # Check that the velocities aren't crazy... # they should be non-existent (since there is no time difference) @@ -203,9 +203,8 @@ def test_MosaicSelfRef_vel(): # Check that the transformation lists aren't too wacky for ii in range(4): - np.testing.assert_almost_equal(msc.trans_list[ii].px.c1_0, 1.0, 2) - np.testing.assert_almost_equal(msc.trans_list[ii].py.c0_1, 1.0, 2) - + np.testing.assert_allclose(msc.trans_list[ii].px.c1_0, 1.0, rtol=1e-2) + np.testing.assert_allclose(msc.trans_list[ii].py.c0_1, 1.0, rtol=1e-2) plt.clf() plt.plot(msc.ref_table['vx'], @@ -299,7 +298,7 @@ def test_MosaicToRef(): dr_tol=[0.2, 0.1], dm_tol=[1, 0.5], trans_class=transforms.PolyTransform, trans_args={'order': 2}, default_motion_model='Fixed', - update_ref_orig=False, verbose=True) + update_ref_orig=False, verbose=False) msc.fit() @@ -312,11 +311,8 @@ def test_MosaicToRef(): # The velocities should be almost the same as the input # velocities since update_ref_orig == False. - for i,star in enumerate(ref_list["name"]): - if star in msc.ref_table["name"]: - ii = np.where(msc.ref_table["name"]==star)[0][0] - np.testing.assert_almost_equal(msc.ref_table['x0'][ii], ref_list['x0'][i], 5) - np.testing.assert_almost_equal(msc.ref_table['y0'][ii], ref_list['y0'][i], 5) + np.testing.assert_allclose(msc.ref_table['x0'], ref_list['x0'], rtol=1e-5) + np.testing.assert_allclose(msc.ref_table['y0'], ref_list['y0'], rtol=1e-5) ########## # Align and let velocities be free. @@ -326,18 +322,12 @@ def test_MosaicToRef(): # The velocities should be almost the same (but not as close as before) # as the input velocities since update_ref == False. - for i,star in enumerate(ref_list["name"]): - if star in msc.ref_table["name"]: - ii = np.where(msc.ref_table["name"]==star)[0][0] - np.testing.assert_almost_equal(msc.ref_table['x0'][ii], ref_list['x0'][i], 1) - np.testing.assert_almost_equal(msc.ref_table['y0'][ii], ref_list['y0'][i], 1) + np.testing.assert_allclose(msc.ref_table['x0'], ref_list['x0'], rtol=1e-1) + np.testing.assert_allclose(msc.ref_table['y0'], ref_list['y0'], rtol=1e-1) # Also double check that they aren't exactly the same for the reference stars. - #assert np.any(np.not_equal(msc.ref_table['vx'], ref_list['vx'])) - for i,star in enumerate(ref_list["name"]): - if star in msc.ref_table["name"]: - ii = np.where(msc.ref_table["name"]==star)[0][0] - assert np.not_equal(msc.ref_table['x0'][ii], ref_list['x0'][i]) + assert np.not_equal(msc.ref_table['x0'], ref_list['x0']).all() + assert np.not_equal(msc.ref_table['y0'], ref_list['y0']).all() return msc @@ -367,13 +357,13 @@ def test_MosaicToRef_vel(): ref_list['vx'] *= -1.0 lists = [starlists.StarList.read(lf) for lf in list_files] + print(ref_list[['x0','vx']]) msc = align.MosaicToRef(ref_list, lists, iters=2, dr_tol=[0.2, 0.1], dm_tol=[1, 0.5], trans_class=transforms.PolyTransform, trans_args={'order': 2}, default_motion_model='Linear', - update_ref_orig=False, verbose=True) - + update_ref_orig=False, verbose=False) msc.fit() # Check our status columns @@ -388,22 +378,25 @@ def test_MosaicToRef_vel(): for i,star in enumerate(ref_list["name"]): if star in msc.ref_table["name"]: ii = np.where(msc.ref_table["name"]==star)[0][0] - np.testing.assert_almost_equal(msc.ref_table['vx'][ii], ref_list['vx'][i], 5) - np.testing.assert_almost_equal(msc.ref_table['vy'][ii], ref_list['vy'][i], 5) + np.testing.assert_allclose(msc.ref_table['vx'][ii], ref_list['vx'][i], rtol=1e-5) + np.testing.assert_allclose(msc.ref_table['vy'][ii], ref_list['vy'][i], rtol=1e-5) ########## # Align and let velocities be free. ########## msc.update_ref_orig = True msc.fit() + + print(msc.ref_table[['name','vx']][:10]) + print(ref_list['name','vx'][:10]) # The velocities should be almost the same (but not as close as before) # as the input velocities since update_ref == False. for i,star in enumerate(ref_list["name"]): if star in msc.ref_table["name"]: ii = np.where(msc.ref_table["name"]==star)[0][0] - np.testing.assert_almost_equal(msc.ref_table['vx'][ii], ref_list['vx'][i], 1) - np.testing.assert_almost_equal(msc.ref_table['vy'][ii], ref_list['vy'][i], 1) + np.testing.assert_allclose(msc.ref_table['vx'][ii], ref_list['vx'][i], rtol=1e-1) + np.testing.assert_allclose(msc.ref_table['vy'][ii], ref_list['vy'][i], rtol=1e-1) # Also double check that they aren't exactly the same for the reference stars. #assert np.any(np.not_equal(msc.ref_table['vx'], ref_list['vx'])) @@ -471,8 +464,8 @@ def test_MosaicToRef_acc(): for i,star in enumerate(ref_list["name"]): if star in msc.ref_table["name"]: ii = np.where(msc.ref_table["name"]==star)[0][0] - np.testing.assert_almost_equal(msc.ref_table['vx0'][ii], ref_list['vx0'][i], 5) - np.testing.assert_almost_equal(msc.ref_table['vy0'][ii], ref_list['vy0'][i], 5) + np.testing.assert_allclose(msc.ref_table['vx0'][ii], ref_list['vx0'][i], rtol=1e-5) + np.testing.assert_allclose(msc.ref_table['vy0'][ii], ref_list['vy0'][i], rtol=1e-5) ########## # Align and let velocities be free. @@ -485,8 +478,8 @@ def test_MosaicToRef_acc(): for i,star in enumerate(ref_list["name"]): if star in msc.ref_table["name"]: ii = np.where(msc.ref_table["name"]==star)[0][0] - np.testing.assert_almost_equal(msc.ref_table['vx0'][ii], ref_list['vx0'][i], 1) - np.testing.assert_almost_equal(msc.ref_table['vy0'][ii], ref_list['vy0'][i], 1) + np.testing.assert_allclose(msc.ref_table['vx0'][ii], ref_list['vx0'][i], rtol=1e-1) + np.testing.assert_allclose(msc.ref_table['vy0'][ii], ref_list['vy0'][i], rtol=1e-1) # Also double check that they aren't exactly the same for the reference stars. assert np.any(np.not_equal(msc.ref_table['vx0'], ref_list['vx0'])) @@ -677,11 +670,11 @@ def make_fake_starlists_poly1_vel(seed=-1): [[100.3, 0.98, 1e-5], [ 50.5, 9e-6, 1.001]], [[ 0.0, 1.00, 0.0], [ 0.0, 0.0, 1.0]], [[250.0, 0.97, 2e-5], [-250.0, 1e-5, 1.001]], - [[ 50.0, 1.01, 1e-5], [ -31.0, 1e-5, 1.000]], - [[ 78.0, 0.98, 0.0 ], [ 45.0, 9e-6, 1.001]], - [[-13.0, 0.99, 1e-5], [ 150, 2e-5, 1.002]], - [[ 94.0, 1.00, 9e-6], [-182.0, 0.0, 0.99]]] - mag_trans = [0.1, 0.4, 0.0, -0.3, 0.2, 0.0, -0.1, -0.3] + [[ 50.0, 1.00, 0.0], [ -31.0, 0.0, 1.000]], + [[ 78.0, 1.00, 0.0 ], [ 45.0, 0.0, 1.00]], + [[-13.0, 1.00, 0.0], [ 150, 0.0, 1.00]], + [[ 94.0, 1.00, 0.0], [-182.0, 0.0, 1.00]]] + mag_trans = [0.1, 0.4, 0.0, -0.3, 0.0, 0.0, 0.0, 0.0] # Convert into pixels (undistorted) with the following info. scale = 0.01 # arcsec / pix From a9e3f9e367f1e370abc38677155a5272a8082310 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 18 Dec 2024 10:30:57 -0800 Subject: [PATCH 029/124] test debugging --- flystar/analysis.py | 12 ++++++------ flystar/conftest.py | 4 ++-- flystar/tests/test_align.py | 24 +++++++++++++++++------- 3 files changed, 25 insertions(+), 15 deletions(-) diff --git a/flystar/analysis.py b/flystar/analysis.py index e0696fc..931723f 100644 --- a/flystar/analysis.py +++ b/flystar/analysis.py @@ -173,13 +173,13 @@ def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2) gaia_new['vye'][idx] = 0.0 #macy additions to try to fix wild magnitude values - gaia_new['ruwe'] = gaia['ruwe'] - try: - gaia_new = gaia_new[~gaia_new['m'].mask] - except: - print('no invalig mags') + #gaia_new['ruwe'] = gaia['ruwe'] + #try: + # gaia_new = gaia_new[~gaia_new['m'].mask] + #except: + # print('no invalig mags') - gaia_new = gaia_new.filled() #convert masked colunms to regular columns + #gaia_new = gaia_new.filled() #convert masked colunms to regular columns if targets_dict != None: for targ_name, targ_coo in targets_dict.items(): diff --git a/flystar/conftest.py b/flystar/conftest.py index 672b273..da164b5 100644 --- a/flystar/conftest.py +++ b/flystar/conftest.py @@ -31,9 +31,9 @@ def pytest_configure(config): PYTEST_HEADER_MODULES.pop('Pandas', None) PYTEST_HEADER_MODULES['scikit-image'] = 'skimage' - from . import __version__ + #from . import __version__ packagename = os.path.basename(os.path.dirname(__file__)) - TESTED_VERSIONS[packagename] = __version__ + #TESTED_VERSIONS[packagename] = __version__ # Uncomment the last two lines in this block to treat all DeprecationWarnings as # exceptions. For Astropy v2.0 or later, there are 2 additional keywords, diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 026a8b1..ef8f55f 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -254,9 +254,8 @@ def test_MosaicToRef(): # The velocities should be almost the same as the input # velocities since update_ref_orig == False. - np.testing.assert_almost_equal(msc.ref_table['vx'], ref_list['vx'], 5) - np.testing.assert_almost_equal(msc.ref_table['vy'], ref_list['vy'], 5) - + np.testing.assert_allclose(msc.ref_table['vx'], ref_list['vx'], rtol=1e-5) + np.testing.assert_allclose(msc.ref_table['vy'], ref_list['vy'], rtol=1e-5) ########## # Align and let velocities be free. @@ -266,8 +265,8 @@ def test_MosaicToRef(): # The velocities should be almost the same (but not as close as before) # as the input velocities since update_ref == False. - np.testing.assert_almost_equal(msc.ref_table['vx'], ref_list['vx'], 1) - np.testing.assert_almost_equal(msc.ref_table['vy'], ref_list['vy'], 1) + np.testing.assert_allclose(msc.ref_table['vx'], ref_list['vx'], rtol=1e-1) + np.testing.assert_allclose(msc.ref_table['vy'], ref_list['vy'], rtol=1e-1) # Also double check that they aren't exactly the same for the reference stars. assert np.any(np.not_equal(msc.ref_table['vx'], ref_list['vx'])) @@ -419,12 +418,23 @@ def make_fake_starlists_poly1_vel(seed=-1): # Propogate to new times and distort. ########## # Make 4 new starlists with different epochs and transformations. - times = [2018.5, 2019.5, 2020.5, 2021.5] + '''times = [2018.5, 2019.5, 2020.5, 2021.5] xy_trans = [[[ 6.5, 0.99, 1e-5], [ 10.1, 1e-5, 0.99]], [[100.3, 0.98, 1e-5], [ 50.5, 9e-6, 1.001]], [[ 0.0, 1.00, 0.0], [ 0.0, 0.0, 1.0]], [[250.0, 0.97, 2e-5], [-250.0, 1e-5, 1.001]]] - mag_trans = [0.1, 0.4, 0.0, -0.3] + mag_trans = [0.1, 0.4, 0.0, -0.3]''' + + times = [2018.5, 2019.0, 2019.5, 2020.0, 2020.5, 2021.0, 2021.5, 2022.0] + xy_trans = [[[ 6.5, 0.99, 1e-5], [ 10.1, 1e-5, 0.99]], + [[100.3, 0.98, 1e-5], [ 50.5, 9e-6, 1.001]], + [[ 0.0, 1.00, 0.0], [ 0.0, 0.0, 1.0]], + [[250.0, 0.97, 2e-5], [-250.0, 1e-5, 1.001]], + [[ 50.0, 1.00, 0.0], [ -31.0, 0.0, 1.000]], + [[ 78.0, 1.00, 0.0 ], [ 45.0, 0.0, 1.00]], + [[-13.0, 1.00, 0.0], [ 150, 0.0, 1.00]], + [[ 94.0, 1.00, 0.0], [-182.0, 0.0, 1.00]]] + mag_trans = [0.1, 0.4, 0.0, -0.3, 0.0, 0.0, 0.0, 0.0] # Convert into pixels (undistorted) with the following info. scale = 0.01 # arcsec / pix From 4eb7cacee07a475e4b9ea2b14fa8aba649e4d173 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 18 Dec 2024 14:34:31 -0800 Subject: [PATCH 030/124] motion model debugging --- flystar/motion_model.py | 119 +++++++++++------------------ flystar/tests/test_motion_model.py | 4 +- 2 files changed, 47 insertions(+), 76 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index ff9fbd5..37f1b6e 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -1,4 +1,3 @@ -from astropy.modeling import models, fitting import numpy as np from abc import ABC import pdb @@ -150,13 +149,14 @@ def get_batch_pos_at_time(self,t, def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): # Handle single data point case if len(x)==1: - return [x[0],y[0]],[xe[0],ye[0]] + x0,y0,x0e,y0e = x[0],y[0],xe[0],ye[0] - x_wt, y_wt = self.get_weights(xe,ye, weighting=weighting) - x0 = np.average(x, weights=x_wt) - x0e = np.sqrt(np.average((x-x0)**2,weights=x_wt)) - y0 = np.average(y, weights=y_wt) - y0e = np.sqrt(np.average((y-y0)**2,weights=y_wt)) + else: + x_wt, y_wt = self.get_weights(xe,ye, weighting=weighting) + x0 = np.average(x, weights=x_wt) + x0e = np.sqrt(np.average((x-x0)**2,weights=x_wt)) + y0 = np.average(y, weights=y_wt) + y0e = np.sqrt(np.average((y-y0)**2,weights=y_wt)) params = [x0, y0] param_errors = [x0e, y0e] @@ -168,7 +168,7 @@ def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): self.y0_err = y0e return params, param_errors - + class Linear(MotionModel): """ A 2D linear motion model for a star on the sky. @@ -193,10 +193,6 @@ def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025.0, # Must call after setting parameters. # This checks for proper parameter formatting. super().__init__() - - self.poly_order = 1 - self.px = models.Polynomial1D(self.poly_order, c0=self.x0, c1=self.vx) - self.py = models.Polynomial1D(self.poly_order, c0=self.y0, c1=self.vy) return @@ -226,49 +222,39 @@ def get_batch_pos_at_time(self, t, return x,y,x_err,y_err def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): - fitter = fitting.LevMarLSQFitter() dt = t-self.t0 + x_wt, y_wt = self.get_weights(xe,ye, weighting=weighting) + # Handle 2-data point case if len(x)==2: - ix = int(xe[0]>xe[1]) - iy = int(ye[0]>ye[1]) dx = np.diff(x)[0] dy = np.diff(y)[0] - t_diff = np.diff(t)[0] - vx = dx / t_diff - vy = dy / t_diff - x0 = x[ix]+vx*(-dt[ix]) - y0 = y[ix]+vy*(-dt[ix]) - vxe = np.hypot(*xe)/t_diff - vye = np.hypot(*ye)/t_diff - x0e = np.sqrt(xe[ix]**2 + (dt[ix]*vxe)**2) - y0e = np.sqrt(ye[iy]**2 + (dt[iy]*vye)**2) - return [x0, vx, y0, vy],[x0e, vxe, y0e, vye] + dt_diff = np.diff(dt)[0] + vx = dx / dt_diff + vy = dy / dt_diff + x0 = np.average(x, weights=x_wt) + y0 = np.average(y, weights=y_wt) + vxe = 0.0 + vye = 0.0 + x0e = np.abs(dx) / 2**0.5 + y0e = np.abs(dy) /2 **0.5 - x_wt, y_wt = self.get_weights(xe,ye, weighting=weighting) - px_new = fitter(self.px, dt, x, weights=x_wt) - px_cov = fitter.fit_info['param_cov'] - py_new = fitter(self.py, dt, y, weights=y_wt) - py_cov = fitter.fit_info['param_cov'] - - x0 = px_new.c0.value - vx = px_new.c1.value - y0 = py_new.c0.value - vy = py_new.c1.value - - px_param_errs = dict(zip(self.px.param_names, np.diag(px_cov)**0.5)) - py_param_errs = dict(zip(self.py.param_names, np.diag(py_cov)**0.5)) - x0e = px_param_errs['c0'] - vxe = px_param_errs['c1'] - y0e = py_param_errs['c0'] - vye = py_param_errs['c1'] + else: + def linear(t, c0, c1): + return c0 + c1*t + x_opt, x_cov = curve_fit(linear, dt, x, p0=np.array([x.mean(),0.0]), sigma=1/x_wt, absolute_sigma=True) + y_opt, y_cov = curve_fit(linear, dt, y, p0=np.array([y.mean(),0.0]), sigma=1/y_wt, absolute_sigma=True) + x0 = x_opt[0] + vx = x_opt[1] + y0 = y_opt[0] + vy = y_opt[1] + x0e, vxe = np.sqrt(x_cov.diagonal()) + y0e, vye = np.sqrt(y_cov.diagonal()) params = [x0, vx, y0, vy] param_errors = [x0e, vxe, y0e, vye] if update: - self.px = px_new - self.py = py_new self.x0 = x0 self.vx = vx self.y0 = y0 @@ -309,17 +295,12 @@ def __init__(self, x0=0, vx0=0, ax=0, y0=0, vy0=0, ay=0, t0=2025.0, # Must call after setting parameters. # This checks for proper parameter formatting. super().__init__() - - self.poly_order = 2 - self.px = models.Polynomial1D(self.poly_order, c0=self.x0, c1=self.vx0, c2=self.ax) - self.py = models.Polynomial1D(self.poly_order, c0=self.y0, c1=self.vy0, c2=self.ay) - return def get_pos_at_time(self, t): dt = t - self.t0 - x = self.px(dt) - y = self.py(dt) + x = self.x0 + self.vx0*dt + 0.5*self.ax*dt**2 + y = self.y0 + self.vy0*dt + 0.5*self.ay*dt**2 return x, y def get_pos_err_at_time(self, t): @@ -346,34 +327,24 @@ def get_batch_pos_at_time(self,t, return x,y,x_err,y_err def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): - fitter = fitting.LevMarLSQFitter() dt = t-self.t0 x_wt, y_wt = self.get_weights(xe,ye, weighting=weighting) - px_new = fitter(self.px, dt, x, weights=x_wt) - px_cov = fitter.fit_info['param_cov'] - py_new = fitter(self.py, dt, y, weights=y_wt) - py_cov = fitter.fit_info['param_cov'] - - x0 = px_new.c0.value - vx0 = px_new.c1.value - ax = px_new.c2.value - y0 = py_new.c0.value - vy0 = py_new.c1.value - ay = py_new.c2.value - - px_param_errs = dict(zip(self.px.param_names, np.diag(px_cov)**0.5)) - py_param_errs = dict(zip(self.py.param_names, np.diag(py_cov)**0.5)) - x0e = px_param_errs['c0'] - vx0e = px_param_errs['c1'] - axe = px_param_errs['c2'] - y0e = py_param_errs['c0'] - vy0e = py_param_errs['c1'] - aye = py_param_errs['c2'] + def accel(t, c0,c1,c2): + return c0 + c1*t + 0.5*c2*t**2 + x_opt, x_cov = curve_fit(accel, dt, x, p0=np.array([x.mean(),0.0,0.0]), sigma=1/x_wt, absolute_sigma=True) + y_opt, y_cov = curve_fit(accel, dt, y, p0=np.array([y.mean(),0.0,0.0]), sigma=1/y_wt, absolute_sigma=True) + x0 = x_opt[0] + y0 = y_opt[0] + vx0 = x_opt[1] + vy0 = y_opt[1] + ax = x_opt[2] + ay = y_opt[2] + + x0e, vx0e, axe = np.sqrt(x_cov.diagonal()) + y0e, vy0e, aye = np.sqrt(y_cov.diagonal()) if update: - self.px = px_new - self.py = py_new self.x0 = x0 self.vx0 = vx0 self.ax = ax diff --git a/flystar/tests/test_motion_model.py b/flystar/tests/test_motion_model.py index 4fe703f..94474a7 100755 --- a/flystar/tests/test_motion_model.py +++ b/flystar/tests/test_motion_model.py @@ -168,8 +168,8 @@ def test_Acceleration(): assert y_t==true_params['y0'] t_arr = np.array([2010.0,mod_true.t0,2030.0]) x_t, y_t = mod_true.get_pos_at_time(t_arr) - assert (x_t==(true_params['x0'] + (t_arr-mod_true.t0)*true_params['vx0'] + (t_arr-mod_true.t0)**2*true_params['ax'])).all() - assert (y_t==(true_params['y0'] + (t_arr-mod_true.t0)*true_params['vy0'] + (t_arr-mod_true.t0)**2*true_params['ay'])).all() + assert (x_t==(true_params['x0'] + (t_arr-mod_true.t0)*true_params['vx0'] + 0.5*(t_arr-mod_true.t0)**2*true_params['ax'])).all() + assert (y_t==(true_params['y0'] + (t_arr-mod_true.t0)*true_params['vy0'] + 0.5*(t_arr-mod_true.t0)**2*true_params['ay'])).all() x_err_t, y_err_t = mod_true.get_pos_err_at_time(mod_true.t0) assert x_err_t==true_params['x0_err'] assert y_err_t==true_params['y0_err'] From 93e52bfbaa13abd91d20f8e0738289fb213c7d0b Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 18 Dec 2024 15:54:15 -0800 Subject: [PATCH 031/124] motion model debugging --- flystar/motion_model.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 37f1b6e..18f59b9 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -232,12 +232,12 @@ def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): dt_diff = np.diff(dt)[0] vx = dx / dt_diff vy = dy / dt_diff - x0 = np.average(x, weights=x_wt) - y0 = np.average(y, weights=y_wt) + x0 = x[0] - dt[0]*vx + y0 = y[0] - dt[0]*vy vxe = 0.0 vye = 0.0 x0e = np.abs(dx) / 2**0.5 - y0e = np.abs(dy) /2 **0.5 + y0e = np.abs(dy) / 2**0.5 else: def linear(t, c0, c1): From 64649b85b49c536b8d99e57d2e9a2f16970792ac Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 19 Dec 2024 10:51:11 -0800 Subject: [PATCH 032/124] testing --- flystar/tests/test_startable.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flystar/tests/test_startable.py b/flystar/tests/test_startable.py index b03acf1..4bce597 100644 --- a/flystar/tests/test_startable.py +++ b/flystar/tests/test_startable.py @@ -479,7 +479,7 @@ def test_fit_velocities_2epoch(): assert 'vy_err' in tab_2.colnames # 2 detections - np.testing.assert_almost_equal(tab_2['x0'][0], tab_2['x'][0,0], 1) + np.testing.assert_allclose(tab_2['x0'][0], tab_2['x'][0,0], rtol=1e-1) assert tab_2['n_fit'][0] == 2 # 1 detection From 425c2b386c7974afd4c25fe32f5f028be63d1566 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 19 Dec 2024 11:16:17 -0800 Subject: [PATCH 033/124] resolved a bug, resolving much of the linear fit disagreement --- flystar/startables.py | 19 ++----------------- flystar/tests/test_align.py | 22 +++++----------------- flystar/tests/test_startable.py | 3 ++- 3 files changed, 9 insertions(+), 35 deletions(-) diff --git a/flystar/startables.py b/flystar/startables.py index f6f6382..333a907 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -578,15 +578,6 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b KeyError If there's not time information in the table """ - - ss=0 - print('first star') - print(' x', self['x'][ss, :].data) - print(' y', self['y'][ss, :].data) - if 'vx' in self.keys(): - print(' vx', self['vx'][ss]) - print(' vy', self['vy'][ss]) - if weighting not in ['var', 'std']: raise ValueError(f"fit_velocities: Weighting must either be 'var' or 'std', not {weighting}!") @@ -835,7 +826,7 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, # Load up any prior information on parameters for this model. param_dict = {} - for par in modClass.fitter_param_names: + for par in modClass.fitter_param_names+modClass.fixed_param_names: if ~np.isnan(self[par][ss]): param_dict[par] = self[par][ss] @@ -859,9 +850,7 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, chi2_x,chi2_y = mod.get_chi2(t,x,y,xe,ye) self['chi2_x'][ss]=chi2_x self['chi2_y'][ss]=chi2_y - - #print('N good', N_good, motion_model_use, params) - + # Save parameters and errors to table. for pp in range(len(modClass.fitter_param_names)): par = modClass.fitter_param_names[pp] @@ -886,12 +875,10 @@ def get_star_positions_at_time(self, t): # Check which motion models we need # use complex_mms to collect models besides Fixed and Linear unique_mms = np.unique(self['motion_model_used']).tolist() - print(list(self['motion_model_used'])) # Calculate current position in batches by motion model for mm in unique_mms: # Identify stars with this model & get class idx = np.where(self['motion_model_used']==mm)[0] - print(mm,'idx',idx) modClass = getattr(motion_model, mm) # Set up parameters param_dict = {} @@ -899,8 +886,6 @@ def get_star_positions_at_time(self, t): param_dict[par] = self[par][idx] mod = modClass(RA=self.meta['RA'], Dec=self.meta['Dec'], PA=self.meta['position_angle'], obs=self.meta['observer_location']) x[idx],y[idx],xe[idx],ye[idx] = mod.get_batch_pos_at_time(t,**param_dict) - print('all x',x) - print('nans:', np.sum(np.isnan(x))) return x,y,xe,ye diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 602ae9c..8d6edb2 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -375,35 +375,23 @@ def test_MosaicToRef_vel(): # The velocities should be almost the same as the input # velocities since update_ref_orig == False. - for i,star in enumerate(ref_list["name"]): - if star in msc.ref_table["name"]: - ii = np.where(msc.ref_table["name"]==star)[0][0] - np.testing.assert_allclose(msc.ref_table['vx'][ii], ref_list['vx'][i], rtol=1e-5) - np.testing.assert_allclose(msc.ref_table['vy'][ii], ref_list['vy'][i], rtol=1e-5) + np.testing.assert_allclose(msc.ref_table['vx'], ref_list['vx'], rtol=1e-5) + np.testing.assert_allclose(msc.ref_table['vy'], ref_list['vy'], rtol=1e-5) ########## # Align and let velocities be free. ########## msc.update_ref_orig = True msc.fit() - - print(msc.ref_table[['name','vx']][:10]) - print(ref_list['name','vx'][:10]) # The velocities should be almost the same (but not as close as before) # as the input velocities since update_ref == False. - for i,star in enumerate(ref_list["name"]): - if star in msc.ref_table["name"]: - ii = np.where(msc.ref_table["name"]==star)[0][0] - np.testing.assert_allclose(msc.ref_table['vx'][ii], ref_list['vx'][i], rtol=1e-1) - np.testing.assert_allclose(msc.ref_table['vy'][ii], ref_list['vy'][i], rtol=1e-1) + np.testing.assert_allclose(msc.ref_table['vx'], ref_list['vx'], rtol=1e-1) + np.testing.assert_allclose(msc.ref_table['vy'], ref_list['vy'], rtol=1e-1) # Also double check that they aren't exactly the same for the reference stars. #assert np.any(np.not_equal(msc.ref_table['vx'], ref_list['vx'])) - for i,star in enumerate(ref_list["name"]): - if star in msc.ref_table["name"]: - ii = np.where(msc.ref_table["name"]==star)[0][0] - assert np.not_equal(msc.ref_table['vx'][ii], ref_list['vx'][i]) + assert np.not_equal(msc.ref_table['vx'], ref_list['vx']).any() return msc diff --git a/flystar/tests/test_startable.py b/flystar/tests/test_startable.py index 4bce597..66421d9 100644 --- a/flystar/tests/test_startable.py +++ b/flystar/tests/test_startable.py @@ -479,7 +479,8 @@ def test_fit_velocities_2epoch(): assert 'vy_err' in tab_2.colnames # 2 detections - np.testing.assert_allclose(tab_2['x0'][0], tab_2['x'][0,0], rtol=1e-1) + print(tab1.meta) + np.testing.assert_almost_equal(tab_2['x0'][0], tab_2['x'][0,0], 1) assert tab_2['n_fit'][0] == 2 # 1 detection From 40a1bf269a9b3a5af5ce5c57cd702448942b177d Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 19 Dec 2024 12:06:55 -0800 Subject: [PATCH 034/124] Linear motion model matching Main branch use_vel results now --- flystar/align.py | 3 +-- flystar/motion_model.py | 13 +++++++------ flystar/startables.py | 1 + flystar/tests/test_align.py | 1 + 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 477989a..cdb051a 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -50,7 +50,6 @@ def __init__(self, list_of_starlists, ref_index=0, iters=2, for those stars not trimmed out by the other criteria. - Optional Parameters ---------- ref_index : int @@ -602,7 +601,7 @@ def setup_ref_table_from_starlist(self, star_list): col_arrays[new_col_name] = new_col_data # Use the columns from the ref list to make the ref_table. - ref_table = StarTable(**col_arrays, position_angle=self.position_angle, RA=self.RA, Dec=self.Dec) + ref_table = StarTable(**col_arrays, position_angle=self.position_angle, RA=self.RA, Dec=self.Dec, observer_location=self.observer_location) # Make new columns to hold original values. These will be copies # of the old columns and will only include x, y, m, xe, ye, me. diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 18f59b9..c18c24f 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -112,7 +112,7 @@ class Fixed(MotionModel): fitter_param_names = ['x0','y0'] fixed_param_names = [] - def __init__(self, x0=0, y0=0, t0=2025.0, + def __init__(self, x0=0, y0=0, t0=None, x0_err=0, y0_err=0, **kwargs): self.x0 = x0 self.y0 = y0 @@ -178,7 +178,7 @@ class Linear(MotionModel): fitter_param_names = ['x0', 'vx', 'y0', 'vy'] fixed_param_names = ['t0'] - def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025.0, + def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=None, x0_err=0, vx_err=0, y0_err=0, vy_err=0, **kwargs): self.x0 = x0 self.vx = vx @@ -232,8 +232,9 @@ def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): dt_diff = np.diff(dt)[0] vx = dx / dt_diff vy = dy / dt_diff - x0 = x[0] - dt[0]*vx - y0 = y[0] - dt[0]*vy + # TODO: this does not align with how t0 works..... + x0 = np.average(x, weights=x_wt) #x[0] - dt[0]*vx + y0 = np.average(y, weights=y_wt) #y[0] - dt[0]*vy vxe = 0.0 vye = 0.0 x0e = np.abs(dx) / 2**0.5 @@ -276,7 +277,7 @@ class Acceleration(MotionModel): fitter_param_names = ['x0', 'vx0', 'ax', 'y0', 'vy0', 'ay'] fixed_param_names = ['t0'] - def __init__(self, x0=0, vx0=0, ax=0, y0=0, vy0=0, ay=0, t0=2025.0, + def __init__(self, x0=0, vx0=0, ax=0, y0=0, vy0=0, ay=0, t0=None, x0_err=0, vx0_err=0, ax_err=0, y0_err=0, vy0_err=0, ay_err=0, **kwargs): self.x0 = x0 self.vx0 = vx0 @@ -378,7 +379,7 @@ class Parallax(MotionModel): fixed_param_names = ['t0'] fixed_meta_data = ['RA','Dec','PA','obs'] - def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=2025.0, + def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=None, x0_err=0, vx_err=0, y0_err=0, vy_err=0, pi=0, pi_err=0, RA=None, Dec=None, PA=None, obs='earth', **kwargs): diff --git a/flystar/startables.py b/flystar/startables.py index 333a907..ab08665 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -843,6 +843,7 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, param_dict[par] = self[par][ss]''' # Model object + #print(motion_model_use,param_dict) mod = modClass(**param_dict, PA=self.meta['position_angle'], RA=self.meta['RA'], Dec=self.meta['Dec'], obs=self.meta['observer_location']) # Fit for the best parameters diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 8d6edb2..5964274 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -194,6 +194,7 @@ def test_MosaicSelfRef_vel(): # Check that we have some matched stars... should be at least 35 stars # that are detected in all 4 starlists. idx = np.where(msc.ref_table['n_detect'] == 4)[0] + print(idx) assert len(idx) > 35 # Check that the transformation error isn't too big From fa6c1ff01aa5e6b48b3351a2e0d632487216adb3 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 19 Dec 2024 12:26:29 -0800 Subject: [PATCH 035/124] post-testing cleanup --- flystar/align.py | 15 +------- flystar/startables.py | 1 - flystar/tests/test_align.py | 73 +------------------------------------ 3 files changed, 4 insertions(+), 85 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index cdb051a..3ab42ee 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -48,7 +48,7 @@ def __init__(self, list_of_starlists, ref_index=0, iters=2, star_list['w'] * ref_list['w'] * weight_from_keyword (see the weights parameter) - for those stars not trimmed out by the other criteria. + for those stars not trimmed out by the other criteria. Optional Parameters ---------- @@ -836,25 +836,15 @@ def update_ref_table_aggregates(self, n_boot=0): vals_orig[mm] = self.ref_table[mm][ref_orig_idx] # Combine positions with a velocity fit. - #if 'vx' in self.ref_table.keys(): - #print('before:',self.ref_table['vx'][:10]) self.ref_table.fit_velocities(bootstrap=n_boot, verbose=self.verbose, default_motion_model=self.default_motion_model) - #print(np.unique(self.ref_table['motion_model_used'])) - #if 'vx' in self.ref_table.keys(): - #print('after:', self.ref_table['vx'][:10]) # Combine (transformed) magnitudes if 'me' in self.ref_table.colnames: weights_col = None else: weights_col = 'me' - self.ref_table.combine_lists('m', weights_col=weights_col, ismag=True) - #else: - # weighted_xy = ('xe' in self.ref_table.colnames) and ('ye' in self.ref_table.colnames) - # weighted_m = ('me' in self.ref_table.colnames) - - # self.ref_table.combine_lists_xym(weighted_xy=weighted_xy, weighted_m=weighted_m) + # Replace the originals if we are supposed to keep them fixed. if not self.update_ref_orig: for val in vals_orig.keys(): @@ -963,7 +953,6 @@ def get_ref_list_from_table(self, epoch): if ('motion_model_used' in self.ref_table.colnames): x,y,xe,ye = self.ref_table.get_star_positions_at_time(epoch) - #print('ref star pos',epoch,x,y) else: # No velocities... just used average positions. x = self.ref_table['x0'] diff --git a/flystar/startables.py b/flystar/startables.py index ab08665..333a907 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -843,7 +843,6 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, param_dict[par] = self[par][ss]''' # Model object - #print(motion_model_use,param_dict) mod = modClass(**param_dict, PA=self.meta['position_angle'], RA=self.meta['RA'], Dec=self.meta['Dec'], obs=self.meta['observer_location']) # Fit for the best parameters diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 5964274..de8e72d 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -47,8 +47,7 @@ def test_MosaicSelfRef(): # Check that we have some matched stars... should be at least 35 stars # that are detected in all 4 starlists. idx = np.where(msc.ref_table['n_detect'] == 4)[0] - print(len(idx)) - assert len(idx) > 35 + assert len(idx) > 35 # Check that the transformation error isn't too big assert (msc.ref_table['x0_err'] < 3.0).all() # less than 1 pix @@ -194,8 +193,7 @@ def test_MosaicSelfRef_vel(): # Check that we have some matched stars... should be at least 35 stars # that are detected in all 4 starlists. idx = np.where(msc.ref_table['n_detect'] == 4)[0] - print(idx) - assert len(idx) > 35 + assert len(idx) > 35 # Check that the transformation error isn't too big assert (msc.ref_table['x0_err'] < 3.0).all() # less than 1 pix @@ -213,67 +211,6 @@ def test_MosaicSelfRef_vel(): 'k.', color='black', alpha=0.2) return - -'''def test_MosaicSelfRef_acc(): - """ - Cross-match and align 4 starlists using the OO version of mosaic lists. - - """ - make_fake_starlists_poly1_acc(seed=42) - - ref_file = 'random_acc_ref.fits' - ref_list = Table.read(ref_file) - names = ref_list["name"] - list_files = ['random_acc_0.fits', - 'random_acc_1.fits', - 'random_acc_2.fits', - 'random_acc_3.fits'] - lists = [starlists.StarList.read(lf) for lf in list_files] - - ########## - # Test instantiation and basic fitting. - ########## - msc = align.MosaicSelfRef(lists, ref_index=0, iters=3, - dr_tol=[5, 3, 3], dm_tol=[1, 1, 0.5], outlier_tol=None, - trans_class=transforms.PolyTransform, - trans_args={'order': 2}, default_motion_model='Acceleration', - verbose=False) - - msc.fit() - - # Check some of the output quantities on the final table. - assert 'x0' in msc.ref_table.colnames - assert 'x0_err' in msc.ref_table.colnames - assert 'y0' in msc.ref_table.colnames - assert 'y0_err' in msc.ref_table.colnames - assert 'm0' in msc.ref_table.colnames - assert 'm0_err' in msc.ref_table.colnames - assert 'vx0' in msc.ref_table.colnames - assert 'vx0_err' in msc.ref_table.colnames - assert 'vy0' in msc.ref_table.colnames - assert 'vy0_err' in msc.ref_table.colnames - assert 'ax' in msc.ref_table.colnames - assert 'ax_err' in msc.ref_table.colnames - assert 'ay' in msc.ref_table.colnames - assert 'ay_err' in msc.ref_table.colnames - assert 't0' in msc.ref_table.colnames - - # Check that we have some matched stars... should be at least 35 stars - # that are detected in all 4 starlists. - idx = np.where(msc.ref_table['n_detect'] == 4)[0] - assert len(idx) > 35 - - # Check that the transformation error isn't too big - assert (msc.ref_table['x0_err'] < 3.0).all() # less than 1 pix - assert (msc.ref_table['y0_err'] < 3.0).all() - assert (msc.ref_table['m0_err'] < 1.0).all() # less than 0.5 mag - - # Check fit quality - for param in ['x0','y0','vx0','vy0','ax','ay']: - #np.testing.assert_almost_equal(msc.ref_table[param][:len(ref_list)], ref_list[param], 2) - print(param,np.transpose([msc.ref_table[param][:len(ref_list)], ref_list[param]])) - return''' - def test_MosaicToRef(): make_fake_starlists_poly1(seed=42) @@ -358,7 +295,6 @@ def test_MosaicToRef_vel(): ref_list['vx'] *= -1.0 lists = [starlists.StarList.read(lf) for lf in list_files] - print(ref_list[['x0','vx']]) msc = align.MosaicToRef(ref_list, lists, iters=2, dr_tol=[0.2, 0.1], dm_tol=[1, 0.5], @@ -410,8 +346,6 @@ def test_MosaicToRef_acc(): 'random_acc_7.fits'] ref_list = Table.read(ref_file) - print(ref_list.keys()) - print(ref_list) # Convert velocities to arcsec/yr ref_list['vx0'] *= 1e-3 @@ -686,7 +620,6 @@ def make_fake_starlists_poly1_vel(seed=-1): trans = transforms.PolyTransform(1, xy_trans[ss][0], xy_trans[ss][1], mag_offset=mag_trans[ss]) xd, yd = trans.evaluate(xp, yp) md = trans.evaluate_mag(lis['m0']) - print([xd-xp]) # Perturb with small errors (0.1 pix) xd += np.random.randn(N_stars) * 0.1 @@ -1024,11 +957,9 @@ def test_bootstrap(): # Run bootstrap: no boot_epochs_min match1.calc_bootstrap_errors(n_boot=n_boot, boot_epochs_min=boot_epochs_min) - print(match1.ref_table.keys()) # Make sure columns exist, and none of them are nan values assert np.sum(np.isnan(match1.ref_table['xe_boot'])) == 0 assert np.sum(np.isnan(match1.ref_table['ye_boot'])) == 0 - print(match1.ref_table['vx_err_boot']) assert np.sum(np.isnan(match1.ref_table['vx_err_boot'])) == 0 assert np.sum(np.isnan(match1.ref_table['vy_err_boot'])) == 0 From bdf0177019d97c91d572fd0b3bf61ea4d6d13d57 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 19 Dec 2024 13:23:47 -0800 Subject: [PATCH 036/124] testing --- flystar/tests/test_align.py | 32 +++++++++++++++++++------------- flystar/tests/test_startable.py | 4 ++-- 2 files changed, 21 insertions(+), 15 deletions(-) diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index de8e72d..c59bbe0 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -384,11 +384,13 @@ def test_MosaicToRef_acc(): # The velocities should be almost the same as the input # velocities since update_ref_orig == False. + i_orig, i_fit = [],[] for i,star in enumerate(ref_list["name"]): if star in msc.ref_table["name"]: - ii = np.where(msc.ref_table["name"]==star)[0][0] - np.testing.assert_allclose(msc.ref_table['vx0'][ii], ref_list['vx0'][i], rtol=1e-5) - np.testing.assert_allclose(msc.ref_table['vy0'][ii], ref_list['vy0'][i], rtol=1e-5) + i_fit.append(np.where(msc.ref_table["name"]==star)[0][0]) + i_orig.append(i) + np.testing.assert_allclose(msc.ref_table['ax'][i_fit], ref_list['ax'][i_orig], rtol=1e-5) + np.testing.assert_allclose(msc.ref_table['ay'][i_fit], ref_list['ay'][i_orig], rtol=1e-5) ########## # Align and let velocities be free. @@ -398,14 +400,18 @@ def test_MosaicToRef_acc(): # The velocities should be almost the same (but not as close as before) # as the input velocities since update_ref == False. + i_orig, i_fit = [],[] for i,star in enumerate(ref_list["name"]): if star in msc.ref_table["name"]: - ii = np.where(msc.ref_table["name"]==star)[0][0] - np.testing.assert_allclose(msc.ref_table['vx0'][ii], ref_list['vx0'][i], rtol=1e-1) - np.testing.assert_allclose(msc.ref_table['vy0'][ii], ref_list['vy0'][i], rtol=1e-1) + ix_fit = np.where(msc.ref_table["name"]==star)[0][0] + if ~np.isnan(msc.ref_table['ax'][ix_fit]): + i_orig.append(i) + i_fit.append(ix_fit) + np.testing.assert_allclose(msc.ref_table['ax'][i_fit], ref_list['ax'][i_orig], rtol=1e-1) + np.testing.assert_allclose(msc.ref_table['ay'][i_fit], ref_list['ay'][i_orig], rtol=1e-1) # Also double check that they aren't exactly the same for the reference stars. - assert np.any(np.not_equal(msc.ref_table['vx0'], ref_list['vx0'])) + assert np.any(np.not_equal(msc.ref_table['ax'], ref_list['ax'])) return msc @@ -591,13 +597,13 @@ def make_fake_starlists_poly1_vel(seed=-1): times = [2018.5, 2019.0, 2019.5, 2020.0, 2020.5, 2021.0, 2021.5, 2022.0] xy_trans = [[[ 6.5, 0.99, 1e-5], [ 10.1, 1e-5, 0.99]], [[100.3, 0.98, 1e-5], [ 50.5, 9e-6, 1.001]], - [[ 0.0, 1.00, 0.0], [ 0.0, 0.0, 1.0]], + [[ 0.0, 1.00, 0.0], [ 0.0, 0.0, 1.000]], [[250.0, 0.97, 2e-5], [-250.0, 1e-5, 1.001]], - [[ 50.0, 1.00, 0.0], [ -31.0, 0.0, 1.000]], - [[ 78.0, 1.00, 0.0 ], [ 45.0, 0.0, 1.00]], - [[-13.0, 1.00, 0.0], [ 150, 0.0, 1.00]], - [[ 94.0, 1.00, 0.0], [-182.0, 0.0, 1.00]]] - mag_trans = [0.1, 0.4, 0.0, -0.3, 0.0, 0.0, 0.0, 0.0] + [[ 50.0, 1.01, 1e-5], [ -31.0, 1e-5, 1.000]], + [[ 78.0, 0.98, 0.0 ], [ 45.0, 9e-6, 1.001]], + [[-13.0, 0.99, 1e-5], [ 150, 2e-5, 1.002]], + [[ 94.0, 1.00, 9e-6], [-182.0, 0.0, 0.99]]] + mag_trans = [0.1, 0.4, 0.0, -0.3, 0.2, 0.0, -0.1, -0.3] # Convert into pixels (undistorted) with the following info. scale = 0.01 # arcsec / pix diff --git a/flystar/tests/test_startable.py b/flystar/tests/test_startable.py index 66421d9..b5c816c 100644 --- a/flystar/tests/test_startable.py +++ b/flystar/tests/test_startable.py @@ -359,7 +359,7 @@ def test_fit_velocities(): ########## # Test bootstrap ########## - '''tab_b = table.vstack((tab1, tab2, tab3)) + tab_b = table.vstack((tab1, tab2, tab3)) tab_b.meta = tab1.meta tab_b.fit_velocities(verbose=True, bootstrap=50) @@ -367,7 +367,7 @@ def test_fit_velocities(): assert tab_b['x0_err'][0] > tab['x0_err'][0] assert tab_b['vx_err'][0] > tab['vx_err'][0] assert tab_b['y0_err'][0] > tab['y0_err'][0] - assert tab_b['vy_err'][0] > tab['vy_err'][0]''' + assert tab_b['vy_err'][0] > tab['vy_err'][0] ########## # Test what happens with no velocity errors From d3331d6a644a0ecaa94539dee349c991697e8d6c Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 19 Dec 2024 14:34:26 -0800 Subject: [PATCH 037/124] error scaling in curve_fit --- flystar/motion_model.py | 19 ++++++++----------- flystar/startables.py | 2 +- flystar/tests/test_startable.py | 1 + 3 files changed, 10 insertions(+), 12 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index c18c24f..e9f996b 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -243,17 +243,12 @@ def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): else: def linear(t, c0, c1): return c0 + c1*t - x_opt, x_cov = curve_fit(linear, dt, x, p0=np.array([x.mean(),0.0]), sigma=1/x_wt, absolute_sigma=True) - y_opt, y_cov = curve_fit(linear, dt, y, p0=np.array([y.mean(),0.0]), sigma=1/y_wt, absolute_sigma=True) - x0 = x_opt[0] - vx = x_opt[1] - y0 = y_opt[0] - vy = y_opt[1] + x_opt, x_cov = curve_fit(linear, dt, x, p0=np.array([x.mean(),0.0]), sigma=1/np.sqrt(x_wt), absolute_sigma=True) + y_opt, y_cov = curve_fit(linear, dt, y, p0=np.array([y.mean(),0.0]), sigma=1/np.sqrt(y_wt), absolute_sigma=True) + x0, vx = x_opt + y0, vy = y_opt x0e, vxe = np.sqrt(x_cov.diagonal()) y0e, vye = np.sqrt(y_cov.diagonal()) - - params = [x0, vx, y0, vy] - param_errors = [x0e, vxe, y0e, vye] if update: self.x0 = x0 @@ -265,6 +260,8 @@ def linear(t, c0, c1): self.y0_err = y0e self.vy_err = vye + params = [x0, vx, y0, vy] + param_errors = [x0e, vxe, y0e, vye] return params, param_errors @@ -333,8 +330,8 @@ def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): def accel(t, c0,c1,c2): return c0 + c1*t + 0.5*c2*t**2 - x_opt, x_cov = curve_fit(accel, dt, x, p0=np.array([x.mean(),0.0,0.0]), sigma=1/x_wt, absolute_sigma=True) - y_opt, y_cov = curve_fit(accel, dt, y, p0=np.array([y.mean(),0.0,0.0]), sigma=1/y_wt, absolute_sigma=True) + x_opt, x_cov = curve_fit(accel, dt, x, p0=np.array([x.mean(),0.0,0.0]), sigma=1/x_wt**0.5, absolute_sigma=True) + y_opt, y_cov = curve_fit(accel, dt, y, p0=np.array([y.mean(),0.0,0.0]), sigma=1/y_wt**0.5, absolute_sigma=True) x0 = x_opt[0] y0 = y_opt[0] vx0 = x_opt[1] diff --git a/flystar/startables.py b/flystar/startables.py index 333a907..74873c1 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -846,7 +846,7 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, mod = modClass(**param_dict, PA=self.meta['position_angle'], RA=self.meta['RA'], Dec=self.meta['Dec'], obs=self.meta['observer_location']) # Fit for the best parameters - params, param_errs = mod.fit_motion_model(t, x, y, xe, ye, bootstrap=bootstrap, update=True) + params, param_errs = mod.fit_motion_model(t, x, y, xe, ye, bootstrap=bootstrap, update=True, weighting=weighting) chi2_x,chi2_y = mod.get_chi2(t,x,y,xe,ye) self['chi2_x'][ss]=chi2_x self['chi2_y'][ss]=chi2_y diff --git a/flystar/tests/test_startable.py b/flystar/tests/test_startable.py index b5c816c..feda0d6 100644 --- a/flystar/tests/test_startable.py +++ b/flystar/tests/test_startable.py @@ -389,6 +389,7 @@ def test_fit_velocities(): # Test mask_list ######### # Test 5a: Masked + print("Testing Masked List") tt.fit_velocities(bootstrap=0, verbose=False, mask_lists=[1]) assert np.arange(2.25, 48, 5) == pytest.approx(tt['x0'].data) assert np.arange(2.25, 48, 5) == pytest.approx(tt['y0'].data) From 44a67e49a11436c0c6ad0edb91c82609d2946471 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Fri, 20 Dec 2024 12:17:32 -0800 Subject: [PATCH 038/124] improve motion model fitting --- flystar/motion_model.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index e9f996b..ddf965f 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -443,13 +443,13 @@ def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): def fit_func(t, x0,y0, vx,vy, pi): x_res = x0 + vx*(t-self.t0) + pi*pvec[0] y_res = y0 + vy*(t-self.t0) + pi*pvec[1] - diff = (x-x_res)**2 * x_wt + (y-y_res)**2 * y_wt - return diff + return np.append(x_res, y_res) # Initial guesses, x0,y0 as x,y averages; # vx,vy as average velocity if first and last points are perfectly measured; # pi for 10 pc disance - res = curve_fit(fit_func, t, np.zeros(len(t)), - p0=[np.mean(x),np.mean(y), (x[-1]-x[0])/(t[-1]-t[0]),(y[-1]-y[0])/(t[-1]-t[0]), 1]) + res = curve_fit(fit_func, t, np.append(x,y), + p0=[np.mean(x),np.mean(y), (x[-1]-x[0])/(t[-1]-t[0]),(y[-1]-y[0])/(t[-1]-t[0]), 1], + sigma = 1.0/np.append(x_wt,y_wt)) x0,y0,vx,vy,pi = res[0] x0_err,y0_err,vx_err,vy_err,pi_err = np.sqrt(np.diag(res[1])) if update: From d35e3c64495f7567ae5bd2eb6d6111955ff26e54 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Fri, 20 Dec 2024 12:37:22 -0800 Subject: [PATCH 039/124] modify plx fitting --- flystar/motion_model.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index ddf965f..45d6469 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -441,13 +441,14 @@ def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA).T x_wt, y_wt = self.get_weights(xe,ye, weighting=weighting) def fit_func(t, x0,y0, vx,vy, pi): - x_res = x0 + vx*(t-self.t0) + pi*pvec[0] - y_res = y0 + vy*(t-self.t0) + pi*pvec[1] + use_t = t[:int(len(t)/2)] + x_res = x0 + vx*(use_t-self.t0) + pi*pvec[0] + y_res = y0 + vy*(use_t-self.t0) + pi*pvec[1] return np.append(x_res, y_res) # Initial guesses, x0,y0 as x,y averages; # vx,vy as average velocity if first and last points are perfectly measured; # pi for 10 pc disance - res = curve_fit(fit_func, t, np.append(x,y), + res = curve_fit(fit_func, np.append(t,t), np.append(x,y), p0=[np.mean(x),np.mean(y), (x[-1]-x[0])/(t[-1]-t[0]),(y[-1]-y[0])/(t[-1]-t[0]), 1], sigma = 1.0/np.append(x_wt,y_wt)) x0,y0,vx,vy,pi = res[0] From 5d46b09df34a76842acaf7ff997d5ce80852e11b Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Fri, 20 Dec 2024 15:47:29 -0800 Subject: [PATCH 040/124] plot updates for motion model --- flystar/motion_model.py | 12 ++++++++---- flystar/plots.py | 26 ++++++++++++++++++++------ 2 files changed, 28 insertions(+), 10 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 45d6469..44f2c00 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -400,15 +400,19 @@ def __init__(self, x0=0, vx=0, y0=0, vy=0, t0=None, def get_pos_at_time(self, t): t_mjd = Time(t, format='decimalyear', scale='utc').mjd pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA).T - x = self.x0 + self.vx*(t-self.t0) + self.pi*pvec[0] - y = self.y0 + self.vy*(t-self.t0) + self.pi*pvec[1] + pvec_x = np.reshape(pvec[0], t.shape) + pvec_y = np.reshape(pvec[1], t.shape) + x = self.x0 + self.vx*(t-self.t0) + self.pi*pvec_x + y = self.y0 + self.vy*(t-self.t0) + self.pi*pvec_y return x, y def get_pos_err_at_time(self, t): t_mjd = Time(t, format='decimalyear', scale='utc').mjd pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA).T - x_err = np.sqrt(self.y0_err**2 + ((t-self.t0)*self.vx_err)**2 + (self.pi_err*pvec[0])**2) - y_err = np.sqrt(self.x0_err**2 + ((t-self.t0)*self.vy_err)**2 + (self.pi_err*pvec[1])**2) + pvec_x = np.reshape(pvec[0], t.shape) + pvec_y = np.reshape(pvec[1], t.shape) + x_err = np.sqrt(self.y0_err**2 + ((t-self.t0)*self.vx_err)**2 + (self.pi_err*pvec_x)**2) + y_err = np.sqrt(self.x0_err**2 + ((t-self.t0)*self.vy_err)**2 + (self.pi_err*pvec_y)**2) return x_err, y_err def get_batch_pos_at_time(self, t, diff --git a/flystar/plots.py b/flystar/plots.py index b3f69b8..070767e 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -1,4 +1,4 @@ -from flystar import analysis +from flystar import analysis, motion_model import pylab as py import pylab as plt import numpy as np @@ -2481,7 +2481,8 @@ def plot_chi2_dist_mag(tab, Ndetect, mlim=40, n_bins=30): return -def plot_stars(tab, star_names, NcolMax=2, epoch_array = None, figsize=(15,25), color_time=False): +def plot_stars(tab, star_names, NcolMax=2, epoch_array = None, figsize=(15,25), color_time=False, + position_angle=None, RA=None, Dec=None, observer_location='earth'): """ Plot a set of stars positions, flux and residuals over time. @@ -2537,11 +2538,22 @@ def rs(x): merr = tab['me'][ii, fnd] dt = tab['t'][ii, fnd] - tab['t0'][ii] - fitLineX = tab['x0'][ii] + (tab['vx'][ii] * dt) - fitLineY = tab['y0'][ii] + (tab['vy'][ii] * dt) + + if 'motion_model_used' not in tab.keys(): + fitLineX = tab['x0'][ii] + (tab['vx'][ii] * dt) + fitLineY = tab['y0'][ii] + (tab['vy'][ii] * dt) - fitSigX = np.hypot(tab['x0_err'][ii], tab['vx_err'][ii]*dt) - fitSigY = np.hypot(tab['y0_err'][ii], tab['vy_err'][ii]*dt) + fitSigX = np.hypot(tab['x0_err'][ii], tab['vx_err'][ii]*dt) + fitSigY = np.hypot(tab['y0_err'][ii], tab['vy_err'][ii]*dt) + else: + motion_model_str = tab['motion_model_used'][ii] + modClass = getattr(motion_model, motion_model_str) + param_dict = {} + for par in modClass.fitter_param_names+modClass.fixed_param_names: + param_dict[par] = tab[par][ii] + mod = modClass(**param_dict, PA=position_angle, RA=RA, Dec=Dec, obs=observer_location) + fitLineX, fitLineY = mod.get_pos_at_time(time) + fitSigX, fitSigY = mod.get_pos_err_at_time(time) fitLineM = np.repeat(tab['m0'][ii], len(dt)).reshape(len(dt),1) fitSigM = np.repeat(tab['m0_err'][ii], len(dt)).reshape(len(dt),1) @@ -2582,6 +2594,8 @@ def rs(x): (chi2_red_y, chi2_y, dof)) print( '\tM Chi^2 = %5.2f (%6.2f for %2d dof)' % (chi2_red_m, chi2_m, dofM)) + if 'motion_model_used' in tab.keys(): + print('\tMotion model:', tab['motion_model_used'][ii]) tmin = time.min() tmax = time.max() From 6b9b77573202f9a6c3ec212a984e66e3a21ae829 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 13 Jan 2025 09:51:19 -0800 Subject: [PATCH 041/124] minor bug fixes --- flystar/align.py | 4 ++-- flystar/match.py | 3 --- flystar/motion_model.py | 14 +++++++++++++- flystar/startables.py | 1 + 4 files changed, 16 insertions(+), 6 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 85d45d0..ed22926 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -324,7 +324,7 @@ def fit(self): self.ref_table.detections() ### Drop all stars that have 0 detections. - idx = np.where((self.ref_table['n_detect'] == 0) & (self.ref_table['ref_orig'] == False))[0] + idx = np.where((self.ref_table['n_detect'] == 0))[0] print(' *** Getting rid of {0:d} out of {1:d} junk sources'.format(len(idx), len(self.ref_table))) self.ref_table.remove_rows(idx) @@ -360,7 +360,7 @@ def fit(self): self.ref_table.detections() ### Drop all stars that have 0 detections. - idx = np.where((self.ref_table['n_detect'] == 0) & (self.ref_table['ref_orig'] == False))[0] + idx = np.where((self.ref_table['n_detect'] == 0))[0] print(' *** Getting rid of {0:d} out of {1:d} junk sources'.format(len(idx), len(self.ref_table))) self.ref_table.remove_rows(idx) diff --git a/flystar/match.py b/flystar/match.py index b959d85..c2b41c6 100644 --- a/flystar/match.py +++ b/flystar/match.py @@ -277,9 +277,6 @@ def match(x1, y1, m1, x2, y2, m2, dr_tol, dm_tol=None, verbose=True): # have matches. idxs1 = np.ones(x1.size, dtype=int) * -1 idxs2 = np.ones(x1.size, dtype=int) * -1 - - # TODO: consider better solution for this - coords2=np.nan_to_num(coords2) # The matching will be done using a KDTree. #kdt = KDT(coords2, balanced_tree=False) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 44f2c00..5878cfa 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -59,6 +59,15 @@ def get_weights(self, xe, ye, weighting='var'): else: warnings.warn("Invalid weighting, using default weighting scheme var.", UserWarning) return 1./xe**2, 1./ye**2 + + def scale_errors(self, errs, weighting='var'): + if weighting=='std': + return errs**2 + elif weighting=='var': + return errs + else: + warnings.warn("Invalid weighting, using default weighting scheme var.", UserWarning) + return errs def fit_motion_model(self, t, x, y, xe, ye, update=True, bootstrap=0, weighting='var'): """ @@ -249,6 +258,7 @@ def linear(t, c0, c1): y0, vy = y_opt x0e, vxe = np.sqrt(x_cov.diagonal()) y0e, vye = np.sqrt(y_cov.diagonal()) + x0e, vxe, y0e, vye = self.scale_errors([x0e, vxe, y0e, vye], weighting=weighting) if update: self.x0 = x0 @@ -341,6 +351,7 @@ def accel(t, c0,c1,c2): x0e, vx0e, axe = np.sqrt(x_cov.diagonal()) y0e, vy0e, aye = np.sqrt(y_cov.diagonal()) + x0e, vxe, axe, y0e, vye, aye = self.scale_errors([x0e, vxe, axe, y0e, vye, aye], weighting=weighting) if update: self.x0 = x0 @@ -456,7 +467,8 @@ def fit_func(t, x0,y0, vx,vy, pi): p0=[np.mean(x),np.mean(y), (x[-1]-x[0])/(t[-1]-t[0]),(y[-1]-y[0])/(t[-1]-t[0]), 1], sigma = 1.0/np.append(x_wt,y_wt)) x0,y0,vx,vy,pi = res[0] - x0_err,y0_err,vx_err,vy_err,pi_err = np.sqrt(np.diag(res[1])) + x0_err,y0_err,vx_err,vy_err,pi_err = self.scale_errors(np.sqrt(np.diag(res[1])), weighting=weighting) + if update: self.x0 = x0 self.y0=y0 diff --git a/flystar/startables.py b/flystar/startables.py index 74873c1..e03ece7 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -780,6 +780,7 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, # Catch the case where there is NO good data. if N_good == 0: #self['motion_model_used'][ss] = 'None' + self['n_fit'][ss] = N_good return # Everything below has N_good >= 1 From 622beda7b22e51b987e0c8e9fc8e891e27dcc3ae Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 13 Jan 2025 14:39:02 -0800 Subject: [PATCH 042/124] continued testing --- flystar/tests/test_align.py | 208 ++++++++++++++++++++++++++++++++---- 1 file changed, 185 insertions(+), 23 deletions(-) diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index e936254..1a306c2 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -269,6 +269,72 @@ def test_MosaicToRef(): return msc +def test_MosaicToRef_p0_vel(): + make_fake_starlists_poly0_vel(seed=42) + + ref_file = 'random_vel_ref.fits' + list_files = ['random_vel_p0_0.fits', + 'random_vel_p0_1.fits', + 'random_vel_p0_2.fits', + 'random_vel_p0_3.fits'] + #'random_vel_4.fits', + #'random_vel_5.fits', + #'random_vel_6.fits', + #'random_vel_7.fits'] + + ref_list = Table.read(ref_file) + + # Convert velocities to arcsec/yr + ref_list['vx'] *= 1e-3 + ref_list['vy'] *= 1e-3 + ref_list['vx_err'] *= 1e-3 + ref_list['vy_err'] *= 1e-3 + + # Switch our list to a "increasing to the West" list. + ref_list['x0'] *= -1.0 + ref_list['vx'] *= -1.0 + + lists = [starlists.StarList.read(lf) for lf in list_files] + + msc = align.MosaicToRef(ref_list, lists, iters=2, + dr_tol=[0.2, 0.1], dm_tol=[1, 0.5], + outlier_tol=[None, None], + trans_class=transforms.PolyTransform, + trans_args={'order': 1}, default_motion_model='Linear', + update_ref_orig=False, verbose=False) + msc.fit() + + # Check our status columns + assert 'use_in_trans' in msc.ref_table.colnames + assert 'used_in_trans' in msc.ref_table.colnames + assert 'ref_orig' in msc.ref_table.colnames + assert msc.ref_table['use_in_trans'].shape == msc.ref_table['x0'].shape + assert msc.ref_table['used_in_trans'].shape == msc.ref_table['x'].shape + + # The velocities should be almost the same as the input + # velocities since update_ref_orig == False. + assert (msc.ref_table['name']==ref_list['name']).all() + np.testing.assert_allclose(msc.ref_table['vx'], ref_list['vx'], rtol=1e-5) + np.testing.assert_allclose(msc.ref_table['vy'], ref_list['vy'], rtol=1e-5) + + ########## + # Align and let velocities be free. + ########## + msc.update_ref_orig = True + msc.fit() + + # The velocities should be almost the same (but not as close as before) + # as the input velocities since update_ref == True. + assert (msc.ref_table['name']==ref_list['name']).all() + np.testing.assert_allclose(msc.ref_table['vx'], ref_list['vx'], rtol=1e-1) + np.testing.assert_allclose(msc.ref_table['vy'], ref_list['vy'], rtol=1e-1) + + # Also double check that they aren't exactly the same for the reference stars. + #assert np.any(np.not_equal(msc.ref_table['vx'], ref_list['vx'])) + assert np.not_equal(msc.ref_table['vx'], ref_list['vx']).any() + + return msc + def test_MosaicToRef_vel(): make_fake_starlists_poly1_vel(seed=42) @@ -276,11 +342,11 @@ def test_MosaicToRef_vel(): list_files = ['random_vel_0.fits', 'random_vel_1.fits', 'random_vel_2.fits', - 'random_vel_3.fits', - 'random_vel_4.fits', - 'random_vel_5.fits', - 'random_vel_6.fits', - 'random_vel_7.fits'] + 'random_vel_3.fits'] + #'random_vel_4.fits', + #'random_vel_5.fits', + #'random_vel_6.fits', + #'random_vel_7.fits'] ref_list = Table.read(ref_file) @@ -298,8 +364,9 @@ def test_MosaicToRef_vel(): msc = align.MosaicToRef(ref_list, lists, iters=2, dr_tol=[0.2, 0.1], dm_tol=[1, 0.5], + outlier_tol=[None, None], trans_class=transforms.PolyTransform, - trans_args={'order': 2}, default_motion_model='Linear', + trans_args={'order': 1}, default_motion_model='Linear', update_ref_orig=False, verbose=False) msc.fit() @@ -312,6 +379,7 @@ def test_MosaicToRef_vel(): # The velocities should be almost the same as the input # velocities since update_ref_orig == False. + assert (msc.ref_table['name']==ref_list['name']).all() np.testing.assert_allclose(msc.ref_table['vx'], ref_list['vx'], rtol=1e-5) np.testing.assert_allclose(msc.ref_table['vy'], ref_list['vy'], rtol=1e-5) @@ -322,7 +390,8 @@ def test_MosaicToRef_vel(): msc.fit() # The velocities should be almost the same (but not as close as before) - # as the input velocities since update_ref == False. + # as the input velocities since update_ref == True. + assert (msc.ref_table['name']==ref_list['name']).all() np.testing.assert_allclose(msc.ref_table['vx'], ref_list['vx'], rtol=1e-1) np.testing.assert_allclose(msc.ref_table['vy'], ref_list['vy'], rtol=1e-1) @@ -549,6 +618,99 @@ def make_fake_starlists_poly1(seed=-1): return (xy_trans,mag_trans) +def make_fake_starlists_poly0_vel(seed=-1): + # If seed >=0, then set random seed to that value + if seed >= 0: + np.random.seed(seed=seed) + + N_stars = 200 + + x0 = np.random.rand(N_stars) * 10.0 # arcsec (increasing to East) + y0 = np.random.rand(N_stars) * 10.0 # arcsec + x0e = np.ones(N_stars) * 1.0e-4 # arcsec + y0e = np.ones(N_stars) * 1.0e-4 # arcsec + vx = np.random.randn(N_stars) * 5.0 # mas / yr + vy = np.random.randn(N_stars) * 5.0 # mas / yr + vxe = np.ones(N_stars) * 0.05 # mas / yr + vye = np.ones(N_stars) * 0.05 # mas / yr + m0 = (np.random.rand(N_stars) * 8) + 9 # mag + m0e = np.random.randn(N_stars) * 0.05 # mag + t0 = np.ones(N_stars) * 2019.5 + + # Make all the errors positive + x0e = np.abs(x0e) + y0e = np.abs(y0e) + m0e = np.abs(m0e) + vxe = np.abs(vxe) + vye = np.abs(vye) + + name = ['star_{0:03d}'.format(ii) for ii in range(N_stars)] + + # Make an StarList + lis = starlists.StarList([name, m0, m0e, x0, x0e, y0, y0e, vx, vxe, vy, vye, t0], + names = ('name', 'm0', 'm0_err', 'x0', 'x0_err', 'y0', 'y0_err', + 'vx', 'vx_err', 'vy', 'vy_err', 't0')) + + sdx = np.argsort(m0) + lis = lis[sdx] + + # Save original positions as reference (1st) list + # in a StarList format (with velocities). + lis.write('random_vel_ref.fits', overwrite=True) + + ########## + # Propogate to new times and distort. + ########## + # Make 4 new starlists with different epochs and transformations. + times = [2018.5, 2019.0, 2019.5, 2020.0, 2020.5, 2021.0, 2021.5, 2022.0] + xy_trans = [[[ 6.5], [ 10.1]], + [[100.3], [ 50.5]], + [[ 0.0], [ 0.0]], + [[250.0], [-250.0]], + [[ 50.0], [ -31.0]], + [[ 78.0], [ 45.0]], + [[-13.0], [ 150]], + [[ 94.0], [-182.0]]] + mag_trans = [0.1, 0.4, 0.0, -0.3, 0.2, 0.0, -0.1, -0.3] + + # Convert into pixels (undistorted) with the following info. + scale = 0.01 # arcsec / pix + shift = [1.0, 1.0] # pix + + for ss in range(len(times)): + dt = times[ss] - lis['t0'] + + x = lis['x0'] + (lis['vx']/1e3) * dt + y = lis['y0'] + (lis['vy']/1e3) * dt + t = np.ones(N_stars) * times[ss] + + # Convert into pixels + xp = (x / -scale) + shift[0] # -1 from switching to increasing to West (right) + yp = (y / scale) + shift[1] + xpe = lis['x0_err'] / scale + ype = lis['y0_err'] / scale + + # Distort the positions + trans = transforms.PolyTransform(0, xy_trans[ss][0], xy_trans[ss][1], mag_offset=mag_trans[ss]) + xd, yd = trans.evaluate(xp, yp) + md = trans.evaluate_mag(lis['m0']) + + # Perturb with small errors (0.1 pix) + xd += np.random.randn(N_stars) * xpe + yd += np.random.randn(N_stars) * ype + md += np.random.randn(N_stars) * 0.02 + xde = xpe + yde = ype + mde = lis['m0_err'] + + # Save the new list as a starlist. + new_lis = starlists.StarList([lis['name'], md, mde, xd, xde, yd, yde, t], + names=('name', 'm', 'me', 'x', 'xe', 'y', 'ye', 't')) + + new_lis.write('random_vel_p0_{0:d}.fits'.format(ss), overwrite=True) + + return (xy_trans, mag_trans) + def make_fake_starlists_poly1_vel(seed=-1): # If seed >=0, then set random seed to that value @@ -559,12 +721,12 @@ def make_fake_starlists_poly1_vel(seed=-1): x0 = np.random.rand(N_stars) * 10.0 # arcsec (increasing to East) y0 = np.random.rand(N_stars) * 10.0 # arcsec - x0e = np.random.randn(N_stars) * 5.0e-4 # arcsec - y0e = np.random.randn(N_stars) * 5.0e-4 # arcsec + x0e = np.ones(N_stars) * 1.0e-4 # arcsec + y0e = np.ones(N_stars) * 1.0e-4 # arcsec vx = np.random.randn(N_stars) * 5.0 # mas / yr vy = np.random.randn(N_stars) * 5.0 # mas / yr - vxe = np.random.randn(N_stars) * 0.1 # mas / yr - vye = np.random.randn(N_stars) * 0.1 # mas / yr + vxe = np.ones(N_stars) * 0.05 # mas / yr + vye = np.ones(N_stars) * 0.05 # mas / yr m0 = (np.random.rand(N_stars) * 8) + 9 # mag m0e = np.random.randn(N_stars) * 0.05 # mag t0 = np.ones(N_stars) * 2019.5 @@ -598,7 +760,7 @@ def make_fake_starlists_poly1_vel(seed=-1): xy_trans = [[[ 6.5, 0.99, 1e-5], [ 10.1, 1e-5, 0.99]], [[100.3, 0.98, 1e-5], [ 50.5, 9e-6, 1.001]], [[ 0.0, 1.00, 0.0], [ 0.0, 0.0, 1.000]], - [[250.0, 0.97, 2e-5], [-250.0, 1e-5, 1.001]], + [[250.0, 1.01, 2e-5], [-250.0, 1e-5, 0.98]], [[ 50.0, 1.01, 1e-5], [ -31.0, 1e-5, 1.000]], [[ 78.0, 0.98, 0.0 ], [ 45.0, 9e-6, 1.001]], [[-13.0, 0.99, 1e-5], [ 150, 2e-5, 1.002]], @@ -627,9 +789,9 @@ def make_fake_starlists_poly1_vel(seed=-1): xd, yd = trans.evaluate(xp, yp) md = trans.evaluate_mag(lis['m0']) - # Perturb with small errors (0.1 pix) - xd += np.random.randn(N_stars) * 0.1 - yd += np.random.randn(N_stars) * 0.1 + # Perturb with small errors (0.1 mas) + xd += np.random.randn(N_stars) * xpe + yd += np.random.randn(N_stars) * ype md += np.random.randn(N_stars) * 0.02 xde = xpe yde = ype @@ -652,16 +814,16 @@ def make_fake_starlists_poly1_acc(seed=-1): x0 = np.random.rand(N_stars) * 10.0 # arcsec (increasing to East) y0 = np.random.rand(N_stars) * 10.0 # arcsec - x0e = np.random.randn(N_stars) * 5.0e-4 # arcsec - y0e = np.random.randn(N_stars) * 5.0e-4 # arcsec + x0e = np.ones(N_stars) * 1.0e-4 # arcsec + y0e = np.ones(N_stars) * 1.0e-4 # arcsec vx = np.random.randn(N_stars) * 5.0 # mas / yr vy = np.random.randn(N_stars) * 5.0 # mas / yr - vxe = np.random.randn(N_stars) * 0.1 # mas / yr - vye = np.random.randn(N_stars) * 0.1 # mas / yr + vxe = np.ones(N_stars) * 0.1 # mas / yr + vye = np.ones(N_stars) * 0.1 # mas / yr ax = np.random.randn(N_stars) * 0.5 # mas / yr^2 ay = np.random.randn(N_stars) * 0.5 # mas / yr^2 - axe = np.random.randn(N_stars) * 0.01 # mas / yr^2 - aye = np.random.randn(N_stars) * 0.01 # mas / yr^2 + axe = np.ones(N_stars) * 0.01 # mas / yr^2 + aye = np.ones(N_stars) * 0.01 # mas / yr^2 m0 = (np.random.rand(N_stars) * 8) + 9 # mag m0e = np.random.randn(N_stars) * 0.05 # mag t0 = np.ones(N_stars) * 2019.5 @@ -734,8 +896,8 @@ def make_fake_starlists_poly1_acc(seed=-1): md = trans.evaluate_mag(lis['m0']) # Perturb with small errors (0.1 pix) - xd += np.random.randn(N_stars) * 0.1 - yd += np.random.randn(N_stars) * 0.1 + xd += np.random.randn(N_stars) * xpe + yd += np.random.randn(N_stars) * ype md += np.random.randn(N_stars) * 0.02 xde = xpe yde = ype From ab6b1beceade04e128147faf7a0e1e192edf81a9 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 13 Jan 2025 15:35:25 -0800 Subject: [PATCH 043/124] undo accidental comment --- flystar/analysis.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flystar/analysis.py b/flystar/analysis.py index 78aacab..aba9046 100644 --- a/flystar/analysis.py +++ b/flystar/analysis.py @@ -179,7 +179,7 @@ def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2) #except: # print('no invalig mags') - #gaia_new = gaia_new.filled() #convert masked colunms to regular columns + gaia_new = gaia_new.filled() #convert masked colunms to regular columns if targets_dict != None: for targ_name, targ_coo in targets_dict.items(): From 07d126534fdce927df4ffcad96248fbebabe3270 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 13 Jan 2025 16:14:53 -0800 Subject: [PATCH 044/124] update gaia to dr3 --- flystar/analysis.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flystar/analysis.py b/flystar/analysis.py index aba9046..11d30de 100644 --- a/flystar/analysis.py +++ b/flystar/analysis.py @@ -21,7 +21,7 @@ # the new StarTable and StarList format. ################################################## -def query_gaia(ra, dec, search_radius=30.0, table_name='gaiadr2'): +def query_gaia(ra, dec, search_radius=30.0, table_name='gaiadr3'): """ Query the Gaia database at the specified location and with the specified search radius From f7fa74ee478b1486645643423aca8f1432d78bb5 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 13 Jan 2025 16:45:00 -0800 Subject: [PATCH 045/124] tiny bug fix --- flystar/motion_model.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 5878cfa..e747ab8 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -77,7 +77,7 @@ def fit_motion_model(self, t, x, y, xe, ye, update=True, bootstrap=0, weighting= Best-fit parameters will be returned along with uncertainties and updated if update=True. """ - params, param_errs = self.run_fit(t, x, y, xe, ye, weighting=weighting, update=True) + params, param_errs = self.run_fit(t, x, y, xe, ye, weighting=weighting, update=update) if bootstrap>0 and len(x)>(self.n_pts_req): edx = np.arange(len(x), dtype=int) From 0cad524d84837c14688c788aedc7ee17870bc8d0 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 14 Jan 2025 09:02:33 -0800 Subject: [PATCH 046/124] test bug fix --- flystar/tests/test_motion_model.py | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/flystar/tests/test_motion_model.py b/flystar/tests/test_motion_model.py index 94474a7..91439d4 100755 --- a/flystar/tests/test_motion_model.py +++ b/flystar/tests/test_motion_model.py @@ -2,8 +2,9 @@ import numpy as np import pytest -def within_error(true_val, fit_val, fit_err, n_sigma=1): - return (true_val < (fit_val+fit_err)) & (true_val> (fit_val-fit_err)) +def within_error(true_val, fit_val, fit_err, n_sigma=2): + print('True', true_val, 'Fit', fit_val, 'Fit err', fit_err) + return (true_val < (fit_val+fit_err*n_sigma)) & (true_val> (fit_val-fit_err*n_sigma)) def test_Fixed(): # Test handling of a single star @@ -63,7 +64,8 @@ def test_Fixed(): def test_Linear(): # Test handling of a single star true_params = {'x0': 1.0, 'y0':0.5, 'x0_err':0.1, 'y0_err':0.1, - 'vx':0.2, 'vy':0.5, 'vx_err':0.05, 'vy_err':0.05} + 'vx':0.2, 'vy':0.5, 'vx_err':0.05, 'vy_err':0.05, + 't0':2025.0} mod_true = motion_model.Linear(**true_params) param_list = mod_true.fitter_param_names # Confirm return of proper values for single t=t0 and array t @@ -120,11 +122,11 @@ def test_Linear(): x_sim = np.random.normal(x_true, x_true_err) y_sim = np.random.normal(y_true, y_true_err) # Run fit - mod_fit = motion_model.Linear() + mod_fit = motion_model.Linear(t0=true_params['t0']) params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) print(param_errs) # Confirm true value is within error bar of fit value - assert [within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))] + assert np.all([within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))]) # Test fitter with bootstrap t = np.arange(2015.0,2025.0, 0.5) @@ -134,11 +136,11 @@ def test_Linear(): x_sim = np.random.normal(x_true, x_true_err) y_sim = np.random.normal(y_true, y_true_err) # Run fit - mod_fit = motion_model.Linear() + mod_fit = motion_model.Linear(t0=true_params['t0']) params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err,bootstrap=10) print(param_errs) # Confirm true value is within error bar of fit value - assert [within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))] + assert np.all([within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))]) # Test fitter for 2 pts t = np.array([2015.0,2025.0]) @@ -148,11 +150,11 @@ def test_Linear(): x_sim = np.random.normal(x_true, x_true_err) y_sim = np.random.normal(y_true, y_true_err) # Run fit - mod_fit = motion_model.Linear() + mod_fit = motion_model.Linear(t0=true_params['t0']) params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) print(param_errs) # Confirm true value is within error bar of fit value - assert [within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))] + assert np.all([within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))]) def test_Acceleration(): From 2a4124ca1081ce97dbdd34b3f0803f98466dd634 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 14 Jan 2025 10:29:25 -0800 Subject: [PATCH 047/124] more motion model debugging --- flystar/align.py | 39 ++++++++++++++++++++++++++------------- flystar/match.py | 2 +- 2 files changed, 27 insertions(+), 14 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index ed22926..fda9040 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -454,6 +454,7 @@ def match_and_transform(self, ref_mag_lim, dr_tol, dm_tol, outlier_tol, trans_ar **trans_args, m=star_list_orig_trim['m'][idx1], mref=ref_list['m'][idx2], weights=weight, mag_trans=self.mag_trans) + print(trans.px, trans.py) # Save the final transformation. self.trans_list[ii] = trans @@ -583,7 +584,7 @@ def setup_ref_table_from_starlist(self, star_list): array in the original reference star list. """ col_arrays = {} - motion_model_col_names = motion_model.get_all_motion_model_param_names(with_errors=True) + ['m0','m0_err','use_in_trans'] + motion_model_col_names = motion_model.get_all_motion_model_param_names(with_errors=True, with_fixed=True) + ['m0','m0_err','use_in_trans', 'motion_model_input', 'motion_model_used'] for col_name in star_list.colnames: if col_name == 'name': # The "name" column will be 1D; but we will also add a "name_in_list" column. @@ -682,6 +683,11 @@ def setup_ref_table_from_starlist(self, star_list): for col_name in ref_table.colnames: if len(ref_table[col_name].data.shape) == 2: # Find the 2D columns ref_table._set_invalid_list_values(col_name, -1) + + if 'motion_model_input' not in ref_table.colnames: + ref_table.add_column(Column(np.repeat(self.default_motion_model, len(ref_table)), name='motion_model_input')) + if 'motion_model_used' not in ref_table.colnames: + ref_table.add_column(Column(np.repeat('Fixed', len(ref_table)), name='motion_model_used')) return ref_table @@ -830,20 +836,27 @@ def update_ref_table_aggregates(self, n_boot=0): motion_model_class_names = [self.default_motion_model] if 'motion_model_used' in self.ref_table.keys(): motion_model_class_names += self.ref_table['motion_model_used'][ref_orig_idx].tolist() - motion_model_col_names = motion_model.get_list_motion_model_param_names(motion_model_class_names, with_errors=True) + motion_model_col_names = motion_model.get_list_motion_model_param_names(motion_model_class_names, with_errors=True, with_fixed=True) for mm in motion_model_col_names: if mm in self.ref_table.keys(): vals_orig[mm] = self.ref_table[mm][ref_orig_idx] - - # Combine positions with a velocity fit. - self.ref_table.fit_velocities(bootstrap=n_boot, verbose=self.verbose, default_motion_model=self.default_motion_model) - - # Combine (transformed) magnitudes - if 'me' in self.ref_table.colnames: - weights_col = None + # Figure out whether motion fits are necessary + all_fixed = np.all(self.ref_table['motion_model_input']=='Fixed') + if all_fixed: + weighted_xy = ('xe' in self.ref_table.colnames) and ('ye' in self.ref_table.colnames) + weighted_m = ('me' in self.ref_table.colnames) + + self.ref_table.combine_lists_xym(weighted_xy=weighted_xy, weighted_m=weighted_m) else: - weights_col = 'me' - self.ref_table.combine_lists('m', weights_col=weights_col, ismag=True) + # Combine positions with a velocity fit. + self.ref_table.fit_velocities(bootstrap=n_boot, verbose=self.verbose, default_motion_model=self.default_motion_model) + + # Combine (transformed) magnitudes + if 'me' in self.ref_table.colnames: + weights_col = None + else: + weights_col = 'me' + self.ref_table.combine_lists('m', weights_col=weights_col, ismag=True) # Replace the originals if we are supposed to keep them fixed. if not self.update_ref_orig: @@ -1636,7 +1649,7 @@ def fit(self): self.ref_table.detections() ### Drop all stars that have 0 detections. - idx = np.where((self.ref_table['n_detect'] == 0) & (self.ref_table['ref_orig'] == False))[0] + idx = np.where((self.ref_table['n_detect'] == 0))[0] print(' *** Getting rid of {0:d} out of {1:d} junk sources'.format(len(idx), len(self.ref_table))) self.ref_table.remove_rows(idx) @@ -1837,7 +1850,7 @@ def add_rows_for_new_stars(ref_table, star_list, idx_lis, default_motion_model=' elif col_name=='motion_model_input': new_col_empty = default_motion_model elif col_name=='motion_model_used': - new_col_empty = 'None' + new_col_empty = 'Fixed' else: new_col_empty = np.nan diff --git a/flystar/match.py b/flystar/match.py index c2b41c6..b086d32 100644 --- a/flystar/match.py +++ b/flystar/match.py @@ -15,7 +15,7 @@ def miracle_match_briteN(xin1, yin1, min1, xin2, yin2, min2, Nbrite, Nbins_vmax=200, Nbins_angle=360,verbose=False): """ Take two input starlists and select the brightest stars from - each. Then performa a triangle matching algorithm along the lines of + each. Then perform a triangle matching algorithm along the lines of Groth 1986. For every possible triangle (combination of 3 stars) in a starlist, From 5a0a408ec8ab7919495d7fb254993949e3a17c04 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 14 Jan 2025 11:36:45 -0800 Subject: [PATCH 048/124] more motion model debugging --- flystar/startables.py | 38 ++++++++++++++++++++++++++++---------- 1 file changed, 28 insertions(+), 10 deletions(-) diff --git a/flystar/startables.py b/flystar/startables.py index e03ece7..0fb7eb4 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -873,20 +873,38 @@ def get_star_positions_at_time(self, t): y = np.full(N_stars, np.nan, dtype=float) xe = np.full(N_stars, np.nan, dtype=float) ye = np.full(N_stars, np.nan, dtype=float) + + # TODO: probably worth some additional testing here # Check which motion models we need # use complex_mms to collect models besides Fixed and Linear - unique_mms = np.unique(self['motion_model_used']).tolist() + unique_mms = np.unique(self['motion_model_input']).tolist() # Calculate current position in batches by motion model for mm in unique_mms: - # Identify stars with this model & get class - idx = np.where(self['motion_model_used']==mm)[0] - modClass = getattr(motion_model, mm) - # Set up parameters - param_dict = {} - for par in motion_model.get_one_motion_model_param_names(mm,with_errors=True,with_fixed=True): - param_dict[par] = self[par][idx] - mod = modClass(RA=self.meta['RA'], Dec=self.meta['Dec'], PA=self.meta['position_angle'], obs=self.meta['observer_location']) - x[idx],y[idx],xe[idx],ye[idx] = mod.get_batch_pos_at_time(t,**param_dict) + try: + # Identify stars with this model & get class + idx = np.where(self['motion_model_input']==mm)[0] + modClass = getattr(motion_model, mm) + # Set up parameters + param_dict = {} + for par in motion_model.get_one_motion_model_param_names(mm,with_errors=True,with_fixed=True): + param_dict[par] = self[par][idx] + mod = modClass(RA=self.meta['RA'], Dec=self.meta['Dec'], PA=self.meta['position_angle'], obs=self.meta['observer_location']) + x[idx],y[idx],xe[idx],ye[idx] = mod.get_batch_pos_at_time(t,**param_dict) + except: + pass + if np.isnan(x).any(): + re_calc = np.where(np.isnan(x))[0] + for idx in re_calc: + mm = self['motion_model_used'][idx] + modClass = getattr(motion_model, mm) + # Set up parameters + param_dict = {} + for par in motion_model.get_one_motion_model_param_names(mm,with_errors=True,with_fixed=True): + param_dict[par] = self[par][idx] + mod = modClass(**param_dict, RA=self.meta['RA'], Dec=self.meta['Dec'], PA=self.meta['position_angle'], obs=self.meta['observer_location']) + x[idx],y[idx] = mod.get_pos_at_time(t) + xe[idx],ye[idx] = mod.get_pos_err_at_time(t) + return x,y,xe,ye From ab93f998e27b9166c82f9a67ff55c6bddc0d59f8 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 14 Jan 2025 16:35:04 -0800 Subject: [PATCH 049/124] debugging with real data --- flystar/align.py | 23 +++++++---------------- flystar/startables.py | 18 ++++++++++-------- 2 files changed, 17 insertions(+), 24 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index fda9040..15c6288 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -454,7 +454,6 @@ def match_and_transform(self, ref_mag_lim, dr_tol, dm_tol, outlier_tol, trans_ar **trans_args, m=star_list_orig_trim['m'][idx1], mref=ref_list['m'][idx2], weights=weight, mag_trans=self.mag_trans) - print(trans.px, trans.py) # Save the final transformation. self.trans_list[ii] = trans @@ -833,7 +832,7 @@ def update_ref_table_aggregates(self, n_boot=0): vals_orig = {} vals_orig['m0'] = self.ref_table['m0'][ref_orig_idx] vals_orig['m0_err'] = self.ref_table['m0_err'][ref_orig_idx] - motion_model_class_names = [self.default_motion_model] + motion_model_class_names = self.ref_table['motion_model_input'].tolist() if 'motion_model_used' in self.ref_table.keys(): motion_model_class_names += self.ref_table['motion_model_used'][ref_orig_idx].tolist() motion_model_col_names = motion_model.get_list_motion_model_param_names(motion_model_class_names, with_errors=True, with_fixed=True) @@ -938,6 +937,7 @@ def match_lists(self, dr_tol, dm_tol): idx_lis, idx_ref, dr, dm = match.match(star_list_T['x'], star_list_T['y'], star_list_T['m'], xref, yref, mref, dr_tol=dr_tol, dm_tol=dm_tol, verbose=self.verbose) + if self.verbose > 0: fmt = 'Matched {0:5d} out of {1:5d} stars in list {2:2d} [dr = {3:7.4f} +/- {4:6.4f}, dm = {5:5.2f} +/- {6:4.2f}' print(fmt.format(len(idx_lis), len(star_list_T), ii, dr.mean(), dr.std(), dm.mean(), dm.std())) @@ -1572,15 +1572,6 @@ def fit(self): # w, w_orig (optiona) -- the input and output weights of stars in transform: 2D ########## self.ref_table = self.setup_ref_table_from_starlist(self.ref_list) - - # copy over motion model parameters if they exist in the reference list - if 'motion_model_input' in self.ref_list.colnames: - self.ref_table['motion_model_input'] = self.ref_list['motion_model_input'] - if 'motion_model' in self.ref_list.colnames: - self.ref_table['motion_model_input'] = self.ref_list['motion_model'] - for param in motion_model.get_all_motion_model_param_names(with_fixed=True, with_errors=True): - if param in self.ref_list.colnames: - self.ref_table[param] = self.ref_list[param] ########## # @@ -1773,7 +1764,7 @@ def copy_over_values(ref_table, star_list, star_list_T, idx_epoch, idx_ref, idx_ idx_ref : list or array The indices into the ref_table where values are copied to. idx_lis : list or array - The indices into the star_list or star_lsit_T where values are copied from. + The indices into the star_list or star_list_T where values are copied from. """ for col_name in ref_table.colnames: if col_name in star_list_T.colnames: @@ -3041,7 +3032,7 @@ def get_weighting_scheme(weights, ref_list, star_list): return weight -# TODO: I think this is a startable, not a starlist, at least as currently used +# TODO: This is sometimes run on a startable, not a starlist, at least as currently used def get_pos_at_time(t, starlist): """ Take a starlist, check to see if it has motion/velocity columns. @@ -3060,9 +3051,9 @@ def get_pos_at_time(t, starlist): if 'motion_model_used' in starlist.colnames: x,y,xe,ye = starlist.get_star_positions_at_time(t) # If no motion model, check for velocities - elif ('vx' in starlist.colnames) and ('vy' in starlist.colnames) and ('x0' in starlist.colnames) and ('y0' in starlist.colnames): - x = starlist['x0'] + np.nan_to_num(starlist['vx'])*(t-starlist['t0']) - y = starlist['y0'] + np.nan_to_num(starlist['vy'])*(t-starlist['t0']) + elif ('vx' in starlist.colnames) and ('vy' in starlist.colnames): + x = starlist['x0'] + np.nan_to_num(starlist['vx'])*np.nan_to_num(t-starlist['t0']) + y = starlist['y0'] + np.nan_to_num(starlist['vy'])*np.nan_to_num(t-starlist['t0']) # If no velocities, try fitted positon elif ('x0' in starlist.colnames) and ('y0' in starlist.colnames): x = starlist['x0'] diff --git a/flystar/startables.py b/flystar/startables.py index 0fb7eb4..be5b76d 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -864,8 +864,6 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, # New function, to use in align def get_star_positions_at_time(self, t): """ Get current x,y positions of each star according to its motion_model - Instead of looping through every star, we implement a faster calculation for Fixed and Linear models, - and loop through any stars with a more complex model """ # Start with empty arrays so we can fill them in batches N_stars = len(self) @@ -894,17 +892,21 @@ def get_star_positions_at_time(self, t): pass if np.isnan(x).any(): re_calc = np.where(np.isnan(x))[0] - for idx in re_calc: - mm = self['motion_model_used'][idx] + unique_mms = np.unique(self['motion_model_used'][re_calc]).tolist() + # Calculate current position in batches by motion model + for mm in unique_mms: + # Identify stars with this model & get class + idx_0 = np.where(self['motion_model_used']==mm)[0] + idx = np.intersect1d(re_calc, idx_0) modClass = getattr(motion_model, mm) # Set up parameters param_dict = {} for par in motion_model.get_one_motion_model_param_names(mm,with_errors=True,with_fixed=True): param_dict[par] = self[par][idx] - mod = modClass(**param_dict, RA=self.meta['RA'], Dec=self.meta['Dec'], PA=self.meta['position_angle'], obs=self.meta['observer_location']) - x[idx],y[idx] = mod.get_pos_at_time(t) - xe[idx],ye[idx] = mod.get_pos_err_at_time(t) - + mod = modClass(RA=self.meta['RA'], Dec=self.meta['Dec'], PA=self.meta['position_angle'], obs=self.meta['observer_location']) + x[idx],y[idx],xe[idx],ye[idx] = mod.get_batch_pos_at_time(t,**param_dict) + + #print(x) return x,y,xe,ye From 6d2e6f6cb5916d030836cc78cee798a906b350e9 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 14 Jan 2025 16:51:16 -0800 Subject: [PATCH 050/124] still debugging.... --- flystar/align.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/flystar/align.py b/flystar/align.py index 15c6288..278b369 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -931,7 +931,11 @@ def match_lists(self, dr_tol, dm_tol): else: star_list_T.transform_xy(self.trans_list[ii]) + print('star list T x:',star_list_T['x']) + print('ref table x0', self.ref_table['x0']) + print('ref table vx', self.ref_table['vx']) xref, yref = get_pos_at_time(star_list_T['t'][0], self.ref_table) #, use_motion=self.use_motion) # optional velocity propogation. + print('x ref:',xref) mref = self.ref_table['m0'] idx_lis, idx_ref, dr, dm = match.match(star_list_T['x'], star_list_T['y'], star_list_T['m'], From c6f5bfd58ef66fe94370110399668f3a6a25fce9 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 14 Jan 2025 17:06:19 -0800 Subject: [PATCH 051/124] debugging - temporary solution --- flystar/align.py | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 278b369..75dda0c 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -931,11 +931,7 @@ def match_lists(self, dr_tol, dm_tol): else: star_list_T.transform_xy(self.trans_list[ii]) - print('star list T x:',star_list_T['x']) - print('ref table x0', self.ref_table['x0']) - print('ref table vx', self.ref_table['vx']) xref, yref = get_pos_at_time(star_list_T['t'][0], self.ref_table) #, use_motion=self.use_motion) # optional velocity propogation. - print('x ref:',xref) mref = self.ref_table['m0'] idx_lis, idx_ref, dr, dm = match.match(star_list_T['x'], star_list_T['y'], star_list_T['m'], @@ -3055,9 +3051,10 @@ def get_pos_at_time(t, starlist): if 'motion_model_used' in starlist.colnames: x,y,xe,ye = starlist.get_star_positions_at_time(t) # If no motion model, check for velocities - elif ('vx' in starlist.colnames) and ('vy' in starlist.colnames): - x = starlist['x0'] + np.nan_to_num(starlist['vx'])*np.nan_to_num(t-starlist['t0']) - y = starlist['y0'] + np.nan_to_num(starlist['vy'])*np.nan_to_num(t-starlist['t0']) + #TODO: This is a hacky temporary solution, need to make motion-model compatible + if ('vx' in starlist.colnames) and ('vy' in starlist.colnames): + x = starlist['x0'] + starlist['vx']*(t-starlist['t0']) + y = starlist['y0'] + starlist['vy']*(t-starlist['t0']) # If no velocities, try fitted positon elif ('x0' in starlist.colnames) and ('y0' in starlist.colnames): x = starlist['x0'] From 8278d23059d1ae316f310a55693d8d6fe5a04d3c Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 14 Jan 2025 17:11:00 -0800 Subject: [PATCH 052/124] align.py --- flystar/startables.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/flystar/startables.py b/flystar/startables.py index be5b76d..427c3e1 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -862,7 +862,7 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, return # New function, to use in align - def get_star_positions_at_time(self, t): + def get_star_positions_at_time(self, t, allow_alt_models=True): """ Get current x,y positions of each star according to its motion_model """ # Start with empty arrays so we can fill them in batches @@ -890,7 +890,7 @@ def get_star_positions_at_time(self, t): x[idx],y[idx],xe[idx],ye[idx] = mod.get_batch_pos_at_time(t,**param_dict) except: pass - if np.isnan(x).any(): + if np.isnan(x).any() and allow_alt_models: re_calc = np.where(np.isnan(x))[0] unique_mms = np.unique(self['motion_model_used'][re_calc]).tolist() # Calculate current position in batches by motion model From 62daecc3e36f72ac9df9aab9fd31768097d6daf1 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 14 Jan 2025 17:11:56 -0800 Subject: [PATCH 053/124] debugged issue mb19284 brought up --- flystar/align.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 75dda0c..c0153e3 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -3049,10 +3049,9 @@ def get_pos_at_time(t, starlist): """ # Check for motion model if 'motion_model_used' in starlist.colnames: - x,y,xe,ye = starlist.get_star_positions_at_time(t) + x,y,xe,ye = starlist.get_star_positions_at_time(t, allow_alt_models=False) # If no motion model, check for velocities - #TODO: This is a hacky temporary solution, need to make motion-model compatible - if ('vx' in starlist.colnames) and ('vy' in starlist.colnames): + elif ('vx' in starlist.colnames) and ('vy' in starlist.colnames): x = starlist['x0'] + starlist['vx']*(t-starlist['t0']) y = starlist['y0'] + starlist['vy']*(t-starlist['t0']) # If no velocities, try fitted positon From 6acd56ac1a484b8b3e9583aaeaf1e3f37ceccec9 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 16 Jan 2025 16:59:18 -0800 Subject: [PATCH 054/124] motion model application to plots --- flystar/plots.py | 72 ++++++++++++++++++++++++++---------------------- 1 file changed, 39 insertions(+), 33 deletions(-) diff --git a/flystar/plots.py b/flystar/plots.py index 070767e..9c933ce 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -1,4 +1,4 @@ -from flystar import analysis, motion_model +from flystar import analysis, motion_model, startable import pylab as py import pylab as plt import numpy as np @@ -1072,8 +1072,7 @@ def plot_mean_residuals_by_epoch(tab): """ # Predicted model positions at each epoch dt = tab['t'] - tab['t0'][:, np.newaxis] - xt_mod = tab['x0'][:, np.newaxis] + tab['vx'][:, np.newaxis] * dt - yt_mod = tab['y0'][:, np.newaxis] + tab['vy'][:, np.newaxis] * dt + xt_mod, yt_mod, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) # Residuals dx = tab['x'] - xt_mod @@ -1129,11 +1128,13 @@ def plot_quiver_residuals_all_epochs(tab, unit='arcsec', scale=None, plotlim=Non n_good = np.zeros(len(tab), dtype=int) dr_ref = np.zeros(len(tab), dtype=float) n_ref = np.zeros(len(tab), dtype=int) + + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) for ee in range(tab['x'].shape[1]): dt = tab['t'][:, ee] - tab['t0'] - xt_mod = tab['x0'] + tab['vx'] * dt - yt_mod = tab['y0'] + tab['vy'] * dt + xt_mod = xt_mod_all[ee] + yt_mod = yt_mod_all[ee] good_idx = np.where(np.isfinite(tab['x'][:, ee]) == True)[0] ref_idx = np.where(tab[good_idx]['used_in_trans'][:, ee] == True)[0] @@ -1193,11 +1194,13 @@ def plot_quiver_residuals_with_orig_all_epochs(tab, trans_list, unit='arcsec', s n_good = np.zeros(len(tab), dtype=int) dr_ref = np.zeros(len(tab), dtype=float) n_ref = np.zeros(len(tab), dtype=int) + + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) for ee in range(tab['x'].shape[1]): dt = tab['t'][:, ee] - tab['t0'] - xt_mod = tab['x0'] + tab['vx'] * dt - yt_mod = tab['y0'] + tab['vy'] * dt + xt_mod = xt_mod_all[ee] + yt_mod = yt_mod_all[ee] good_idx = np.where(np.isfinite(tab['x'][:, ee]) == True)[0] ref_idx = np.where(tab[good_idx]['used_in_trans'][:, ee] == True)[0] @@ -1302,14 +1305,15 @@ def plot_mag_scatter_multi_trans_all_epochs(tab_list, trans_list_list, unit='arc da_list = [] ntrans = len(tab_list) + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) for mm in range(ntrans): tab = tab_list[mm] trans_list = trans_list_list[mm] for ee in range(tab['x'].shape[1]): dt = tab['t'][:, ee] - tab['t0'] - xt_mod = tab['x0'] + tab['vx'] * dt - yt_mod = tab['y0'] + tab['vy'] * dt + xt_mod = xt_mod_all[ee] + yt_mod = yt_mod_all[ee] good_idx = np.where(np.isfinite(tab['x'][:, ee]) == True)[0] ref_idx = np.where(tab[good_idx]['used_in_trans'][:, ee] == True)[0] @@ -1854,11 +1858,12 @@ def plot_quiver_residuals_magcolor_all_epochs(tab, unit='arcsec', scale=None, pl idx = np.where((tab['m0'] < lower_mag) & (tab['m0'] > upper_mag))[0] tab = tab[idx] + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) for ee in range(tab['x'].shape[1]): dt = tab['t'][:, ee] - tab['t0'] - xt_mod = tab['x0'] + tab['vx'] * dt - yt_mod = tab['y0'] + tab['vy'] * dt + xt_mod = xt_mod_all[ee] + yt_mod = yt_mod_all[ee] mag = tab['m0'] good_idx = np.where(np.isfinite(tab['x'][:, ee]) == True)[0] @@ -2159,6 +2164,8 @@ def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50): chi2_x_list = [] chi2_y_list = [] fnd_list = [] # Number of non-NaN error measurements + + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) for ii in range(len(tab)): # Ignore the NaNs @@ -2172,8 +2179,8 @@ def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50): yerr = tab['ye'][ii, fnd] dt = tab['t'][ii, fnd] - tab['t0'][ii] - fitLineX = tab['x0'][ii] + (tab['vx'][ii] * dt) - fitLineY = tab['y0'][ii] + (tab['vy'][ii] * dt) + fitLineX = xt_mod_all[ee] + fitLineY = yt_mod_all[ee] diffX = x - fitLineX diffY = y - fitLineY @@ -2236,6 +2243,8 @@ def plot_chi2_dist_per_epoch(tab, Ndetect, mlim=[14,21], ylim = [-1, 1], target_ sigX_arr = np.nan * np.ones((len(tab['xe']), Ndetect)) sigY_arr = np.nan * np.ones((len(tab['xe']), Ndetect)) m_arr = np.nan * np.ones((len(tab['xe']), Ndetect)) + + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) for ii in range(len(tab['xe'])): # Ignore the NaNs @@ -2250,8 +2259,8 @@ def plot_chi2_dist_per_epoch(tab, Ndetect, mlim=[14,21], ylim = [-1, 1], target_ yerr = tab['ye'][ii, fnd] dt = tab['t'][ii, fnd] - tab['t0'][ii] - fitLineX = tab['x0'][ii] + (tab['vx'][ii] * dt) - fitLineY = tab['y0'][ii] + (tab['vy'][ii] * dt) + fitLineX = xt_mod_all[ee] + fitLineY = yt_mod_all[ee] diffX = x - fitLineX diffY = y - fitLineY @@ -2313,6 +2322,7 @@ def plot_chi2_dist_per_epoch(tab, Ndetect, mlim=[14,21], ylim = [-1, 1], target_ return +# TODO: update for motion model def plot_chi2_ecliptic_per_epoch(tab, Ndetect,ra,dec, mlim=[14,21], ylim = [-1, 1], target_idx = 0): """ tab = flystar table @@ -2510,6 +2520,8 @@ def rs(x): x = tab['x0'] y = tab['y0'] r = np.hypot(x, y) + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) + for i in range(Nstars): starName = star_names[i] @@ -2539,21 +2551,12 @@ def rs(x): dt = tab['t'][ii, fnd] - tab['t0'][ii] - if 'motion_model_used' not in tab.keys(): - fitLineX = tab['x0'][ii] + (tab['vx'][ii] * dt) - fitLineY = tab['y0'][ii] + (tab['vy'][ii] * dt) + fitLineX = xt_mod_all[ee] + fitLineY = yt_mod_all[ee] + + fitSigX = xt_mod_err[ee] + fitSigY = yt_mod_err[ee] - fitSigX = np.hypot(tab['x0_err'][ii], tab['vx_err'][ii]*dt) - fitSigY = np.hypot(tab['y0_err'][ii], tab['vy_err'][ii]*dt) - else: - motion_model_str = tab['motion_model_used'][ii] - modClass = getattr(motion_model, motion_model_str) - param_dict = {} - for par in modClass.fitter_param_names+modClass.fixed_param_names: - param_dict[par] = tab[par][ii] - mod = modClass(**param_dict, PA=position_angle, RA=RA, Dec=Dec, obs=observer_location) - fitLineX, fitLineY = mod.get_pos_at_time(time) - fitSigX, fitSigY = mod.get_pos_err_at_time(time) fitLineM = np.repeat(tab['m0'][ii], len(dt)).reshape(len(dt),1) fitSigM = np.repeat(tab['m0_err'][ii], len(dt)).reshape(len(dt),1) @@ -2915,6 +2918,9 @@ def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_ print( 'Creating residuals plots for star(s):' ) print( star_names ) + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) + + Nstars = len(star_names) Ncols = 3 * np.min([Nstars, NcolMax]) if Nstars <= Ncols/3: @@ -2959,11 +2965,11 @@ def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_ merr = tab['me'][ii, fnd] dt = tab['t'][ii, fnd] - tab['t0'][ii] - fitLineX = tab['x0'][ii] + (tab['vx'][ii] * dt) - fitLineY = tab['y0'][ii] + (tab['vy'][ii] * dt) + fitLineX = xt_mod_all[ee] + fitLineY = yt_mod_all[ee] - fitSigX = np.hypot(tab['x0_err'][ii], tab['vx_err'][ii]*dt) - fitSigY = np.hypot(tab['y0_err'][ii], tab['vy_err'][ii]*dt) + fitSigX = xt_mod_err[ee] + fitSigY = yt_mod_err[ee] fitLineM = np.repeat(tab['m0'][ii], len(dt)).reshape(len(dt),1) fitSigM = np.repeat(tab['m0_err'][ii], len(dt)).reshape(len(dt),1) From 70430b87f9bd505e2d4eac187539923c6d833b44 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Fri, 17 Jan 2025 17:28:40 -0800 Subject: [PATCH 055/124] debugging periter, adding atend update_ref_orig options --- flystar/align.py | 18 ++++++++++-------- flystar/motion_model.py | 2 +- flystar/plots.py | 2 +- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index c0153e3..13331ed 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -346,7 +346,8 @@ def fit(self): print("**********") self.match_lists(self.dr_tol[-1], self.dm_tol[-1]) - self.update_ref_table_aggregates() + # Hard-coded not to keep ref values for MosaicSelfRef + self.update_ref_table_aggregates(False) ########## # Clean up output table. @@ -518,8 +519,8 @@ def match_and_transform(self, ref_mag_lim, dr_tol, dm_tol, outlier_tol, trans_ar self.update_ref_table_from_list(star_list, star_list_T, ii, idx_ref, idx_lis, idx2) ### Update the "average" values to be used as the reference frame for the next list. - if self.update_ref_orig != 'periter': - self.update_ref_table_aggregates() + keep_ref_orig = (self.update_ref_orig==False) or (self.update_ref_orig=='atend') or (self.update_ref_orig=='periter' and ii<(len(self.star_lists)-1)) + self.update_ref_table_aggregates(keep_ref_orig) # Print out some metrics if self.verbose > 0: @@ -815,19 +816,19 @@ def update_ref_table_from_list(self, star_list, star_list_T, ii, idx_ref, idx_li return - def update_ref_table_aggregates(self, n_boot=0): + def update_ref_table_aggregates(self, keep_ref_orig, n_boot=0): """ Average positions or fit velocities. Average magnitudes. Calculate bootstrap errors if desired. - Update the use_in_trans values as needed. + Update the use_in_trans values as needed. TODO: ???? Updates aggregate columns in self.ref_table in place. """ # Keep track of the original reference values. # In certain cases, we will NOT update these. - if not self.update_ref_orig: + if keep_ref_orig: ref_orig_idx = np.where(self.ref_table['ref_orig'] == True)[0] vals_orig = {} vals_orig['m0'] = self.ref_table['m0'][ref_orig_idx] @@ -858,7 +859,7 @@ def update_ref_table_aggregates(self, n_boot=0): self.ref_table.combine_lists('m', weights_col=weights_col, ismag=True) # Replace the originals if we are supposed to keep them fixed. - if not self.update_ref_orig: + if keep_ref_orig: for val in vals_orig.keys(): self.ref_table[val][ref_orig_idx] = vals_orig[val] return @@ -1626,7 +1627,8 @@ def fit(self): print("**********") self.match_lists(self.dr_tol[-1], self.dm_tol[-1]) - self.update_ref_table_aggregates() + keep_ref_orig = (self.update_ref_orig==False) + self.update_ref_table_aggregates(keep_ref_orig) ########## # Clean up output table. diff --git a/flystar/motion_model.py b/flystar/motion_model.py index e747ab8..6479bbc 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -351,7 +351,7 @@ def accel(t, c0,c1,c2): x0e, vx0e, axe = np.sqrt(x_cov.diagonal()) y0e, vy0e, aye = np.sqrt(y_cov.diagonal()) - x0e, vxe, axe, y0e, vye, aye = self.scale_errors([x0e, vxe, axe, y0e, vye, aye], weighting=weighting) + x0e, vx0e, axe, y0e, vy0e, aye = self.scale_errors([x0e, vx0e, axe, y0e, vy0e, aye], weighting=weighting) if update: self.x0 = x0 diff --git a/flystar/plots.py b/flystar/plots.py index 9c933ce..e211e8e 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -1,4 +1,4 @@ -from flystar import analysis, motion_model, startable +from flystar import analysis, motion_model, startables import pylab as py import pylab as plt import numpy as np From bba22e39fd566fa6c2b8cff14c9e5722208503f6 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 21 Jan 2025 16:50:37 -0800 Subject: [PATCH 056/124] reset input model option for fit_velocitis --- flystar/startables.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/flystar/startables.py b/flystar/startables.py index 427c3e1..71c314c 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -547,7 +547,8 @@ def detections(self): return def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, bootstrap=0, fixed_t0=False, verbose=False, - mask_val=None, mask_lists=False, show_progress=True, default_motion_model='Linear'): + mask_val=None, mask_lists=False, show_progress=True, default_motion_model='Linear', + reassign_motion_model=False): """Fit velocities for all stars in the table and add to the columns 'vx', 'vxe', 'vy', 'vye', 'x0', 'x0e', 'y0', 'y0e'. Parameters @@ -593,7 +594,7 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b # Set all to default_motion_model if none assigned already. # Reset motion_model_used to the inputs for now -> will change as fits run - if 'motion_model_input' not in self.colnames: + if ('motion_model_input' not in self.colnames) or reassign_motion_model: self['motion_model_input'] = default_motion_model self['motion_model_used'] = self['motion_model_input'] From 8625d4fc35dddc151da929bebc0a8a35297d4846 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 21 Jan 2025 17:07:27 -0800 Subject: [PATCH 057/124] only fit stars if needed --- flystar/align.py | 6 +++++- flystar/startables.py | 10 +++++++--- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 13331ed..a86ee19 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -840,6 +840,9 @@ def update_ref_table_aggregates(self, keep_ref_orig, n_boot=0): for mm in motion_model_col_names: if mm in self.ref_table.keys(): vals_orig[mm] = self.ref_table[mm][ref_orig_idx] + fit_star_idxs = np.where(self.ref_table['ref_orig'] == False)[0] + else: + fit_star_idxs = None # Figure out whether motion fits are necessary all_fixed = np.all(self.ref_table['motion_model_input']=='Fixed') if all_fixed: @@ -849,7 +852,8 @@ def update_ref_table_aggregates(self, keep_ref_orig, n_boot=0): self.ref_table.combine_lists_xym(weighted_xy=weighted_xy, weighted_m=weighted_m) else: # Combine positions with a velocity fit. - self.ref_table.fit_velocities(bootstrap=n_boot, verbose=self.verbose, default_motion_model=self.default_motion_model) + self.ref_table.fit_velocities(bootstrap=n_boot, verbose=self.verbose, + default_motion_model=self.default_motion_model, select_stars=fit_star_idxs) # Combine (transformed) magnitudes if 'me' in self.ref_table.colnames: diff --git a/flystar/startables.py b/flystar/startables.py index 71c314c..7104618 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -548,7 +548,7 @@ def detections(self): def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, bootstrap=0, fixed_t0=False, verbose=False, mask_val=None, mask_lists=False, show_progress=True, default_motion_model='Linear', - reassign_motion_model=False): + reassign_motion_model=False, select_stars=None): """Fit velocities for all stars in the table and add to the columns 'vx', 'vxe', 'vy', 'vye', 'x0', 'x0e', 'y0', 'y0e'. Parameters @@ -643,16 +643,20 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b return + # Only fit selected stars, if list given + fit_star_idxs = range(N_stars) + if select_stars is not None: + fit_star_idxs = select_stars # STARS LOOP through the stars and work on them 1 at a time. # This is slow; but robust. if show_progress: - for ss in tqdm(range(N_stars)): + for ss in tqdm(fit_star_idxs): self.fit_velocity_for_star(ss, weighting=weighting, use_scipy=use_scipy, absolute_sigma=absolute_sigma, bootstrap=bootstrap, fixed_t0=fixed_t0, default_motion_model=default_motion_model, mask_val=mask_val, mask_lists=mask_lists) else: - for ss in range(N_stars): + for ss in range(fit_star_idxs): self.fit_velocity_for_star(ss, weighting=weighting, use_scipy=use_scipy, absolute_sigma=absolute_sigma, bootstrap=bootstrap, fixed_t0=fixed_t0, default_motion_model=default_motion_model, From 35c08d3d1ea4548d8caf9e219452af27918bdc1d Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 22 Jan 2025 16:39:43 -0800 Subject: [PATCH 058/124] more motion model debugging, with plots and parallax --- flystar/analysis.py | 35 ++++++----------------------- flystar/motion_model.py | 9 ++++---- flystar/plots.py | 49 ++++++++++++++++++++--------------------- flystar/startables.py | 19 +++++++++++----- 4 files changed, 49 insertions(+), 63 deletions(-) diff --git a/flystar/analysis.py b/flystar/analysis.py index 11d30de..4aac894 100644 --- a/flystar/analysis.py +++ b/flystar/analysis.py @@ -18,7 +18,7 @@ ################################################## # New codes for velocity support in FlyStar and using -# the new StarTable and StarList format. +# the new StarTable and StarList format. ################################################## def query_gaia(ra, dec, search_radius=30.0, table_name='gaiadr3'): @@ -409,33 +409,12 @@ def startable_subset(tab, idx, mag_trans=True, mag_trans_orig=False): # 'x0', 'vx', 'y0', 'vy', 'x0_err', 'vx_err', 'y0_err', 'vy_err', 't0'] # Don't include n_vfit - new_tab = startables.StarTable(name=tab['name'].data, - x=tab['x'][:,idx].data, - y=tab['y'][:,idx].data, - m=tab['m'][:,idx].data, - xe=tab['xe'][:,idx].data, - ye=tab['ye'][:,idx].data, - me=tab['me'][:,idx].data, - t=tab['t'][:,idx].data, - x_orig=tab['x_orig'][:,idx].data, - y_orig=tab['y_orig'][:,idx].data, - m_orig=tab['m_orig'][:,idx].data, - xe_orig=tab['xe_orig'][:,idx].data, - ye_orig=tab['ye_orig'][:,idx].data, - me_orig=tab['me_orig'][:,idx].data, - used_in_trans=tab['used_in_trans'][:,idx].data, - m0=tab['m0'].data, - m0e=tab['m0_err'].data, - use_in_trans=tab['use_in_trans'].data, - x0=tab['x0'].data, - vx=tab['vx'].data, - y0=tab['y0'].data, - vy=tab['vy'].data, - x0e=tab['x0_err'].data, - vxe=tab['vx_err'].data, - y0e=tab['y0_err'].data, - vye=tab['vy_err'].data, - t0=tab['t0'].data) + new_tab = copy.deepcopy(tab) + #new_tab.remove_column('n_fit') + new_tab.remove_column('n_detect') + for col in ['x','y','m','xe','ye','me','t','x_orig','y_orig','m_orig', + 'xe_orig','ye_orig','me_orig','used_in_trans']: + new_tab[col] = tab[col][:,idx] new_tab.combine_lists('m', weights_col='me', sigma=3, ismag=True) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 6479bbc..4a18509 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -101,7 +101,6 @@ def get_chi2(self,t,x,y,xe,ye,reduced=False): Get the chi^2 value for the current MM and the input data. """ - # TODO: confirm whether we want reduced chi^2 or anything special - maybe kwarg option x_pred,y_pred = self.get_pos_at_time(t) chi2x = np.sum((x-x_pred)**2 / xe**2) chi2y = np.sum((y-y_pred)**2 / ye**2) @@ -433,11 +432,11 @@ def get_batch_pos_at_time(self, t, pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA).T if hasattr(t, "__len__"): dt = t-t0[:,np.newaxis] - x = x0[:,np.newaxis] + dt*vx[:,np.newaxis] + pi[:,np.newaxis]*pvec[0] - y = y0[:,np.newaxis] + dt*vy[:,np.newaxis] + pi[:,np.newaxis]*pvec[1] + x = x0[:,np.newaxis] + dt*vx[:,np.newaxis] + pi[:,np.newaxis]*pvec[0].T + y = y0[:,np.newaxis] + dt*vy[:,np.newaxis] + pi[:,np.newaxis]*pvec[1].T try: - x_err = np.sqrt(x0_err[:,np.newaxis]**2 + (vx_err[:,np.newaxis]*dt)**2 + (pi_err[:,np.newaxis]*pvec[0])**2) - y_err = np.sqrt(y0_err[:,np.newaxis]**2 + (vy_err[:,np.newaxis]*dt)**2 + (pi_err[:,np.newaxis]*pvec[1])**2) + x_err = np.sqrt(x0_err[:,np.newaxis]**2 + (vx_err[:,np.newaxis]*dt)**2 + (pi_err[:,np.newaxis]*pvec[0].T)**2) + y_err = np.sqrt(y0_err[:,np.newaxis]**2 + (vy_err[:,np.newaxis]*dt)**2 + (pi_err[:,np.newaxis]*pvec[1].T)**2) except: x_err,y_err = [],[] else: diff --git a/flystar/plots.py b/flystar/plots.py index e211e8e..2e335a4 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -2165,12 +2165,12 @@ def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50): chi2_y_list = [] fnd_list = [] # Number of non-NaN error measurements - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) + i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) for ii in range(len(tab)): # Ignore the NaNs fnd = np.argwhere(~np.isnan(tab['xe'][ii,:])) -# fnd = np.where(tab['xe'][ii, :] > 0)[0] fnd_list.append(len(fnd)) x = tab['x'][ii, fnd] @@ -2178,9 +2178,8 @@ def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50): xerr = tab['xe'][ii, fnd] yerr = tab['ye'][ii, fnd] - dt = tab['t'][ii, fnd] - tab['t0'][ii] - fitLineX = xt_mod_all[ee] - fitLineY = yt_mod_all[ee] + fitLineX = xt_mod_all[ii, fnd] + fitLineY = yt_mod_all[ii,fnd] diffX = x - fitLineX diffY = y - fitLineY @@ -2198,7 +2197,7 @@ def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50): idx = np.where(fnd == Ndetect)[0] # Fitting position and velocity... so subtract 2 to get Ndof - Ndof = Ndetect - 2 + Ndof = Ndetect - tab['dof'][i_all_detected] chi2_xaxis = np.linspace(0, xlim, xlim*3) chi2_bins = np.linspace(0, xlim, n_bins) @@ -2206,7 +2205,7 @@ def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50): plt.clf() plt.hist(x[idx], bins=chi2_bins, histtype='step', label='X', density=True) plt.hist(y[idx], bins=chi2_bins, histtype='step', label='Y', density=True) - plt.plot(chi2_xaxis, chi2.pdf(chi2_xaxis, Ndof), 'r-', alpha=0.6, + plt.plot(chi2_xaxis, chi2.pdf(chi2_xaxis, Ndof), 'r-', alpha=0.6, label='$\chi^2$ ' + str(Ndof) + ' dof') plt.title('$N_{epoch} = $' + str(Ndetect) + ', $N_{dof} = $' + str(Ndof)) plt.xlim(0, xlim) @@ -2244,8 +2243,9 @@ def plot_chi2_dist_per_epoch(tab, Ndetect, mlim=[14,21], ylim = [-1, 1], target_ sigY_arr = np.nan * np.ones((len(tab['xe']), Ndetect)) m_arr = np.nan * np.ones((len(tab['xe']), Ndetect)) - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) - + i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + for ii in range(len(tab['xe'])): # Ignore the NaNs fnd = np.argwhere(~np.isnan(tab['xe'][ii,:])) @@ -2258,9 +2258,8 @@ def plot_chi2_dist_per_epoch(tab, Ndetect, mlim=[14,21], ylim = [-1, 1], target_ xerr = tab['xe'][ii, fnd] yerr = tab['ye'][ii, fnd] - dt = tab['t'][ii, fnd] - tab['t0'][ii] - fitLineX = xt_mod_all[ee] - fitLineY = yt_mod_all[ee] + fitLineX = xt_mod_all[ii, fnd] + fitLineY = yt_mod_all[ii, fnd] diffX = x - fitLineX diffY = y - fitLineY @@ -2442,7 +2441,7 @@ def eq_to_ec(ra,dec): ax3.set_ylabel('residual (mas)') return -def plot_chi2_dist_mag(tab, Ndetect, mlim=40, n_bins=30): +def plot_chi2_dist_mag(tab, Ndetect, xlim=40, n_bins=30): """ tab = flystar table Ndetect = Number of epochs star detected in @@ -2473,16 +2472,16 @@ def plot_chi2_dist_mag(tab, Ndetect, mlim=40, n_bins=30): # Fitting mean magnitude... so subtract 1 to get Ndof Ndof = Ndetect - 1 - chi2_maxis = np.linspace(0, mlim, mlim*3) - chi2_bins = np.linspace(0, mlim, n_bins) + chi2_maxis = np.linspace(0, xlim, xlim*3) + chi2_bins = np.linspace(0, xlim, n_bins) plt.figure(figsize=(6,4)) plt.clf() - plt.hist(chi2_m[idx], bins=np.arange(mlim*10), histtype='step', density=True) + plt.hist(chi2_m[idx], bins=np.arange(xlim*10), histtype='step', density=True) plt.plot(chi2_maxis, chi2.pdf(chi2_maxis, Ndof), 'r-', alpha=0.6, label='$\chi^2$ ' + str(Ndof) + ' dof') plt.title('$N_{epoch} = $' + str(Ndetect) + ', $N_{dof} = $' + str(Ndof)) - plt.xlim(0, mlim) + plt.xlim(0, xlim) plt.legend() print('Mean reduced chi^2: (Ndetect = {0:d} of {1:d})'.format(len(idx), len(tab))) @@ -2551,11 +2550,11 @@ def rs(x): dt = tab['t'][ii, fnd] - tab['t0'][ii] - fitLineX = xt_mod_all[ee] - fitLineY = yt_mod_all[ee] + fitLineX = xt_mod_all[ii] + fitLineY = yt_mod_all[ii] - fitSigX = xt_mod_err[ee] - fitSigY = yt_mod_err[ee] + fitSigX = xt_mod_err[ii] + fitSigY = yt_mod_err[ii] fitLineM = np.repeat(tab['m0'][ii], len(dt)).reshape(len(dt),1) @@ -2965,11 +2964,11 @@ def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_ merr = tab['me'][ii, fnd] dt = tab['t'][ii, fnd] - tab['t0'][ii] - fitLineX = xt_mod_all[ee] - fitLineY = yt_mod_all[ee] + fitLineX = xt_mod_all[ii] + fitLineY = yt_mod_all[ii] - fitSigX = xt_mod_err[ee] - fitSigY = yt_mod_err[ee] + fitSigX = xt_mod_err[ii] + fitSigY = yt_mod_err[ii] fitLineM = np.repeat(tab['m0'][ii], len(dt)).reshape(len(dt),1) fitSigM = np.repeat(tab['m0_err'][ii], len(dt)).reshape(len(dt),1) diff --git a/flystar/startables.py b/flystar/startables.py index 7104618..b4ec991 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -605,7 +605,7 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b all_motion_models = np.unique(self['motion_model_input'].tolist() + ['Fixed']+[default_motion_model]).tolist() new_col_list = motion_model.get_list_motion_model_param_names(all_motion_models, with_errors=True) # Append goodness of fit metrics and t0. - new_col_list += ['chi2_x', 'chi2_y'] + new_col_list += ['chi2_x', 'chi2_y', 'dof'] if 't0' not in new_col_list: new_col_list.append('t0') @@ -640,6 +640,7 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b self['y0_err'] = self['ye'][:,0] self['n_fit'] = 1 + self['dof'] = 1 return @@ -786,6 +787,7 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, if N_good == 0: #self['motion_model_used'][ss] = 'None' self['n_fit'][ss] = N_good + self['dof'][ss] = 0 return # Everything below has N_good >= 1 @@ -856,6 +858,7 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, chi2_x,chi2_y = mod.get_chi2(t,x,y,xe,ye) self['chi2_x'][ss]=chi2_x self['chi2_y'][ss]=chi2_y + self['dof'][ss] = mod.dof # Save parameters and errors to table. for pp in range(len(modClass.fitter_param_names)): @@ -872,10 +875,16 @@ def get_star_positions_at_time(self, t, allow_alt_models=True): """ # Start with empty arrays so we can fill them in batches N_stars = len(self) - x = np.full(N_stars, np.nan, dtype=float) - y = np.full(N_stars, np.nan, dtype=float) - xe = np.full(N_stars, np.nan, dtype=float) - ye = np.full(N_stars, np.nan, dtype=float) + if hasattr(t, "__len__"): + x = np.full((N_stars,len(t)), np.nan, dtype=float) + y = np.full((N_stars,len(t)), np.nan, dtype=float) + xe = np.full((N_stars,len(t)), np.nan, dtype=float) + ye = np.full((N_stars,len(t)), np.nan, dtype=float) + else: + x = np.full(N_stars, np.nan, dtype=float) + y = np.full(N_stars, np.nan, dtype=float) + xe = np.full(N_stars, np.nan, dtype=float) + ye = np.full(N_stars, np.nan, dtype=float) # TODO: probably worth some additional testing here # Check which motion models we need From fecf8af8d115fee53f115807185a88c075e6afb5 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 22 Jan 2025 17:19:53 -0800 Subject: [PATCH 059/124] weird pyplot reshape thing --- flystar/plots.py | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/flystar/plots.py b/flystar/plots.py index 2e335a4..dacebf2 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -2916,9 +2916,11 @@ def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_ """ print( 'Creating residuals plots for star(s):' ) print( star_names ) + def rs(x): + return x.reshape(len(x)) - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) - + i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) Nstars = len(star_names) Ncols = 3 * np.min([Nstars, NcolMax]) @@ -2963,15 +2965,14 @@ def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_ yerr = tab['ye'][ii, fnd] merr = tab['me'][ii, fnd] - dt = tab['t'][ii, fnd] - tab['t0'][ii] - fitLineX = xt_mod_all[ii] - fitLineY = yt_mod_all[ii] + fitLineX = xt_mod_all[ii, fnd] + fitLineY = yt_mod_all[ii, fnd] - fitSigX = xt_mod_err[ii] - fitSigY = yt_mod_err[ii] + fitSigX = xt_mod_err[ii, fnd] + fitSigY = yt_mod_err[ii, fnd] - fitLineM = np.repeat(tab['m0'][ii], len(dt)).reshape(len(dt),1) - fitSigM = np.repeat(tab['m0_err'][ii], len(dt)).reshape(len(dt),1) + fitLineM = np.repeat(tab['m0'][ii], len(time)).reshape(len(time),1) + fitSigM = np.repeat(tab['m0_err'][ii], len(time)).reshape(len(time),1) diffX = x - fitLineX diffY = y - fitLineY @@ -3063,8 +3064,9 @@ def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_ plt.plot(time, fitLineX, 'b-') plt.plot(time, fitLineX + fitSigX, 'b--') plt.plot(time, fitLineX - fitSigX, 'b--') + print(np.shape(xerr.reshape(len(xerr),))) if not color_time: - plt.errorbar(time, x, yerr=xerr.reshape(len(xerr),), marker='.', color=color, ls='none') + plt.errorbar(rs(time), rs(x), yerr=rs(xerr), marker='.', color=color, ls='none') else: norm = colors.Normalize(vmin=0, vmax=1, clip=True) mapper = cm.ScalarMappable(norm=norm, cmap='hsv') @@ -3096,7 +3098,7 @@ def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_ plt.plot(time, fitLineY + fitSigY, 'b--') plt.plot(time, fitLineY - fitSigY, 'b--') if not color_time: - plt.errorbar(time, y, yerr=yerr.reshape(len(yerr),), marker='.', color=color, ls='none') + plt.errorbar(rs(time), rs(y), yerr=rs(yerr), marker='.', color=color, ls='none') else: norm = colors.Normalize(vmin=0, vmax=1, clip=True) mapper = cm.ScalarMappable(norm=norm, cmap='hsv') @@ -3126,7 +3128,7 @@ def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_ plt.plot(time, fitLineM + fitSigM, 'g--') plt.plot(time, fitLineM - fitSigM, 'g--') if not color_time: - plt.errorbar(time, m, yerr=merr.reshape(len(merr),), marker='.', color=color, ls='none') + plt.errorbar(rs(time), rs(m), yerr=rs(merr), marker='.', color=color, ls='none') else: norm = colors.Normalize(vmin=0, vmax=1, clip=True) mapper = cm.ScalarMappable(norm=norm, cmap='hsv') @@ -3158,7 +3160,7 @@ def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_ plt.plot(time, fitSigX*1e3, 'b--') plt.plot(time, -fitSigX*1e3, 'b--') if not color_time: - plt.errorbar(time, (x - fitLineX)*1e3, yerr=xerr.reshape(len(xerr),)*1e3, marker='.', color=color, ls='none') + plt.errorbar(rs(time), rs(x - fitLineX)*1e3, yerr=rs(xerr)*1e3, marker='.', color=color, ls='none') else: norm = colors.Normalize(vmin=0, vmax=1, clip=True) mapper = cm.ScalarMappable(norm=norm, cmap='hsv') @@ -3186,7 +3188,7 @@ def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_ plt.plot(time, fitSigY*1e3, 'b--') plt.plot(time, -fitSigY*1e3, 'b--') if not color_time: - plt.errorbar(time, (y - fitLineY)*1e3, yerr=yerr.reshape(len(yerr),)*1e3, marker='.', color=color, ls='none') + plt.errorbar(rs(time), rs(y - fitLineY)*1e3, yerr=rs(yerr)*1e3, marker='.', color=color, ls='none') else: norm = colors.Normalize(vmin=0, vmax=1, clip=True) mapper = cm.ScalarMappable(norm=norm, cmap='hsv') @@ -3214,7 +3216,7 @@ def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_ plt.plot(time, fitSigM*1e3, 'g--') plt.plot(time, -fitSigM*1e3, 'g--') if not color_time: - plt.errorbar(time, (m - fitLineM), yerr=merr.reshape(len(merr),), marker='.', color=color, ls='none') + plt.errorbar(rs(time), rs(m - fitLineM), yerr=rs(merr), marker='.', color=color, ls='none') else: norm = colors.Normalize(vmin=0, vmax=1, clip=True) mapper = cm.ScalarMappable(norm=norm, cmap='hsv') @@ -3241,8 +3243,8 @@ def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_ paxes = plt.subplot(Nrows, Ncols, ind) if not color_time: - plt.errorbar(x,y, xerr=xerr.reshape(len(xerr),), - yerr=yerr.reshape(len(yerr),), marker='.', color=color, ls='none') + plt.errorbar(rs(x),rs(y), xerr=rs(xerr), + yerr=rs(yerr), marker='.', color=color, ls='none') else: sc = plt.scatter(x, y, s=0, c=dtime, vmin=0, vmax=1, cmap='hsv') clb = plt.colorbar(sc) From 59828d68d04e09a2358ecc9e8e2786f5c97a9dbd Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 29 Jan 2025 13:58:18 -0800 Subject: [PATCH 060/124] motion model testing updates --- flystar/tests/test_align.py | 8 ++++---- flystar/tests/test_motion_model.py | 20 +++++++++++--------- 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 1a306c2..e0e1533 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -255,7 +255,7 @@ def test_MosaicToRef(): ########## # Align and let velocities be free. ########## - msc.update_ref_orig = True + msc.update_ref_orig = 'periter' msc.fit() # The velocities should be almost the same (but not as close as before) @@ -320,7 +320,7 @@ def test_MosaicToRef_p0_vel(): ########## # Align and let velocities be free. ########## - msc.update_ref_orig = True + msc.update_ref_orig = 'periter' msc.fit() # The velocities should be almost the same (but not as close as before) @@ -386,7 +386,7 @@ def test_MosaicToRef_vel(): ########## # Align and let velocities be free. ########## - msc.update_ref_orig = True + msc.update_ref_orig = 'periter' msc.fit() # The velocities should be almost the same (but not as close as before) @@ -464,7 +464,7 @@ def test_MosaicToRef_acc(): ########## # Align and let velocities be free. ########## - msc.update_ref_orig = True + msc.update_ref_orig = 'periter' msc.fit() # The velocities should be almost the same (but not as close as before) diff --git a/flystar/tests/test_motion_model.py b/flystar/tests/test_motion_model.py index 91439d4..facb2af 100755 --- a/flystar/tests/test_motion_model.py +++ b/flystar/tests/test_motion_model.py @@ -2,8 +2,8 @@ import numpy as np import pytest -def within_error(true_val, fit_val, fit_err, n_sigma=2): - print('True', true_val, 'Fit', fit_val, 'Fit err', fit_err) +def within_error(true_val, fit_val, fit_err, n_sigma=3): + #print('True', true_val, 'Fit', fit_val, 'Fit err', fit_err) return (true_val < (fit_val+fit_err*n_sigma)) & (true_val> (fit_val-fit_err*n_sigma)) def test_Fixed(): @@ -58,7 +58,7 @@ def test_Fixed(): mod_fit = motion_model.Fixed() params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) # Confirm true value is within error bar of fit value - assert [within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))] + assert np.all([within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))]) def test_Linear(): @@ -161,7 +161,8 @@ def test_Acceleration(): # Test handling of a single star true_params = {'x0': 1.0, 'y0':0.5, 'x0_err':0.1, 'y0_err':0.1, 'vx0':0.2, 'vy0':0.5, 'vx0_err':0.05, 'vy0_err':0.05, - 'ax':0.1, 'ay':-0.1, 'ax_err':0.02, 'ay_err':0.02} + 'ax':0.1, 'ay':-0.1, 'ax_err':0.02, 'ay_err':0.02, + 't0':2025.0} mod_true = motion_model.Acceleration(**true_params) param_list = mod_true.fitter_param_names # Confirm return of proper values for single t=t0 and array t @@ -228,17 +229,18 @@ def test_Acceleration(): x_sim = np.random.normal(x_true, x_true_err) y_sim = np.random.normal(y_true, y_true_err) # Run fit - mod_fit = motion_model.Acceleration() + mod_fit = motion_model.Acceleration(t0=mod_true.t0) params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) # Confirm true value is within error bar of fit value - assert [within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))] + assert np.all([within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))]) #@pytest.mark.skip(reason="not written") def test_Parallax(): # Test handling of a single star true_params = {'x0': 1.0, 'y0':-0.5, 'x0_err':0.1, 'y0_err':0.1, 'vx':-0.2, 'vy':0.5, 'vx_err':0.05, 'vy_err':0.05, - 'pi':0.5, 'RA':17.76, 'Dec':-28.933, 'PA':0} + 'pi':0.5, 'RA':17.76, 'Dec':-28.933, 'PA':0, + 't0':2020.0} mod_true = motion_model.Parallax(**true_params) param_list = mod_true.fitter_param_names @@ -250,10 +252,10 @@ def test_Parallax(): x_sim = np.random.normal(x_true, x_true_err) y_sim = np.random.normal(y_true, y_true_err) # Run fit - mod_fit = motion_model.Parallax(RA=17.76, Dec=-28.933, PA=0) + mod_fit = motion_model.Parallax(RA=17.76, Dec=-28.933, PA=0, t0=mod_true.t0) params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) # Confirm true value is within error bar of fit value - assert [within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))] + assert np.all([within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))]) def test_Parallax_PA(): From a9f58a208d67847eaae597dfef672c3825e3f88c Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 26 Mar 2025 12:39:52 -0700 Subject: [PATCH 061/124] motion model debugging --- flystar/align.py | 24 ++++++------------------ flystar/startables.py | 1 - 2 files changed, 6 insertions(+), 19 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index a86ee19..1adce21 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -276,10 +276,7 @@ def fit(self): x0e y0e m0e - vx (only if use_motion=True) - vy (only if use_motion=True) - vxe (only if use_motion=True) - vye (only if use_motion=True) + additional motion_model columns """ ########## @@ -836,6 +833,7 @@ def update_ref_table_aggregates(self, keep_ref_orig, n_boot=0): motion_model_class_names = self.ref_table['motion_model_input'].tolist() if 'motion_model_used' in self.ref_table.keys(): motion_model_class_names += self.ref_table['motion_model_used'][ref_orig_idx].tolist() + vals_orig['motion_model_used'] = self.ref_table['motion_model_used'][ref_orig_idx] motion_model_col_names = motion_model.get_list_motion_model_param_names(motion_model_class_names, with_errors=True, with_fixed=True) for mm in motion_model_col_names: if mm in self.ref_table.keys(): @@ -936,7 +934,7 @@ def match_lists(self, dr_tol, dm_tol): else: star_list_T.transform_xy(self.trans_list[ii]) - xref, yref = get_pos_at_time(star_list_T['t'][0], self.ref_table) #, use_motion=self.use_motion) # optional velocity propogation. + xref, yref = get_pos_at_time(star_list_T['t'][0], self.ref_table) mref = self.ref_table['m0'] idx_lis, idx_ref, dr, dm = match.match(star_list_T['x'], star_list_T['y'], star_list_T['m'], @@ -970,7 +968,7 @@ def get_ref_list_from_table(self, epoch): name = self.ref_table['name'] if ('motion_model_used' in self.ref_table.colnames): - x,y,xe,ye = self.ref_table.get_star_positions_at_time(epoch) + x,y,xe,ye = self.ref_table.get_star_positions_at_time(epoch, allow_alt_models=True) else: # No velocities... just used average positions. x = self.ref_table['x0'] @@ -1427,13 +1425,7 @@ def = None. If not None, then this should contain an array or list of transform necessarily want to use these in the reference frame in subsequent passes. If True, then the new stars will be used in later passes/iterations. If False, then the new stars will be carried, but not used in the transformation. - We determine which stars to use through setting a boolean use_in_trans flag. - - use_motion : boolean - If velocities are present in the reference list and use_motion == True, then during - each iteration of the alignment, the reference list will be propogated in time - using the velocity information. So all transformations will be derived w.r.t. - the propogated positions. See also update_vel. + We determine which stars to use through setting a boolean use_in_trans flag. init_guess_mode : string If no initial transformations are passed in via the trans_input keyword, then we have @@ -1460,7 +1452,6 @@ def = None. If not None, then this should contain an array or list of transform outlier_tol=[None], mag_lim=[13, 21], trans_class=transforms.PolyTransform, trans_args=[{'order': 1}], - use_motion=True, use_ref_new=False, update_ref_orig=False, mag_trans=False, @@ -1539,10 +1530,7 @@ def fit(self): x0e y0e m0e - vx (only if use_motion=True) - vy (only if use_motion=True) - vxe (only if use_motion=True) - vye (only if use_motion=True) + addl. motion_model parameters """ # Create a log file of the parameters used in the fit. diff --git a/flystar/startables.py b/flystar/startables.py index b4ec991..c54ddc4 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -920,7 +920,6 @@ def get_star_positions_at_time(self, t, allow_alt_models=True): mod = modClass(RA=self.meta['RA'], Dec=self.meta['Dec'], PA=self.meta['position_angle'], obs=self.meta['observer_location']) x[idx],y[idx],xe[idx],ye[idx] = mod.get_batch_pos_at_time(t,**param_dict) - #print(x) return x,y,xe,ye From bed88d26a8402de65aa73f86071871bf0dac7f83 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 27 Mar 2025 14:02:43 -0700 Subject: [PATCH 062/124] adding motion model to plots --- flystar/plots.py | 44 +++++++++++++++++++++++--------------------- 1 file changed, 23 insertions(+), 21 deletions(-) diff --git a/flystar/plots.py b/flystar/plots.py index dacebf2..c51b5be 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -1071,9 +1071,9 @@ def plot_mean_residuals_by_epoch(tab): the size of the mean residual. """ # Predicted model positions at each epoch - dt = tab['t'] - tab['t0'][:, np.newaxis] - xt_mod, yt_mod, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) - + i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] + xt_mod, yt_mod, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + # Residuals dx = tab['x'] - xt_mod dy = tab['y'] - yt_mod @@ -1129,12 +1129,12 @@ def plot_quiver_residuals_all_epochs(tab, unit='arcsec', scale=None, plotlim=Non dr_ref = np.zeros(len(tab), dtype=float) n_ref = np.zeros(len(tab), dtype=int) - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) - + i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + for ee in range(tab['x'].shape[1]): - dt = tab['t'][:, ee] - tab['t0'] - xt_mod = xt_mod_all[ee] - yt_mod = yt_mod_all[ee] + xt_mod = xt_mod_all[:,ee] + yt_mod = yt_mod_all[:,ee] good_idx = np.where(np.isfinite(tab['x'][:, ee]) == True)[0] ref_idx = np.where(tab[good_idx]['used_in_trans'][:, ee] == True)[0] @@ -1195,8 +1195,9 @@ def plot_quiver_residuals_with_orig_all_epochs(tab, trans_list, unit='arcsec', s dr_ref = np.zeros(len(tab), dtype=float) n_ref = np.zeros(len(tab), dtype=int) - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) - + i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + for ee in range(tab['x'].shape[1]): dt = tab['t'][:, ee] - tab['t0'] xt_mod = xt_mod_all[ee] @@ -1305,8 +1306,9 @@ def plot_mag_scatter_multi_trans_all_epochs(tab_list, trans_list_list, unit='arc da_list = [] ntrans = len(tab_list) - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) - + i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + for mm in range(ntrans): tab = tab_list[mm] trans_list = trans_list_list[mm] @@ -1858,8 +1860,9 @@ def plot_quiver_residuals_magcolor_all_epochs(tab, unit='arcsec', scale=None, pl idx = np.where((tab['m0'] < lower_mag) & (tab['m0'] > upper_mag))[0] tab = tab[idx] - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) - + i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + for ee in range(tab['x'].shape[1]): dt = tab['t'][:, ee] - tab['t0'] xt_mod = xt_mod_all[ee] @@ -2519,8 +2522,8 @@ def rs(x): x = tab['x0'] y = tab['y0'] r = np.hypot(x, y) - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'], allow_alt_models=False) - + i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) for i in range(Nstars): starName = star_names[i] @@ -2550,12 +2553,11 @@ def rs(x): dt = tab['t'][ii, fnd] - tab['t0'][ii] - fitLineX = xt_mod_all[ii] - fitLineY = yt_mod_all[ii] - - fitSigX = xt_mod_err[ii] - fitSigY = yt_mod_err[ii] + fitLineX = xt_mod_all[ii, fnd] + fitLineY = yt_mod_all[ii, fnd] + fitSigX = xt_mod_err[ii, fnd] + fitSigY = yt_mod_err[ii, fnd] fitLineM = np.repeat(tab['m0'][ii], len(dt)).reshape(len(dt),1) fitSigM = np.repeat(tab['m0_err'][ii], len(dt)).reshape(len(dt),1) From 5cb692ae5b83e8ff6e3debec78bf61f03a6f08db Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 15 Apr 2025 17:25:56 -0700 Subject: [PATCH 063/124] debugging --- flystar/align.py | 8 ++++---- flystar/analysis.py | 23 ++++++++++++++++++----- flystar/match.py | 2 +- flystar/startables.py | 2 ++ 4 files changed, 25 insertions(+), 10 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 1adce21..bf7f7ef 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -684,7 +684,7 @@ def setup_ref_table_from_starlist(self, star_list): if 'motion_model_input' not in ref_table.colnames: ref_table.add_column(Column(np.repeat(self.default_motion_model, len(ref_table)), name='motion_model_input')) if 'motion_model_used' not in ref_table.colnames: - ref_table.add_column(Column(np.repeat('Fixed', len(ref_table)), name='motion_model_used')) + ref_table.add_column(Column(np.repeat(self.default_motion_model, len(ref_table)), name='motion_model_used')) return ref_table @@ -1609,7 +1609,7 @@ def fit(self): # # Re-do all matching given final transformations. # No trimming this time. - # First rest the reference table 2D values. + # First reset the reference table 2D values. ########## self.reset_ref_values(exclude=['used_in_trans']) @@ -1634,7 +1634,7 @@ def fit(self): self.ref_table.detections() ### Drop all stars that have 0 detections. - idx = np.where((self.ref_table['n_detect'] == 0))[0] + idx = np.where((self.ref_table['n_detect'] == 0) & (self.ref_table['ref_orig'] == False))[0] print(' *** Getting rid of {0:d} out of {1:d} junk sources'.format(len(idx), len(self.ref_table))) self.ref_table.remove_rows(idx) @@ -3043,7 +3043,7 @@ def get_pos_at_time(t, starlist): """ # Check for motion model if 'motion_model_used' in starlist.colnames: - x,y,xe,ye = starlist.get_star_positions_at_time(t, allow_alt_models=False) + x,y,xe,ye = starlist.get_star_positions_at_time(t, allow_alt_models=True) # If no motion model, check for velocities elif ('vx' in starlist.colnames) and ('vy' in starlist.colnames): x = starlist['x0'] + starlist['vx']*(t-starlist['t0']) diff --git a/flystar/analysis.py b/flystar/analysis.py index 4aac894..f29143e 100644 --- a/flystar/analysis.py +++ b/flystar/analysis.py @@ -182,16 +182,29 @@ def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2) gaia_new = gaia_new.filled() #convert masked colunms to regular columns if targets_dict != None: - for targ_name, targ_coo in targets_dict.items(): - dx = gaia_new['x0'] - (targ_coo[0] * -1.0) - dy = gaia_new['y0'] - targ_coo[1] +# for targ_name, targ_coo in targets_dict.items(): +# dx = gaia_new['x0'] - (targ_coo[0] * -1.0) +# dy = gaia_new['y0'] - targ_coo[1] +# dr = np.hypot(dx, dy) +# +# idx = dr.argmin() +# +# if dr[idx] < match_dr_max: +# gaia_new['name'][idx] = targ_name +# print('Found match for: ', targ_name, ' - ',gaia_new['source_id'][idx]) + targ_names = [x for x in targets_dict] + targ_xs = np.array([targets_dict[x][0] for x in targets_dict]) + targ_ys = np.array([targets_dict[x][1] for x in targets_dict]) + for i_gaia in range(len(gaia_new)): + dx = gaia_new['x0'][i_gaia] - (targ_xs * -1.0) + dy = gaia_new['y0'][i_gaia] - targ_ys dr = np.hypot(dx, dy) idx = dr.argmin() if dr[idx] < match_dr_max: - gaia_new['name'][idx] = targ_name - print('Found match for: ', targ_name, ' - ',gaia_new['source_id'][idx]) + gaia_new['name'][i_gaia] = targ_names[idx] + print('Found match for: ', targ_names[idx], ' - ',gaia_new['source_id'][i_gaia]) return gaia_new diff --git a/flystar/match.py b/flystar/match.py index b086d32..ba43f58 100644 --- a/flystar/match.py +++ b/flystar/match.py @@ -392,7 +392,7 @@ def match(x1, y1, m1, x2, y2, m2, dr_tol, dm_tol=None, verbose=True): keep[dups[dm_min]] = True else: if verbose: - print(' confused, dropping') + print(' confused, dropping star at',x2[idxs2[dups]][0],y2[idxs2[dups]][0]) # Clean up the duplicates diff --git a/flystar/startables.py b/flystar/startables.py index c54ddc4..2739252 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -178,6 +178,8 @@ def __init__(self, *args, ref_list=0, position_angle=None, RA=None, Dec=None, ob self['name_in_list'] = self['name_in_list'].astype('U20') if arg == 'motion_model_input': self['motion_model_input'] = self['motion_model_input'].astype('U20') + if arg == 'motion_model_used': + self['motion_model_used'] = self['motion_model_used'].astype('U20') #if 'motion_model_input' not in kwargs: # self['motion_model_input'] = np.repeat(self.default_motion_model, len(self['name'])) From b81c221f47e7cbdab38ee02c1c50c5f4347fcf4a Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 17 Apr 2025 09:56:40 -0700 Subject: [PATCH 064/124] n_good=2 case for linear fitting --- flystar/motion_model.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 4a18509..63ee866 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -240,14 +240,14 @@ def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): dt_diff = np.diff(dt)[0] vx = dx / dt_diff vy = dy / dt_diff - # TODO: this does not align with how t0 works..... - x0 = np.average(x, weights=x_wt) #x[0] - dt[0]*vx - y0 = np.average(y, weights=y_wt) #y[0] - dt[0]*vy - vxe = 0.0 - vye = 0.0 - x0e = np.abs(dx) / 2**0.5 - y0e = np.abs(dy) / 2**0.5 - + # TODO: still not sure about the error handling here + x0 = x[0] - dt[0]*vx # np.average(x, weights=x_wt) # + y0 = y[0] - dt[0]*vy # np.average(y, weights=y_wt) # + x0e = np.abs(dx) / 2**0.5 # np.sqrt(np.sum(xe**2)/2) # + y0e = np.abs(dy) / 2**0.5 # np.sqrt(np.sum(ye**2)/2) # + vxe = 0.0 #np.abs(vx) * np.sqrt(np.sum(xe**2/x**2)) + vye = 0.0 #np.abs(vy) * np.sqrt(np.sum(ye**2/y**2)) + else: def linear(t, c0, c1): return c0 + c1*t From a7ffa817828be9bca3e224460a84ae564514ef15 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 17 Apr 2025 12:31:34 -0700 Subject: [PATCH 065/124] continuous model plotting (display improved for parallax) --- flystar/plots.py | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/flystar/plots.py b/flystar/plots.py index c51b5be..079498b 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -2523,7 +2523,9 @@ def rs(x): y = tab['y0'] r = np.hypot(x, y) i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] + cont_times = np.arange(np.min(tab['t'][i_all_detected]), np.max(tab['t'][i_all_detected]), 0.01) xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + xt_cont_all, yt_cont_all, xt_cont_err, yt_cont_err = tab.get_star_positions_at_time(cont_times, allow_alt_models=True) for i in range(Nstars): starName = star_names[i] @@ -2650,9 +2652,9 @@ def rs(x): ind = int((row-1)*Ncols + col) paxes = plt.subplot(Nrows, Ncols, ind) - plt.plot(time, fitLineX, 'b-') - plt.plot(time, fitLineX + fitSigX, 'b--') - plt.plot(time, fitLineX - fitSigX, 'b--') + plt.plot(cont_times, xt_cont_all[ii], 'b-') + plt.plot(cont_times, xt_cont_all[ii] + xt_cont_err[ii], 'b--') + plt.plot(cont_times, xt_cont_all[ii] - xt_cont_err[ii], 'b--') if not color_time: #print('x:',x) #print('xerr:',xerr) @@ -2687,9 +2689,9 @@ def rs(x): ind = int((row-1)*Ncols + col) paxes = plt.subplot(Nrows, Ncols, ind) - plt.plot(time, fitLineY, 'b-') - plt.plot(time, fitLineY + fitSigY, 'b--') - plt.plot(time, fitLineY - fitSigY, 'b--') + plt.plot(cont_times, yt_cont_all[ii], 'b-') + plt.plot(cont_times, yt_cont_all[ii] + yt_cont_err[ii], 'b--') + plt.plot(cont_times, yt_cont_all[ii] - yt_cont_err[ii], 'b--') if not color_time: plt.errorbar(rs(time), rs(y), yerr=rs(yerr), fmt='k.') else: @@ -2750,8 +2752,8 @@ def rs(x): paxes = plt.subplot(Nrows, Ncols, ind) plt.plot(time, np.zeros(len(time)), 'b-') - plt.plot(time, fitSigX*1e3, 'b--') - plt.plot(time, -fitSigX*1e3, 'b--') + plt.plot(cont_times, xt_cont_err[ii]*1e3, 'b--') + plt.plot(cont_times, -xt_cont_err[ii]*1e3, 'b--') if not color_time: plt.errorbar(rs(time), rs(x - fitLineX)*1e3, yerr=rs(xerr)*1e3, fmt='k.') else: @@ -2778,8 +2780,8 @@ def rs(x): paxes = plt.subplot(Nrows, Ncols, ind) plt.plot(time, np.zeros(len(time)), 'b-') - plt.plot(time, fitSigY*1e3, 'b--') - plt.plot(time, -fitSigY*1e3, 'b--') + plt.plot(cont_times, yt_cont_err[ii]*1e3, 'b--') + plt.plot(cont_times, -yt_cont_err[ii]*1e3, 'b--') if not color_time: plt.errorbar(rs(time), rs(y - fitLineY)*1e3, yerr=rs(yerr)*1e3, fmt='k.') else: @@ -2854,8 +2856,8 @@ def rs(x): paxes.xaxis.set_major_formatter(FormatStrFormatter('%.3f')) plt.xlabel('X (asec)', fontsize=fontsize1) plt.ylabel('Y (asec)', fontsize=fontsize1) - plt.plot(fitLineX, fitLineY, 'b-') - + plt.plot(xt_cont_all[ii], yt_cont_all[ii], 'b-') + ########## # X, Y Histogram of Residuals ########## From 8cda1d5e9270e4fdc220b129e326b48a3f999611 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 7 May 2025 12:54:13 -0700 Subject: [PATCH 066/124] bootstrap improvements --- flystar/motion_model.py | 56 ++++++++++++++++++++++++++++------------- flystar/plots.py | 12 ++++++++- 2 files changed, 50 insertions(+), 18 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 63ee866..70abe5f 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -6,6 +6,8 @@ from scipy.optimize import curve_fit import warnings +plx_vector_cached = None + class MotionModel(ABC): # Number of data points required to fit model n_pts_req = 0 @@ -32,7 +34,6 @@ def __init__(self, *args, **kwargs): param_var = getattr(self, param) if not isinstance(param_var, (list, np.ndarray)): setattr(self, param, np.array([param_var]))''' - return def get_pos_at_time(self, t): @@ -84,7 +85,9 @@ def fit_motion_model(self, t, x, y, xe, ye, update=True, bootstrap=0, weighting= bb_params = [] for bb in range(bootstrap): bdx = np.random.choice(edx, len(x)) - params_bdx, param_errs_bdx = self.run_fit(t[bdx], x[bdx], y[bdx], xe[bdx], ye[bdx], weighting=weighting, update=False) + while len(np.unique(bdx)) Date: Fri, 9 May 2025 17:05:16 -0700 Subject: [PATCH 067/124] new per_filter plotting functions for chi2 distribution --- flystar/plots.py | 134 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 134 insertions(+) diff --git a/flystar/plots.py b/flystar/plots.py index 758a50b..aaf1e20 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -2232,6 +2232,85 @@ def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50): return +def plot_chi2_dist_per_filter(tab, Ndetect, xlim=40, n_bins=50, filter=None): + """ + tab = flystar table + Ndetect = Number of epochs star detected in + """ + chi2_x_list = [] + chi2_y_list = [] + fnd_list = [] # Number of non-NaN error measurements + + i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + + for ii in range(len(tab)): + # Ignore the NaNs + fnd = np.argwhere(~np.isnan(tab['xe'][ii,:])) + fnd_list.append(len(fnd)) + + x = tab['x'][ii, fnd] + y = tab['y'][ii, fnd] + xerr = tab['xe'][ii, fnd] + yerr = tab['ye'][ii, fnd] + + fitLineX = xt_mod_all[ii, fnd] + fitLineY = yt_mod_all[ii,fnd] + + diffX = x - fitLineX + diffY = y - fitLineY + sigX = diffX / xerr + sigY = diffY / yerr + + chi2_x = np.sum(sigX**2) + chi2_y = np.sum(sigY**2) + chi2_x_list.append(chi2_x) + chi2_y_list.append(chi2_y) + + x = np.array(chi2_x_list) + y = np.array(chi2_y_list) + fnd = np.array(fnd_list) + + idx = np.where(fnd == Ndetect)[0] + # Fitting position and velocity... so subtract 2 to get Ndof + Ndof = Ndetect - tab['dof'][i_all_detected] + chi2_xaxis = np.linspace(0, xlim, xlim*3) + chi2_bins = np.linspace(0, xlim, n_bins) + + plt.figure(figsize=(6,4)) + plt.clf() + plt.hist(x[idx], bins=chi2_bins, histtype='stepfilled', label='RA', density=True, color='skyblue', alpha=0.8, edgecolor='k') + plt.hist(y[idx], bins=chi2_bins, histtype='stepfilled', label='DEC', density=True, color='orange', alpha=0.8, edgecolor='k') + plt.plot(chi2_xaxis, chi2.pdf(chi2_xaxis, Ndof), 'r-', alpha=0.6, + label='$\chi^2$ ' + str(Ndof) + ' dof') + #plt.title('$N_{epoch} = $' + str(Ndetect) + ', $N_{dof} = $' + str(Ndof)) + plt.title(str(filter)+' (N = '+str(len(chi2_x_list))+')', fontsize=22) + plt.xlim(0, xlim) + plt.ylabel(r'PDF', fontsize=28) + plt.legend(fontsize=20) + + plt.tick_params(labelsize=20, direction='in', right=True, top=True) + + plt.savefig(str(filter)+'_chi2_dist.png', dpi=400) + + chi2red_x = x / (fnd - 2) + chi2red_y = y / (fnd - 2) + chi2red_t = (x + y) / (2.0 * (fnd - 2)) + + print('Mean reduced chi^2: (Ndetect = {0:d} of {1:d})'.format(len(idx), len(tab))) + fmt = ' {0:s} = {1:.1f} for N_detect and {2:.1f} for all' + med_chi2red_x_f = np.median(chi2red_x[idx]) + med_chi2red_x_a = np.median(chi2red_x) + med_chi2red_y_f = np.median(chi2red_y[idx]) + med_chi2red_y_a = np.median(chi2red_y) + med_chi2red_t_f = np.median(chi2red_t[idx]) + med_chi2red_t_a = np.median(chi2red_t) + print(fmt.format(' X', med_chi2red_x_f, med_chi2red_x_a)) + print(fmt.format(' Y', med_chi2red_y_f, med_chi2red_y_a)) + print(fmt.format('Tot', med_chi2red_t_f, med_chi2red_t_a)) + + return + def plot_chi2_dist_per_epoch(tab, Ndetect, mlim=[14,21], ylim = [-1, 1], target_idx = 0): """ @@ -2493,6 +2572,61 @@ def plot_chi2_dist_mag(tab, Ndetect, xlim=40, n_bins=30): return +def plot_chi2_dist_mag_per_filter(tab, Ndetect, mlim=40, n_bins=30, xlim=40, file_name=None, filter=None): + """ + tab = flystar table + Ndetect = Number of epochs star detected in + """ + chi2_m_list = [] + fnd_list = [] # Number of non-NaN error measurements + + for ii in range(len(tab['me'])): + # Ignore the NaNs + fnd = np.argwhere(~np.isnan(tab['me'][ii,:])) + fnd_list.append(len(fnd)) + + m = tab['m'][ii, fnd] + merr = tab['me'][ii, fnd] + m0 = tab['m0'][ii] + m0err = tab['m0_err'][ii] + + diff_m = m0 - m + sig_m = diff_m/merr + + chi2_m = np.sum(sig_m**2) + chi2_m_list.append(chi2_m) + + chi2_m = np.array(chi2_m_list) + fnd = np.array(fnd_list) + + idx = np.where(fnd == Ndetect)[0] + + # Fitting mean magnitude... so subtract 1 to get Ndof + Ndof = Ndetect - 1 + chi2_maxis = np.linspace(0, xlim, xlim*3) + chi2_bins = np.linspace(0, xlim, n_bins) + + plt.figure(figsize=(6,4)) + plt.clf() + plt.hist(chi2_m[idx], bins=np.arange(xlim*10), label='mag', histtype='stepfilled', density=True, color='green', alpha=0.7, edgecolor='k') + plt.plot(chi2_maxis, chi2.pdf(chi2_maxis, Ndof), 'r-', alpha=0.6, + label='$\chi^2$ ' + str(Ndof) + ' dof') + #plt.title('$N_{epoch} = $' + str(Ndetect) + ', $N_{dof} = $' + str(Ndof)) + plt.xlim(0, xlim) + plt.xlabel(r'$\chi^{2}$', fontsize=28) + plt.ylabel(r'PDF', fontsize=28) + plt.legend(fontsize=20) + + plt.tick_params(labelsize=20, direction='in', right=True, top=True) + + plt.savefig(str(filter)+'_chi2_dist_mag.png', dpi=400) + + print('Mean reduced chi^2: (Ndetect = {0:d} of {1:d})'.format(len(idx), len(tab))) + fmt = ' {0:s} = {1:.1f} for N_detect and {2:.1f} for all' + print(fmt.format('M', np.median(chi2_m[idx] / (fnd[idx] - 2)), np.median(chi2_m / (fnd - 2)))) + + return + def plot_stars(tab, star_names, NcolMax=2, epoch_array = None, figsize=(15,25), color_time=False, position_angle=None, RA=None, Dec=None, observer_location='earth'): """ From 29506c4ddbf346fc34d59c56c2e849bc9e77373c Mon Sep 17 00:00:00 2001 From: skterry Date: Wed, 14 May 2025 11:28:16 -0700 Subject: [PATCH 068/124] add optional print flag for plot_stars_nfilt() --- flystar/plots.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/flystar/plots.py b/flystar/plots.py index aaf1e20..8211e21 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -3042,7 +3042,7 @@ def rs(x): return def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_list = None, - figsize=(15,25), color_time=False, resTicRng=None): + figsize=(15,25), color_time=False, resTicRng=None, save_name=None): """ Plot a set of stars positions, flux and residuals over time. @@ -3445,7 +3445,8 @@ def rs(x): plt.subplots_adjust(wspace=0.6, hspace=0.6, left = 0.08, bottom = 0.05, right=0.95, top=0.90) # plt.savefig(rootDir+'plots/plotStar_all.png') plt.show() - + if save_name is not None: + plt.savefig(save_name + '.png') plt.show() return From c40fdeaee867e77e169bc150b142046d8d53fdf0 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 3 Jun 2025 12:29:23 -0700 Subject: [PATCH 069/124] parallax handling tweaks --- flystar/analysis.py | 15 ++++++++++++--- flystar/parallax.py | 2 +- flystar/plots.py | 4 +++- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/flystar/analysis.py b/flystar/analysis.py index f29143e..d16fd89 100644 --- a/flystar/analysis.py +++ b/flystar/analysis.py @@ -109,7 +109,7 @@ def check_gaia_parallaxes(ra,dec,search_radius=10.0,table_name='gaiadr3',target= plt.savefig('gaiaplx'+file_ext+'.png') -def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2): +def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2, pi_err_limit=0.4): """ Take a Gaia table (from astroquery) and produce a new table with a tangential projection and shift such that the origin is centered on the target of interest. @@ -162,8 +162,8 @@ def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2) gaia_new['m'] = gaia['phot_g_mean_mag'] gaia_new['me'] = 1.09/gaia['phot_g_mean_flux_over_error'] - gaia_new['parallax'] = gaia['parallax'] - gaia_new['parallax_error'] = gaia['parallax_error'] + gaia_new['pi'] = gaia['parallax'].data*1e-3 + gaia_new['pi_err'] = gaia['parallax_error'].data*1e-3 # Set the velocities (and uncertainties) to zero if they aren't measured. idx = np.where(np.isnan(gaia_new['vx']) == True)[0] @@ -171,6 +171,15 @@ def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2) gaia_new['vx_err'][idx] = 0.0 gaia_new['vy'][idx] = 0.0 gaia_new['vy_err'][idx] = 0.0 + + # Cut out stars with high plx error and set motion models + idx = np.where((gaia_new['pi_err']>(pi_err_limit/1e3)) | (gaia['parallax'].mask == True))[0] + print(gaia_new['pi_err']) + print(idx) + gaia_new['pi'][idx] = 0.0 + gaia_new['pi_err'][idx] = 0.0 + gaia_new['motion_model_used'] = 'Parallax' + gaia_new['motion_model_used'][idx] = 'Linear' #macy additions to try to fix wild magnitude values #gaia_new['ruwe'] = gaia['ruwe'] diff --git a/flystar/parallax.py b/flystar/parallax.py index 4c60ae7..27cd632 100755 --- a/flystar/parallax.py +++ b/flystar/parallax.py @@ -16,7 +16,7 @@ cache_dir = os.environ['PARALLAX_CACHE_DIR'] except: cache_dir = os.path.dirname(__file__) + '/parallax_cache/' -cache_memory = Memory(cache_dir, verbose=0, bytes_limit='1G') +cache_memory = Memory(cache_dir, verbose=0) # Default cache size is 1 GB cache_memory.reduce_size() diff --git a/flystar/plots.py b/flystar/plots.py index 758a50b..d094e64 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -3345,9 +3345,11 @@ def plot_errors_vs_r_m(star_tab, vmax_perr=0.75, vmax_pmerr=0.75): return -def plot_plxs(star_tab): +def plot_plxs(star_tab, target_idx=0): fig,ax = plt.subplots(nrows=1,ncols=2,figsize=(10,5)) ax[0].errorbar(star_tab['m0'],star_tab['pi']*1e3, yerr=star_tab['pi_err']*1e3,marker='.',linestyle='none') + if target_idx is not None: + ax[0].errorbar(star_tab['m0'][target_idx],star_tab['pi'][target_idx]*1e3, yerr=star_tab['pi_err'][target_idx]*1e3,marker='*',linestyle='none', color='orange', markersize=10) ax[0].axhline(0, c='gray') ax[0].set_ylabel('Plx (mas)') ax[0].set_xlabel('Mag') From 8d91bf8e82887a1edccdee20d25db2259f9e4236 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 3 Jun 2025 15:23:01 -0700 Subject: [PATCH 070/124] add mm input to gaia table --- flystar/analysis.py | 1 + 1 file changed, 1 insertion(+) diff --git a/flystar/analysis.py b/flystar/analysis.py index d16fd89..39b97c6 100644 --- a/flystar/analysis.py +++ b/flystar/analysis.py @@ -178,6 +178,7 @@ def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2, print(idx) gaia_new['pi'][idx] = 0.0 gaia_new['pi_err'][idx] = 0.0 + gaia_new['motion_model_input'] = 'Parallax' gaia_new['motion_model_used'] = 'Parallax' gaia_new['motion_model_used'][idx] = 'Linear' From 3139bee092e1a743f8c06d5553fd1f188a82d268 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 16 Jun 2025 16:44:03 -0700 Subject: [PATCH 071/124] remove extra prints) --- flystar/analysis.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/flystar/analysis.py b/flystar/analysis.py index 39b97c6..f048e5b 100644 --- a/flystar/analysis.py +++ b/flystar/analysis.py @@ -174,8 +174,6 @@ def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2, # Cut out stars with high plx error and set motion models idx = np.where((gaia_new['pi_err']>(pi_err_limit/1e3)) | (gaia['parallax'].mask == True))[0] - print(gaia_new['pi_err']) - print(idx) gaia_new['pi'][idx] = 0.0 gaia_new['pi_err'][idx] = 0.0 gaia_new['motion_model_input'] = 'Parallax' From 82f50fda215eaafded90c28092c78c259e02dfe8 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 16 Jun 2025 16:57:57 -0700 Subject: [PATCH 072/124] gaia motion model editable by keyword --- flystar/analysis.py | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/flystar/analysis.py b/flystar/analysis.py index f048e5b..94d14b6 100644 --- a/flystar/analysis.py +++ b/flystar/analysis.py @@ -109,7 +109,7 @@ def check_gaia_parallaxes(ra,dec,search_radius=10.0,table_name='gaiadr3',target= plt.savefig('gaiaplx'+file_ext+'.png') -def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2, pi_err_limit=0.4): +def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2, pi_err_limit=0.4, default_motion_model='Linear'): """ Take a Gaia table (from astroquery) and produce a new table with a tangential projection and shift such that the origin is centered on the target of interest. @@ -176,10 +176,19 @@ def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2, idx = np.where((gaia_new['pi_err']>(pi_err_limit/1e3)) | (gaia['parallax'].mask == True))[0] gaia_new['pi'][idx] = 0.0 gaia_new['pi_err'][idx] = 0.0 - gaia_new['motion_model_input'] = 'Parallax' - gaia_new['motion_model_used'] = 'Parallax' - gaia_new['motion_model_used'][idx] = 'Linear' - + if default_motion_model=='Parallax': + gaia_new['motion_model_input'] = 'Parallax' + gaia_new['motion_model_used'] = 'Parallax' + gaia_new['motion_model_used'][idx] = 'Linear' + elif default_motion_model=='Linear': + gaia_new['motion_model_input'] = 'Linear' + gaia_new['motion_model_used'] = 'Linear' + elif default_motion_model=='Fixed': + gaia_new['motion_model_input'] = 'Fixed' + gaia_new['motion_model_used'] = 'Fixed' + else: + print("Invalid motion model",default_motion_model,"- none assigned") + #macy additions to try to fix wild magnitude values #gaia_new['ruwe'] = gaia['ruwe'] #try: From 4b467c8fe132aa638ef5d54af406e9a34a2a2a66 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 17 Jun 2025 17:15:27 -0700 Subject: [PATCH 073/124] reference frame shift function --- flystar/startables.py | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/flystar/startables.py b/flystar/startables.py index 2739252..4d48336 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -1,5 +1,6 @@ from astropy.table import Table, Column, hstack from astropy.stats import sigma_clipping +from astropy.time import Time from scipy.optimize import curve_fit from flystar.fit_velocity import linear_fit, calc_chi2, linear, fit_velocity from tqdm import tqdm @@ -9,7 +10,7 @@ import pdb import time import copy -from flystar import motion_model +from flystar import motion_model, parallax class StarTable(Table): """ @@ -1011,3 +1012,21 @@ def fit_velocities_all_detected(self, weighting='var', use_scipy=False, absolute return vel_result else: return + + def shift_reference_frame(self, delta_vx=0.0, delta_vy=0.0, delta_pi=0.0): + if delta_vx==0.0 and delta_vy==0.0 and delta_pi==0.0: + print("No shifts input, reference frame unchanged.") + return + self['vx'] += delta_vx + self['x'] += delta_vx*(self['t']-self['t0'][:, np.newaxis]) + self['vy'] += delta_vy + self['y'] += delta_vy*(self['t']-self['t0'][:, np.newaxis]) + if delta_pi!=0.0: + t_all = self['t'][np.where(~np.any(np.isnan(self['t']), axis=1))[0][0]] + t_mjd = Time(t_all, format='decimalyear', scale='utc').mjd + pvec = parallax.parallax_in_direction(self.meta['RA'], self.meta['Dec'], t_mjd, + obsLocation=self.meta['observer_location'], PA=self.meta['position_angle']) + self['pi'] += delta_pi + self['x'] += delta_pi*pvec[:,0] + self['y'] += delta_pi*pvec[:,1] + return From 5e1711debf638b55fab9b350b4a70046909ab99e Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 17 Jun 2025 17:24:27 -0700 Subject: [PATCH 074/124] reference frame shift function --- flystar/startables.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/flystar/startables.py b/flystar/startables.py index 4d48336..3c1fe6e 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -1014,8 +1014,22 @@ def fit_velocities_all_detected(self, weighting='var', use_scipy=False, absolute return def shift_reference_frame(self, delta_vx=0.0, delta_vy=0.0, delta_pi=0.0): + """ + After completing an alignment, shift from your relative reference frame to + the absolute frame using either Gaia or a Galactic model. + + Parameters + ---------- + delta_vx : float, optional + velocity shift in x-direction (as/yr) + delta_vy : float, optional + velocity shift in y-direction (as/yr) + delta_pi : float, optional + parallax shift (as) + """ if delta_vx==0.0 and delta_vy==0.0 and delta_pi==0.0: print("No shifts input, reference frame unchanged.") + print("Specify delta_vx, delta_vy, and/or delta_pi to perform a reference frame shift.") return self['vx'] += delta_vx self['x'] += delta_vx*(self['t']-self['t0'][:, np.newaxis]) From 0d7cd36e146c442df1e24554c1f89675c6748d0c Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 18 Jun 2025 11:32:50 -0700 Subject: [PATCH 075/124] debug calc_bootstrap_errors for motion model --- flystar/align.py | 5 ++++- flystar/plots.py | 33 ++++++++++++++++++++++++--------- flystar/startables.py | 4 +++- 3 files changed, 31 insertions(+), 11 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index bf7f7ef..b4759bc 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -1233,7 +1233,10 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot xe=xe_trans_arr[:,ii,boot_idx], ye=ye_trans_arr[:,ii,boot_idx], me=me_trans_arr[:,ii,boot_idx], - t=np.tile(t_boot, (len(ref_table),1))) + t=np.tile(t_boot, (len(ref_table),1)), + RA=self.RA, Dec=self.Dec, + position_angle=self.position_angle, + observer_location=self.observer_location) # Now, do proper motion calculation, making sure to fix t0 to the # orig value (so we can get a reasonable error on x0, y0) diff --git a/flystar/plots.py b/flystar/plots.py index 2aa0833..95b1eee 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -2159,7 +2159,7 @@ def plot_quiver_residuals_orig_angle_xy(x_t, y_t, x_ref, y_ref, good_idx, ref_id return -def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50): +def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50, boot_err=False): """ tab = flystar table Ndetect = Number of epochs star detected in @@ -2178,8 +2178,12 @@ def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50): x = tab['x'][ii, fnd] y = tab['y'][ii, fnd] - xerr = tab['xe'][ii, fnd] - yerr = tab['ye'][ii, fnd] + if boot_err: + xerr = tab['xe_boot'][ii, fnd] + yerr = tab['ye_boot'][ii, fnd] + else: + xerr = tab['xe'][ii, fnd] + yerr = tab['ye'][ii, fnd] fitLineX = xt_mod_all[ii, fnd] fitLineY = yt_mod_all[ii,fnd] @@ -2232,7 +2236,7 @@ def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50): return -def plot_chi2_dist_per_filter(tab, Ndetect, xlim=40, n_bins=50, filter=None): +def plot_chi2_dist_per_filter(tab, Ndetect, xlim=40, n_bins=50, filter=None, boot_err=False): """ tab = flystar table Ndetect = Number of epochs star detected in @@ -2251,8 +2255,12 @@ def plot_chi2_dist_per_filter(tab, Ndetect, xlim=40, n_bins=50, filter=None): x = tab['x'][ii, fnd] y = tab['y'][ii, fnd] - xerr = tab['xe'][ii, fnd] - yerr = tab['ye'][ii, fnd] + if boot_err: + xerr = tab['xe_boot'][ii, fnd] + yerr = tab['ye_boot'][ii, fnd] + else: + xerr = tab['xe'][ii, fnd] + yerr = tab['ye'][ii, fnd] fitLineX = xt_mod_all[ii, fnd] fitLineY = yt_mod_all[ii,fnd] @@ -2312,7 +2320,7 @@ def plot_chi2_dist_per_filter(tab, Ndetect, xlim=40, n_bins=50, filter=None): return -def plot_chi2_dist_per_epoch(tab, Ndetect, mlim=[14,21], ylim = [-1, 1], target_idx = 0): +def plot_chi2_dist_per_epoch(tab, Ndetect, mlim=[14,21], ylim = [-1, 1], target_idx = 0, boot_err=False): """ tab = flystar table Ndetect = Number of epochs star detected in @@ -2337,6 +2345,10 @@ def plot_chi2_dist_per_epoch(tab, Ndetect, mlim=[14,21], ylim = [-1, 1], target_ y = tab['y'][ii, fnd] m = tab['m'][ii, fnd] + if boot_err: + xerr = tab['xe_boot'][ii, fnd] + yerr = tab['ye_boot'][ii, fnd] + else: xerr = tab['xe'][ii, fnd] yerr = tab['ye'][ii, fnd] @@ -2523,7 +2535,7 @@ def eq_to_ec(ra,dec): ax3.set_ylabel('residual (mas)') return -def plot_chi2_dist_mag(tab, Ndetect, xlim=40, n_bins=30): +def plot_chi2_dist_mag(tab, Ndetect, xlim=40, n_bins=30, boot_err=False): """ tab = flystar table Ndetect = Number of epochs star detected in @@ -2537,7 +2549,10 @@ def plot_chi2_dist_mag(tab, Ndetect, xlim=40, n_bins=30): fnd_list.append(len(fnd)) m = tab['m'][ii, fnd] - merr = tab['me'][ii, fnd] + if boot_err: + merr = tab['me_boot'][ii, fnd] + else: + merr = tab['me'][ii, fnd] m0 = tab['m0'][ii] m0err = tab['m0_err'][ii] diff --git a/flystar/startables.py b/flystar/startables.py index 3c1fe6e..66447ff 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -1016,7 +1016,9 @@ def fit_velocities_all_detected(self, weighting='var', use_scipy=False, absolute def shift_reference_frame(self, delta_vx=0.0, delta_vy=0.0, delta_pi=0.0): """ After completing an alignment, shift from your relative reference frame to - the absolute frame using either Gaia or a Galactic model. + the absolute frame using either Gaia or a Galactic model. This modified the + motion model fit parameters as well as the time series astrometry, assuming + zero error on the shift values. Parameters ---------- From 80a6930fac728423315db27c268b3edaa5dc641c Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Fri, 20 Jun 2025 11:57:04 -0700 Subject: [PATCH 076/124] debug motion_model_used for MosaicSelfRef --- flystar/align.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index b4759bc..c6dd39e 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -286,7 +286,7 @@ def fit(self): # x_orig, y_orig, m_orig, (opt. errors) -- the transformed errors for the lists: 2D # w, w_orig (optiona) -- the input and output weights of stars in transform: 2D ########## - self.ref_table = self.setup_ref_table_from_starlist(self.star_lists[self.ref_index]) + self.ref_table = self.setup_ref_table_from_starlist(self.star_lists[self.ref_index],motion_model_used='Fixed') # Save the reference index to the meta data on the reference list. self.ref_table.meta['ref_list'] = self.ref_index @@ -573,7 +573,7 @@ def setup_trans_info(self): return - def setup_ref_table_from_starlist(self, star_list): + def setup_ref_table_from_starlist(self, star_list, motion_model_used=None): """ Start with the reference list.... this will change and grow over time, so make a copy that we will keep updating. @@ -684,7 +684,10 @@ def setup_ref_table_from_starlist(self, star_list): if 'motion_model_input' not in ref_table.colnames: ref_table.add_column(Column(np.repeat(self.default_motion_model, len(ref_table)), name='motion_model_input')) if 'motion_model_used' not in ref_table.colnames: - ref_table.add_column(Column(np.repeat(self.default_motion_model, len(ref_table)), name='motion_model_used')) + if motion_model_used is None: + ref_table.add_column(Column(np.repeat(self.default_motion_model, len(ref_table)), name='motion_model_used')) + else: + ref_table.add_column(Column(np.repeat(motion_model_used, len(ref_table)), name='motion_model_used')) return ref_table From d777c6191365957b5058d6c974935d1b885e29b0 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 26 Jun 2025 12:06:05 -0700 Subject: [PATCH 077/124] check in motion model progress --- flystar/align.py | 1 + flystar/match.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/flystar/align.py b/flystar/align.py index c6dd39e..f6e0953 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -1295,6 +1295,7 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot col[idx_good] = data_dict[ff] self.ref_table.add_column(col) + pdb.set_trace() print('===============================') print('Done with bootstrap') diff --git a/flystar/match.py b/flystar/match.py index ba43f58..d7c391e 100644 --- a/flystar/match.py +++ b/flystar/match.py @@ -345,7 +345,7 @@ def match(x1, y1, m1, x2, y2, m2, dr_tol, dm_tol=None, verbose=True): # Double check that "min" choice is still within our # detla-mag tolerence. - dm_tmp = np.array([dm.T[dm_min[I]][I] for I in np.lib.index_tricks.ndindex(dm_min.shape)]) + dm_tmp = np.array([dm.T[dm_min[I]][I] for I in np.ndindex(dm_min.shape)]) keep = (dm_min == dr_min) & (dm_tmp < dm_tol) else: From c36b71687d9f9c03e22310442de3a3d9b6183b4d Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 26 Jun 2025 17:01:32 -0700 Subject: [PATCH 078/124] debug matching issue in calc_bootstrap_errors --- flystar/align.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index f6e0953..0d198c2 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -1078,10 +1078,7 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot 'me_boot', 2D column: bootstrap mag uncertainties due to transformation for each epoch If calc_vel_in_bootstrap: - 'x0_err_boot', 1D column: bootstrap uncertainties in x0 for PM fit - 'y0_err_boot', 1D column: bootstrap uncertainties in y0 for PM fit - 'vx_err_boot', 1D column: bootstrap uncertainties in vx for PM fit - 'vy_err_boot', 1D column: bootstrap uncertainties in vy for PM fit + '_err_boot', 1D column: bootstrap uncertainties in for motion model fit For stars that fail boot_epochs_min criteria, np.nan is used """ @@ -1137,6 +1134,8 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot for jj in range(n_epochs): # Extract bootstrap sample of matched reference stars good = np.where(~np.isnan(ref_table['x_orig'][idx_ref][:,jj])) + # TODO: consider confirming we reach some threshold of unique time values here? + # TODO: Like, grab n_pts needed for the default motion model maybe samp_idx = np.random.choice(good[0], len(good[0]), replace=True) # Get reference star positions in particular epoch from ref_list. @@ -1147,7 +1146,7 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot # Then, use these to build reference starlist for the alignment idx_tmp = [] for ff in range(len(samp_idx)): - name_tmp = ref_table['name'][samp_idx[ff]] + name_tmp = ref_table['name'][idx_ref][samp_idx[ff]] foo = np.where(ref_orig['name'] == name_tmp)[0][0] idx_tmp.append(foo) @@ -1192,6 +1191,8 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot self.trans_args[0]['order'], m=starlist_boot['m'], mref=ref_boot['m'], weights=weight, mag_trans=self.mag_trans) + #print(jj) + #pdb.set_trace() # Apply transformation to *all* orig positions in this epoch. Need to make a new # FLYSTAR starlist object with the original positions for this. We don't @@ -1295,7 +1296,7 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot col[idx_good] = data_dict[ff] self.ref_table.add_column(col) - pdb.set_trace() + #pdb.set_trace() print('===============================') print('Done with bootstrap') From e2176e5d3003bf4cd5e387053837a9f6fb3ac6d2 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 15 Jul 2025 15:19:09 -0700 Subject: [PATCH 079/124] check in debug attempts --- flystar/align.py | 27 ++++++++++++++++++---- flystar/analysis.py | 4 ++++ flystar/plots.py | 54 ++++++++++++++++++++++++++----------------- flystar/transforms.py | 4 ++-- 4 files changed, 61 insertions(+), 28 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 0d198c2..8452649 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -844,6 +844,7 @@ def update_ref_table_aggregates(self, keep_ref_orig, n_boot=0): fit_star_idxs = np.where(self.ref_table['ref_orig'] == False)[0] else: fit_star_idxs = None + #pdb.set_trace() # Figure out whether motion fits are necessary all_fixed = np.all(self.ref_table['motion_model_input']=='Fixed') if all_fixed: @@ -862,11 +863,13 @@ def update_ref_table_aggregates(self, keep_ref_orig, n_boot=0): else: weights_col = 'me' self.ref_table.combine_lists('m', weights_col=weights_col, ismag=True) - + #pdb.set_trace() # Replace the originals if we are supposed to keep them fixed. if keep_ref_orig: for val in vals_orig.keys(): self.ref_table[val][ref_orig_idx] = vals_orig[val] + + #pdb.set_trace() return def get_weights_for_lists(self, ref_list, star_list): @@ -1134,8 +1137,6 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot for jj in range(n_epochs): # Extract bootstrap sample of matched reference stars good = np.where(~np.isnan(ref_table['x_orig'][idx_ref][:,jj])) - # TODO: consider confirming we reach some threshold of unique time values here? - # TODO: Like, grab n_pts needed for the default motion model maybe samp_idx = np.random.choice(good[0], len(good[0]), replace=True) # Get reference star positions in particular epoch from ref_list. @@ -1227,6 +1228,8 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot # for each star, if desired. Draw a full-sample bootstrap over the epochs # for each star, and then run it through the startable fit_velocities machinery if calc_vel_in_bootstrap: + # TODO: consider confirming we reach some threshold of unique time values here? + # TODO: Like, grab n_pts needed for the default motion model maybe boot_idx = np.random.choice(np.arange(0, n_epochs, 1), size=n_epochs) t_boot = t_arr[boot_idx] @@ -1263,6 +1266,7 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot x_err_b = np.std(x_trans_arr, ddof=1, axis=1) y_err_b = np.std(y_trans_arr, ddof=1, axis=1) m_err_b = np.std(m_trans_arr, ddof=1, axis=1) + #pdb.set_trace() motion_data_err = {} if calc_vel_in_bootstrap: @@ -1285,6 +1289,19 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot col[idx_good] = data_dict[ff] self.ref_table.add_column(col) + + # Calculate chi^2 with bootstrap positional errors + x_pred, y_pred, _, _ = self.ref_table.get_star_positions_at_time(t_arr, allow_alt_models=True) + xe_comb = np.hypot(self.ref_table['xe'], self.ref_table['xe_boot']) + ye_comb = np.hypot(self.ref_table['ye'], self.ref_table['ye_boot']) + data_dict['chi2_x_boot'] = np.nansum((self.ref_table['x']-x_pred)**2/(xe_comb)**2,axis=1) + data_dict['chi2_y_boot'] = np.nansum((self.ref_table['y']-y_pred)**2/(ye_comb)**2,axis=1) + for ff in ['chi2_x_boot', 'chi2_y_boot']: + col = Column(np.ones(len(self.ref_table)), name=ff) + col.fill(np.nan) + + col[idx_good] = data_dict[ff][idx_good] + self.ref_table.add_column(col) # Now handle the velocities, if they were calculated if calc_vel_in_bootstrap: @@ -1297,7 +1314,7 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot col[idx_good] = data_dict[ff] self.ref_table.add_column(col) #pdb.set_trace() - + print('===============================') print('Done with bootstrap') print('===============================') @@ -1605,7 +1622,7 @@ def fit(self): self.ref_table.detections() ### Drop all stars that have 0 detections. - idx = np.where((self.ref_table['n_detect'] == 0) & (self.ref_table['ref_orig'] == False))[0] + idx = np.where((self.ref_table['n_detect'] == 0))[0] # & (self.ref_table['ref_orig'] == False))[0] if self.verbose > 0: print(' *** Getting rid of {0:d} out of {1:d} junk sources'.format(len(idx), len(self.ref_table))) self.ref_table.remove_rows(idx) diff --git a/flystar/analysis.py b/flystar/analysis.py index 94d14b6..50fe06a 100644 --- a/flystar/analysis.py +++ b/flystar/analysis.py @@ -180,12 +180,16 @@ def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2, gaia_new['motion_model_input'] = 'Parallax' gaia_new['motion_model_used'] = 'Parallax' gaia_new['motion_model_used'][idx] = 'Linear' + #gaia_new['dof'] = 3 + #gaia_new['dof'][idx] = 2 elif default_motion_model=='Linear': gaia_new['motion_model_input'] = 'Linear' gaia_new['motion_model_used'] = 'Linear' + #gaia_new['dof'] = 2 elif default_motion_model=='Fixed': gaia_new['motion_model_input'] = 'Fixed' gaia_new['motion_model_used'] = 'Fixed' + #gaia_new['dof'] = 1 else: print("Invalid motion model",default_motion_model,"- none assigned") diff --git a/flystar/plots.py b/flystar/plots.py index 95b1eee..b4832b4 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -2179,8 +2179,8 @@ def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50, boot_err=False): x = tab['x'][ii, fnd] y = tab['y'][ii, fnd] if boot_err: - xerr = tab['xe_boot'][ii, fnd] - yerr = tab['ye_boot'][ii, fnd] + xerr = np.hypot(tab['xe_boot'][ii, fnd], tab['xe'][ii, fnd]) + yerr = np.hypot(tab['ye_boot'][ii, fnd], tab['ye'][ii, fnd]) else: xerr = tab['xe'][ii, fnd] yerr = tab['ye'][ii, fnd] @@ -2256,8 +2256,8 @@ def plot_chi2_dist_per_filter(tab, Ndetect, xlim=40, n_bins=50, filter=None, boo x = tab['x'][ii, fnd] y = tab['y'][ii, fnd] if boot_err: - xerr = tab['xe_boot'][ii, fnd] - yerr = tab['ye_boot'][ii, fnd] + xerr = np.hypot(tab['xe_boot'][ii, fnd], tab['xe'][ii, fnd]) + yerr = np.hypot(tab['ye_boot'][ii, fnd], tab['ye'][ii, fnd]) else: xerr = tab['xe'][ii, fnd] yerr = tab['ye'][ii, fnd] @@ -2274,6 +2274,7 @@ def plot_chi2_dist_per_filter(tab, Ndetect, xlim=40, n_bins=50, filter=None, boo chi2_y = np.sum(sigY**2) chi2_x_list.append(chi2_x) chi2_y_list.append(chi2_y) + #pdb.set_trace() x = np.array(chi2_x_list) y = np.array(chi2_y_list) @@ -2281,9 +2282,10 @@ def plot_chi2_dist_per_filter(tab, Ndetect, xlim=40, n_bins=50, filter=None, boo idx = np.where(fnd == Ndetect)[0] # Fitting position and velocity... so subtract 2 to get Ndof - Ndof = Ndetect - tab['dof'][i_all_detected] + Ndof = Ndetect - 1 #tab['dof'][i_all_detected] chi2_xaxis = np.linspace(0, xlim, xlim*3) chi2_bins = np.linspace(0, xlim, n_bins) + #pdb.set_trace() plt.figure(figsize=(6,4)) plt.clf() @@ -2345,12 +2347,12 @@ def plot_chi2_dist_per_epoch(tab, Ndetect, mlim=[14,21], ylim = [-1, 1], target_ y = tab['y'][ii, fnd] m = tab['m'][ii, fnd] - if boot_err: - xerr = tab['xe_boot'][ii, fnd] - yerr = tab['ye_boot'][ii, fnd] - else: - xerr = tab['xe'][ii, fnd] - yerr = tab['ye'][ii, fnd] + if boot_err: + xerr = np.hypot(tab['xe_boot'][ii, fnd], tab['xe'][ii, fnd]) + yerr = np.hypot(tab['ye_boot'][ii, fnd], tab['ye'][ii, fnd]) + else: + xerr = tab['xe'][ii, fnd] + yerr = tab['ye'][ii, fnd] fitLineX = xt_mod_all[ii, fnd] fitLineY = yt_mod_all[ii, fnd] @@ -2550,7 +2552,7 @@ def plot_chi2_dist_mag(tab, Ndetect, xlim=40, n_bins=30, boot_err=False): m = tab['m'][ii, fnd] if boot_err: - merr = tab['me_boot'][ii, fnd] + merr = np.hypot(tab['me_boot'][ii, fnd], tab['me'][ii, fnd]) else: merr = tab['me'][ii, fnd] m0 = tab['m0'][ii] @@ -2643,7 +2645,7 @@ def plot_chi2_dist_mag_per_filter(tab, Ndetect, mlim=40, n_bins=30, xlim=40, fil return def plot_stars(tab, star_names, NcolMax=2, epoch_array = None, figsize=(15,25), color_time=False, - position_angle=None, RA=None, Dec=None, observer_location='earth'): + position_angle=None, RA=None, Dec=None, observer_location='earth', boot_err=False): """ Plot a set of stars positions, flux and residuals over time. @@ -2698,9 +2700,14 @@ def rs(x): y = tab['y'][ii, fnd] m = tab['m'][ii, fnd] - xerr = tab['xe'][ii, fnd] - yerr = tab['ye'][ii, fnd] - merr = tab['me'][ii, fnd] + if boot_err: + xerr = np.hypot(tab['xe'][ii, fnd], tab['xe_boot'][ii, fnd]) + yerr = np.hypot(tab['ye'][ii, fnd], tab['ye_boot'][ii, fnd]) + merr = np.hypot(tab['me'][ii, fnd], tab['me_boot'][ii, fnd]) + else: + xerr = tab['xe'][ii, fnd] + yerr = tab['ye'][ii, fnd] + merr = tab['me'][ii, fnd] dt = tab['t'][ii, fnd] - tab['t0'][ii] @@ -3057,7 +3064,7 @@ def rs(x): return def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_list = None, - figsize=(15,25), color_time=False, resTicRng=None, save_name=None): + figsize=(15,25), color_time=False, resTicRng=None, save_name=None, boot_err=False): """ Plot a set of stars positions, flux and residuals over time. @@ -3114,9 +3121,14 @@ def rs(x): y = tab['y'][ii, fnd] m = tab['m'][ii, fnd] - xerr = tab['xe'][ii, fnd] - yerr = tab['ye'][ii, fnd] - merr = tab['me'][ii, fnd] + if boot_err: + xerr = np.hypot(tab['xe'][ii, fnd], tab['xe_boot'][ii, fnd]) + yerr = np.hypot(tab['ye'][ii, fnd], tab['ye_boot'][ii, fnd]) + merr = np.hypot(tab['me'][ii, fnd], tab['me_boot'][ii, fnd]) + else: + xerr = tab['xe'][ii, fnd] + yerr = tab['ye'][ii, fnd] + merr = tab['me'][ii, fnd] fitLineX = xt_mod_all[ii, fnd] fitLineY = yt_mod_all[ii, fnd] @@ -3503,7 +3515,7 @@ def plot_plxs(star_tab, target_idx=0): ax[0].axhline(0, c='gray') ax[0].set_ylabel('Plx (mas)') ax[0].set_xlabel('Mag') - ax[1].hist(star_tab['pi']/star_tab['pi_err'], bins=range(-20,20)) + ax[1].hist(star_tab['pi']/star_tab['pi_err'], bins=range(-10,10)) ax[1].set_ylabel('N stars') ax[1].set_xlabel('Plx/Plx_err') plt.tight_layout() diff --git a/flystar/transforms.py b/flystar/transforms.py index 8264aa6..6cc865a 100755 --- a/flystar/transforms.py +++ b/flystar/transforms.py @@ -307,7 +307,7 @@ def __init__(self, order, px, py, pxerr=None, pyerr=None, mag_offset=0.0): px_dict = PolyTransform.make_param_dict(px, self.poly_order, isY=False) py_dict = PolyTransform.make_param_dict(py, self.poly_order, isY=True) - fixed_params = {'c0_0': False, 'c1_0': True, 'c0_1': True} + fixed_params = {'c0_0': False, 'c1_0': True, 'c0_1': True} #, 'c1_1':True} self.px = models.Polynomial2D(self.poly_order, **px_dict, fixed=fixed_params) self.py = models.Polynomial2D(self.poly_order, **py_dict, fixed=fixed_params) else: @@ -599,7 +599,7 @@ def derive_transform(cls, x, y, xref, yref, order, m=None, mref=None, init_gx = PolyTransform.make_param_dict(init_gx, poly_order, isY=False) init_gy = PolyTransform.make_param_dict(init_gy, poly_order, isY=True) - fixed_params = {'c0_0': False, 'c1_0': True, 'c0_1': True} + fixed_params = {'c0_0': False, 'c1_0': True, 'c0_1': True} #, 'c1_1':True} p_init_x = models.Polynomial2D(poly_order, **init_gx, fixed=fixed_params) p_init_y = models.Polynomial2D(poly_order, **init_gy, fixed=fixed_params) else: From a40ad280c9524bf85eceea4378bea60670845066 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 17 Jul 2025 13:49:00 -0700 Subject: [PATCH 080/124] dof handling --- flystar/plots.py | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/flystar/plots.py b/flystar/plots.py index b4832b4..83d759e 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -2205,6 +2205,7 @@ def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50, boot_err=False): idx = np.where(fnd == Ndetect)[0] # Fitting position and velocity... so subtract 2 to get Ndof Ndof = Ndetect - tab['dof'][i_all_detected] + print(i_all_detected) chi2_xaxis = np.linspace(0, xlim, xlim*3) chi2_bins = np.linspace(0, xlim, n_bins) @@ -2218,9 +2219,9 @@ def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50, boot_err=False): plt.xlim(0, xlim) plt.legend() - chi2red_x = x / (fnd - 2) - chi2red_y = y / (fnd - 2) - chi2red_t = (x + y) / (2.0 * (fnd - 2)) + chi2red_x = x / Ndof + chi2red_y = y / Ndof + chi2red_t = (x + y) / (2.0 * Ndof) print('Mean reduced chi^2: (Ndetect = {0:d} of {1:d})'.format(len(idx), len(tab))) fmt = ' {0:s} = {1:.1f} for N_detect and {2:.1f} for all' @@ -2274,17 +2275,21 @@ def plot_chi2_dist_per_filter(tab, Ndetect, xlim=40, n_bins=50, filter=None, boo chi2_y = np.sum(sigY**2) chi2_x_list.append(chi2_x) chi2_y_list.append(chi2_y) - #pdb.set_trace() + #print(fitLineX, x, xerr) + #pdb.set_trace() x = np.array(chi2_x_list) y = np.array(chi2_y_list) fnd = np.array(fnd_list) + idx = np.where(fnd == Ndetect)[0] # Fitting position and velocity... so subtract 2 to get Ndof - Ndof = Ndetect - 1 #tab['dof'][i_all_detected] + Ndof = Ndetect - tab['dof'][i_all_detected] + print(i_all_detected) chi2_xaxis = np.linspace(0, xlim, xlim*3) chi2_bins = np.linspace(0, xlim, n_bins) + print(x[idx]) #pdb.set_trace() plt.figure(figsize=(6,4)) @@ -2303,9 +2308,9 @@ def plot_chi2_dist_per_filter(tab, Ndetect, xlim=40, n_bins=50, filter=None, boo plt.savefig(str(filter)+'_chi2_dist.png', dpi=400) - chi2red_x = x / (fnd - 2) - chi2red_y = y / (fnd - 2) - chi2red_t = (x + y) / (2.0 * (fnd - 2)) + chi2red_x = x / Ndof + chi2red_y = y / Ndof + chi2red_t = (x + y) / (2.0 * Ndof) print('Mean reduced chi^2: (Ndetect = {0:d} of {1:d})'.format(len(idx), len(tab))) fmt = ' {0:s} = {1:.1f} for N_detect and {2:.1f} for all' From 85f78c42d1576e8026c2961c280c4728f61f58fc Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 28 Jul 2025 10:35:35 -0700 Subject: [PATCH 081/124] implementation of motion_model_dict to store motion model metadata --- flystar/align.py | 99 +++++------- flystar/motion_model.py | 293 +++++++++++++----------------------- flystar/startables.py | 105 +++++-------- flystar/tests/test_align.py | 16 +- 4 files changed, 186 insertions(+), 327 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 8452649..14926d9 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -22,12 +22,10 @@ def __init__(self, list_of_starlists, ref_index=0, iters=2, init_order=1, mag_trans=True, mag_lim=None, weights=None, trans_input=None, trans_class=transforms.PolyTransform, - # TODO: consider deleting use_vel fully, for now I'm putting in - # a fallback so people can still use old code for now - use_vel=None, default_motion_model='Fixed', calc_trans_inverse=False, init_guess_mode='miracle', iter_callback=None, - position_angle=None, RA=None, Dec=None, observer_location='earth', + default_motion_model='Fixed', + motion_model_dict = {}, verbose=True): """ Make a mosaic object by passing in a list of starlists and then running fit(). @@ -107,13 +105,6 @@ def = None. If not None, then this should contain an array or list of transform then the transformation argument (i.e. order) will be changed for every iteration in iters. - # TODO: update when decided - use_vel : boolean - If velocities are present in the reference list and use_vel == True, then during - each iteration of the alignment, the reference list will be propogated in time - using the velocity information. So all transformations will be derived w.r.t. - the propogated positions. See also update_vel. - calc_trans_inverse: boolean If true, then calculate the inverse transformation (from reference to starlist) in addition to the normal transformation (from starlist to reference). The inverse @@ -131,14 +122,11 @@ def = None. If not None, then this should contain an array or list of transform A function to call (that accepts a StarTable object and an iteration number) at the end of every iteration. This can be used for plotting or printing state. - position_angle, RA, Dec : float (degrees) - [Only required if using Parallax motion model] - position_angle: clockwise angular offset of image y-axis from North - RA, Dec: J2000.0 coordinates of your image center - These values are assumed to be the same for all starlists + default_motion_model : string + Name of motion model to use for new or unassigned stars - observer_location: str - Only used for parallax motion models, default is 'earth' + motion_model_dict : None or dict + Dict of motion model name keys (strings) and corresponding MotionModel object values verbose : int (0 to 9, inclusive) Controls the verbosity of print statements. (0 least, 9 most verbose). @@ -189,19 +177,8 @@ def = None. If not None, then this should contain an array or list of transform self.trans_input = trans_input self.trans_class = trans_class self.calc_trans_inverse = calc_trans_inverse - self.position_angle=position_angle - self.RA=RA - self.Dec=Dec - self.observer_location=observer_location - - # TODO: consider whether we want this fallback - if use_vel is None: - self.default_motion_model = default_motion_model - else: - if use_vel: - self.default_motion_model = 'Linear' - else: - self.default_motion_model = 'Fixed' + self.motion_model_dict = motion_model_dict + self.default_motion_model = default_motion_model self.init_guess_mode = init_guess_mode self.iter_callback = iter_callback self.verbose = verbose @@ -233,6 +210,10 @@ def = None. If not None, then this should contain an array or list of transform # is passed in, replicate for all star lists, all loop iterations. ########## self.setup_trans_info() + + # Make sure the motion models are ready + self.motion_model_dict = motion_model.validate_motion_model_dict(self.motion_model_dict, + StarTable(), self.default_motion_model) return @@ -402,7 +383,7 @@ def match_and_transform(self, ref_mag_lim, dr_tol, dm_tol, outlier_tol, trans_ar # Only use "use_in_trans" reference stars, even for initial guessing. keepers = np.where(ref_list['use_in_trans'] == True)[0] - trans = trans_initial_guess(ref_list[keepers], star_list_orig_trim, self.trans_args[0], + trans = trans_initial_guess(ref_list[keepers], star_list_orig_trim, self.trans_args[0], self.motion_model_dict, mode=self.init_guess_mode, order=self.init_order, verbose=self.verbose, @@ -599,7 +580,7 @@ def setup_ref_table_from_starlist(self, star_list, motion_model_used=None): col_arrays[new_col_name] = new_col_data # Use the columns from the ref list to make the ref_table. - ref_table = StarTable(**col_arrays, position_angle=self.position_angle, RA=self.RA, Dec=self.Dec, observer_location=self.observer_location) + ref_table = StarTable(**col_arrays) # Make new columns to hold original values. These will be copies # of the old columns and will only include x, y, m, xe, ye, me. @@ -855,7 +836,8 @@ def update_ref_table_aggregates(self, keep_ref_orig, n_boot=0): else: # Combine positions with a velocity fit. self.ref_table.fit_velocities(bootstrap=n_boot, verbose=self.verbose, - default_motion_model=self.default_motion_model, select_stars=fit_star_idxs) + default_motion_model=self.default_motion_model, select_stars=fit_star_idxs, + motion_model_dict=self.motion_model_dict) # Combine (transformed) magnitudes if 'me' in self.ref_table.colnames: @@ -940,7 +922,7 @@ def match_lists(self, dr_tol, dm_tol): else: star_list_T.transform_xy(self.trans_list[ii]) - xref, yref = get_pos_at_time(star_list_T['t'][0], self.ref_table) + xref, yref = get_pos_at_time(star_list_T['t'][0], self.ref_table, self.motion_model_dict) mref = self.ref_table['m0'] idx_lis, idx_ref, dr, dm = match.match(star_list_T['x'], star_list_T['y'], star_list_T['m'], @@ -974,7 +956,7 @@ def get_ref_list_from_table(self, epoch): name = self.ref_table['name'] if ('motion_model_used' in self.ref_table.colnames): - x,y,xe,ye = self.ref_table.get_star_positions_at_time(epoch, allow_alt_models=True) + x,y,xe,ye = self.ref_table.get_star_positions_at_time(epoch, self.motion_model_dict, allow_alt_models=True) else: # No velocities... just used average positions. x = self.ref_table['x0'] @@ -1240,14 +1222,11 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot xe=xe_trans_arr[:,ii,boot_idx], ye=ye_trans_arr[:,ii,boot_idx], me=me_trans_arr[:,ii,boot_idx], - t=np.tile(t_boot, (len(ref_table),1)), - RA=self.RA, Dec=self.Dec, - position_angle=self.position_angle, - observer_location=self.observer_location) + t=np.tile(t_boot, (len(ref_table),1))) # Now, do proper motion calculation, making sure to fix t0 to the # orig value (so we can get a reasonable error on x0, y0) - star_table.fit_velocities(fixed_t0=t0_arr, default_motion_model=self.default_motion_model) + star_table.fit_velocities(fixed_t0=t0_arr, default_motion_model=self.default_motion_model, motion_model_dict=self.motion_model_dict) # Save proper motion fit results to output arrays for col in motion_col_list: @@ -1291,7 +1270,7 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot self.ref_table.add_column(col) # Calculate chi^2 with bootstrap positional errors - x_pred, y_pred, _, _ = self.ref_table.get_star_positions_at_time(t_arr, allow_alt_models=True) + x_pred, y_pred, _, _ = self.ref_table.get_star_positions_at_time(t_arr, self.motion_model_dict, allow_alt_models=True) xe_comb = np.hypot(self.ref_table['xe'], self.ref_table['xe_boot']) ye_comb = np.hypot(self.ref_table['ye'], self.ref_table['ye_boot']) data_dict['chi2_x_boot'] = np.nansum((self.ref_table['x']-x_pred)**2/(xe_comb)**2,axis=1) @@ -1334,12 +1313,11 @@ def __init__(self, ref_list, list_of_starlists, iters=2, trans_class=transforms.PolyTransform, calc_trans_inverse=False, use_ref_new=False, - use_vel=None, default_motion_model='Fixed', update_ref_orig=False, init_guess_mode='miracle', iter_callback=None, - position_angle=None, RA=None, Dec=None, - observer_location='earth', + default_motion_model='Fixed', + motion_model_dict={}, verbose=True): """ @@ -1461,14 +1439,11 @@ def = None. If not None, then this should contain an array or list of transform A function to call (that accepts a StarTable object and an iteration number) at the end of every iteration. This can be used for plotting or printing state. - position_angle, RA, Dec : float (degrees) - Only required if using Parallax motion model - position_angle: clockwise angular offset of image y-axis from North - RA, Dec: J2000.0 coordinates of your image center - These values are assumed to be the same for all starlists + default_motion_model : string + Name of motion model to use for new or unassigned stars - observer_location: str - Only used for parallax motion models, default is 'earth' + motion_model_dict : None or dict + Dict of motion model name keys (strings) and corresponding MotionModel object values Example ---------- @@ -1507,12 +1482,11 @@ def = None. If not None, then this should contain an array or list of transform init_order=init_order, mag_trans=mag_trans, mag_lim=mag_lim, weights=weights, trans_input=trans_input, trans_class=trans_class, - calc_trans_inverse=calc_trans_inverse, use_vel=use_vel, + calc_trans_inverse=calc_trans_inverse, default_motion_model = default_motion_model, init_guess_mode=init_guess_mode, iter_callback=iter_callback, - position_angle=position_angle, RA=RA, Dec=Dec, - observer_location=observer_location, + motion_model_dict=motion_model_dict, verbose=verbose) self.ref_list = copy.deepcopy(ref_list) @@ -1533,6 +1507,10 @@ def = None. If not None, then this should contain an array or list of transform self.ref_list['me'] = self.ref_list['m0_err'] if ('t' not in self.ref_list.colnames) and ('t0' in self.ref_list.colnames): self.ref_list['t'] = self.ref_list['t0'] + + # Make sure the motion models are ready + self.motion_model_dict = motion_model.validate_motion_model_dict(self.motion_model_dict, + self.ref_list, self.default_motion_model) return @@ -1574,7 +1552,6 @@ def fit(self): logger(_log, ' trans_class = ' + str(self.trans_class), self.verbose) logger(_log, ' calc_trans_inverse = ' + str(self.calc_trans_inverse), self.verbose) logger(_log, ' use_ref_new = ' + str(self.use_ref_new), self.verbose) - #logger(_log, ' use_vel = ' + str(self.use_vel), self.verbose) logger(_log, ' default_motion_model = ' + str(self.default_motion_model), self.verbose) logger(_log, ' update_ref_orig = ' + str(self.update_ref_orig), self.verbose) logger(_log, ' init_guess_mode = ' + str(self.init_guess_mode), self.verbose) @@ -1717,7 +1694,7 @@ def setup_ref_table_from_starlist(star_list): col_arrays[new_col_name] = new_col_data # Use the columns from the ref list to make the ref_table. - ref_table = StarTable(**col_arrays, position_angle=self.position_angle, RA=self.RA, Dec=self.Dec) + ref_table = StarTable(**col_arrays) # Make new columns to hold original values. These will be copies # of the old columns and will only include x, y, m, xe, ye, me. @@ -2775,7 +2752,7 @@ def check_trans_input(list_of_starlists, trans_input, mag_trans): return -def trans_initial_guess(ref_list, star_list, trans_args, mode='miracle', +def trans_initial_guess(ref_list, star_list, trans_args, motion_model_dict, mode='miracle', ignore_contains='star', verbose=True, n_req_match=3, mag_trans=True, order=1): """ @@ -2813,7 +2790,7 @@ def trans_initial_guess(ref_list, star_list, trans_args, mode='miracle', # If there are velocities in the reference list, use them. # We assume velocities are in the same units as the positions. - xref, yref = get_pos_at_time(star_list['t'][0], ref_list) + xref, yref = get_pos_at_time(star_list['t'][0], ref_list, motion_model_dict) if 'm' in ref_list.colnames: mref = ref_list['m'] else: @@ -3052,7 +3029,7 @@ def get_weighting_scheme(weights, ref_list, star_list): return weight # TODO: This is sometimes run on a startable, not a starlist, at least as currently used -def get_pos_at_time(t, starlist): +def get_pos_at_time(t, starlist, motion_model_dict): """ Take a starlist, check to see if it has motion/velocity columns. If it does, then propogate the positions forward in time @@ -3068,7 +3045,7 @@ def get_pos_at_time(t, starlist): """ # Check for motion model if 'motion_model_used' in starlist.colnames: - x,y,xe,ye = starlist.get_star_positions_at_time(t, allow_alt_models=True) + x,y,xe,ye = starlist.get_star_positions_at_time(t, motion_model_dict, allow_alt_models=True) # If no motion model, check for velocities elif ('vx' in starlist.colnames) and ('vy' in starlist.colnames): x = starlist['x0'] + starlist['vx']*(t-starlist['t0']) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 70abe5f..5aca90a 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -6,13 +6,11 @@ from scipy.optimize import curve_fit import warnings -plx_vector_cached = None - class MotionModel(ABC): # Number of data points required to fit model n_pts_req = 0 # Degrees of freedom for model - dof = 0 + n_params = 0 # Fit paramters: Shared fit parameters fitter_param_names = [] @@ -20,7 +18,6 @@ class MotionModel(ABC): # Fixed parameters: These are parameters that are required for the model, but are not # fit quantities. For example, RA and Dec in a parallax model. fixed_param_names = [] - # TODO: for values that are for the full data set, not per star - are we happy with this method? fixed_meta_data = [] # Non-fit paramters: Custom paramters that will not be fit. @@ -36,19 +33,15 @@ def __init__(self, *args, **kwargs): setattr(self, param, np.array([param_var]))''' return - def get_pos_at_time(self, t): + def get_pos_at_time(self, params, t): #return x, y pass - def get_pos_err_at_time(self, t): - #return x_err, y_err - pass - def get_batch_pos_at_time(self, t): #return x, y, x_err, y_err pass - def run_fit(self, t, x, y, xe, ye, update=True, weighting='var'): + def run_fit(self, t, x, y, xe, ye, t0, weighting='var'): # Run a single fit (used both for overall fit + bootstrap iterations) pass @@ -70,15 +63,13 @@ def scale_errors(self, errs, weighting='var'): warnings.warn("Invalid weighting, using default weighting scheme var.", UserWarning) return errs - def fit_motion_model(self, t, x, y, xe, ye, update=True, bootstrap=0, weighting='var'): + def fit_motion_model(self, t, x, y, xe, ye, t0, bootstrap=0, weighting='var'): """ Fit the input positions on the sky and errors to determine new parameters for this motion model (MM). - Current MM parameters are used as the initial guess. - Best-fit parameters will be returned along with uncertainties - and updated if update=True. + Best-fit parameters will be returned along with uncertainties. """ - params, param_errs = self.run_fit(t, x, y, xe, ye, weighting=weighting, update=update) + params, param_errs = self.run_fit(t, x, y, xe, ye, t0, weighting=weighting) if bootstrap>0 and len(x)>(self.n_pts_req): edx = np.arange(len(x), dtype=int) @@ -87,31 +78,28 @@ def fit_motion_model(self, t, x, y, xe, ye, update=True, bootstrap=0, weighting= bdx = np.random.choice(edx, len(x)) while len(np.unique(bdx))0: + raise ValueError(f"Cannot use {mm} motion model without required metadata. Please initialize with required metadata and provide in motion_model_dict.") + else: + motion_model_dict[mm] = mm_obj() + warnings.warn(f"Using default model/fitter for {mm}.", UserWarning) + + return motion_model_dict + """ Get all the motion model parameters for a given motion_model_name. Optionally, include fixed and error parameters (included by default). @@ -559,6 +473,3 @@ def get_all_motion_model_param_names(with_errors=True, with_fixed=True): return np.unique(list_of_parameters).tolist() - - - diff --git a/flystar/startables.py b/flystar/startables.py index 66447ff..618dba3 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -61,18 +61,6 @@ class StarTable(Table): ref_list : int Specify which list is the reference list (if any). - - position_angle: float (degree) - required for parallax motion model - clockwise angular offset between image y-axis and North - - RA, Dec: float (degrees) - required for parallax motion model - image position coordinates - - observer_location: string - only used by parallax motion model - default is 'earth' Examples -------------------------- @@ -84,7 +72,7 @@ class StarTable(Table): print(t['name'][0:10]) # print the first 10 star names print(t['x'][0:10, 0]) # print x from the first epoch/list/column for the first 10 stars """ - def __init__(self, *args, ref_list=0, position_angle=None, RA=None, Dec=None, observer_location='earth', **kwargs): + def __init__(self, *args, ref_list=0, **kwargs): """ """ @@ -162,8 +150,7 @@ def __init__(self, *args, ref_list=0, position_angle=None, RA=None, Dec=None, ob Table.__init__(self, (kwargs['name'], kwargs['x'], kwargs['y'], kwargs['m']), names=('name', 'x', 'y', 'm')) self['name'] = self['name'].astype('U20') - self.meta = {'n_stars': n_stars, 'n_lists': n_lists, 'ref_list': ref_list, - 'position_angle': position_angle, 'RA': RA, 'Dec':Dec, 'observer_location':observer_location} + self.meta = {'n_stars': n_stars, 'n_lists': n_lists, 'ref_list': ref_list} for meta_arg in meta_tab: if meta_arg in kwargs: @@ -549,19 +536,15 @@ def detections(self): return - def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, bootstrap=0, fixed_t0=False, verbose=False, + def fit_velocities(self, weighting='var', bootstrap=0, fixed_t0=False, verbose=False, mask_val=None, mask_lists=False, show_progress=True, default_motion_model='Linear', - reassign_motion_model=False, select_stars=None): + reassign_motion_model=False, select_stars=None, motion_model_dict={}): """Fit velocities for all stars in the table and add to the columns 'vx', 'vxe', 'vy', 'vye', 'x0', 'x0e', 'y0', 'y0e'. Parameters ---------- weighting : str, optional Weight by variance 'var' or standard deviation 'std', by default 'var' - use_scipy : bool, optional - Use scipy.curve_fit (recommended for large number of epochs, but may return inf or nan) or analytic fitting from flystar.fit_velocity.linear_fit (recommended for a few epochs), by default True - absolute_sigma : bool, optional - Absolute sigma or not. See https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.curve_fit.html for details, by default True bootstrap : int, optional Calculate uncertain using bootstraping or not, by default 0 fixed_t0 : bool or array-like, optional @@ -600,6 +583,8 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b if ('motion_model_input' not in self.colnames) or reassign_motion_model: self['motion_model_input'] = default_motion_model self['motion_model_used'] = self['motion_model_input'] + + motion_model_dict = motion_model.validate_motion_model_dict(motion_model_dict, self, default_motion_model) # # Fill table with all possible motion model parameter names as new @@ -608,7 +593,7 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b all_motion_models = np.unique(self['motion_model_input'].tolist() + ['Fixed']+[default_motion_model]).tolist() new_col_list = motion_model.get_list_motion_model_param_names(all_motion_models, with_errors=True) # Append goodness of fit metrics and t0. - new_col_list += ['chi2_x', 'chi2_y', 'dof'] + new_col_list += ['chi2_x', 'chi2_y', 'n_params'] if 't0' not in new_col_list: new_col_list.append('t0') @@ -643,7 +628,7 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b self['y0_err'] = self['ye'][:,0] self['n_fit'] = 1 - self['dof'] = 1 + self['n_params'] = 1 return @@ -655,14 +640,12 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b # This is slow; but robust. if show_progress: for ss in tqdm(fit_star_idxs): - self.fit_velocity_for_star(ss, weighting=weighting, use_scipy=use_scipy, - absolute_sigma=absolute_sigma, bootstrap=bootstrap, + self.fit_velocity_for_star(ss, motion_model_dict, weighting=weighting, bootstrap=bootstrap, fixed_t0=fixed_t0, default_motion_model=default_motion_model, mask_val=mask_val, mask_lists=mask_lists) else: for ss in range(fit_star_idxs): - self.fit_velocity_for_star(ss, weighting=weighting, use_scipy=use_scipy, - absolute_sigma=absolute_sigma, bootstrap=bootstrap, + self.fit_velocity_for_star(ss, motion_model_dict, weighting=weighting, bootstrap=bootstrap, fixed_t0=fixed_t0, default_motion_model=default_motion_model, mask_val=mask_val, mask_lists=mask_lists) if verbose: @@ -671,8 +654,7 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b return - def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, - absolute_sigma=True, bootstrap=False, fixed_t0=False, + def fit_velocity_for_star(self, ss, motion_model_dict, weighting='var', bootstrap=False, fixed_t0=False, default_motion_model='Linear', mask_val=None, mask_lists=False): # TODO: "weighting" is not used @@ -790,7 +772,7 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, if N_good == 0: #self['motion_model_used'][ss] = 'None' self['n_fit'][ss] = N_good - self['dof'][ss] = 0 + self['n_params'][ss] = 0 return # Everything below has N_good >= 1 @@ -819,12 +801,12 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, motion_model_use = self['motion_model_input'][ss] # Go to default model if not enough points for assigned but enough for default # TODO: think about whether we want other fallbacks besides the singular default and Fixed - if (N_good < getattr(motion_model, self['motion_model_input'][ss]).n_pts_req) and \ - (N_good >= getattr(motion_model, default_motion_model).n_pts_req): + if (N_good < motion_model_dict[motion_model_use].n_pts_req) and \ + (N_good >= motion_model_dict[default_motion_model].n_pts_req): motion_model_use = default_motion_model # If not enough points for either, go to a fixed model - elif (N_good < getattr(motion_model, self['motion_model_input'][ss]).n_pts_req) and \ - (N_good < getattr(motion_model, default_motion_model).n_pts_req): + elif (N_good < motion_model_dict[motion_model_use].n_pts_req) and \ + (N_good < motion_model_dict[default_motion_model].n_pts_req): motion_model_use = 'Fixed' # If the points do not cover multiple times, go to a fixed model if (t == t[0]).all(): @@ -832,40 +814,31 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, self['motion_model_used'][ss] = motion_model_use - # Get the motion model object. - modClass = getattr(motion_model, motion_model_use) - - # Load up any prior information on parameters for this model. - param_dict = {} - for par in modClass.fitter_param_names+modClass.fixed_param_names: - if ~np.isnan(self[par][ss]): - param_dict[par] = self[par][ss] - - # TODO: this doesn't match how we actually handle ra,dec,pa - need to adjust - # Load fixed parameters, if needed. - '''for par in modClass.fixed_param_names: - if par not in self.colnames: - msg = f'fit_velocity_for_star: ' - msg += f'Missing fixed_params column {par} needed for motion model {motion_model_use}.' - - raise RuntimeException(msg) - - if self[par][ss] != np.nan: - param_dict[par] = self[par][ss]''' +# # Get the motion model object. +# modClass = motion_model_dict[motion_model_use] +# +# # Load up any prior information on parameters for this model. +# param_dict = {} +# for par in modClass.fitter_param_names+modClass.fixed_param_names: +# if ~np.isnan(self[par][ss]): +# param_dict[par] = self[par][ss] # Model object - mod = modClass(**param_dict, PA=self.meta['position_angle'], RA=self.meta['RA'], Dec=self.meta['Dec'], obs=self.meta['observer_location']) + mod = motion_model_dict[motion_model_use] + print(mod) + fixed_params = [self[par][ss] for par in mod.fixed_param_names] # Fit for the best parameters - params, param_errs = mod.fit_motion_model(t, x, y, xe, ye, bootstrap=bootstrap, update=True, weighting=weighting) - chi2_x,chi2_y = mod.get_chi2(t,x,y,xe,ye) + params, param_errs = mod.fit_motion_model(t, x, y, xe, ye, t0, bootstrap=bootstrap, + weighting=weighting) + chi2_x,chi2_y = mod.get_chi2(params,fixed_params, t,x,y,xe,ye) self['chi2_x'][ss]=chi2_x self['chi2_y'][ss]=chi2_y - self['dof'][ss] = mod.dof + self['n_params'][ss] = mod.n_params # Save parameters and errors to table. - for pp in range(len(modClass.fitter_param_names)): - par = modClass.fitter_param_names[pp] + for pp in range(len(mod.fitter_param_names)): + par = mod.fitter_param_names[pp] par_err = par + '_err' self[par][ss] = params[pp] self[par_err][ss] = param_errs[pp] @@ -873,7 +846,7 @@ def fit_velocity_for_star(self, ss, weighting='var', use_scipy=True, return # New function, to use in align - def get_star_positions_at_time(self, t, allow_alt_models=True): + def get_star_positions_at_time(self, t, motion_model_dict, allow_alt_models=True): """ Get current x,y positions of each star according to its motion_model """ # Start with empty arrays so we can fill them in batches @@ -898,12 +871,11 @@ def get_star_positions_at_time(self, t, allow_alt_models=True): try: # Identify stars with this model & get class idx = np.where(self['motion_model_input']==mm)[0] - modClass = getattr(motion_model, mm) + mod = motion_model_dict[mm] # Set up parameters param_dict = {} - for par in motion_model.get_one_motion_model_param_names(mm,with_errors=True,with_fixed=True): + for par in mod.fitter_param_names + mod.fixed_param_names + [pm+'_err' for pm in mod.fitter_param_names]: param_dict[par] = self[par][idx] - mod = modClass(RA=self.meta['RA'], Dec=self.meta['Dec'], PA=self.meta['position_angle'], obs=self.meta['observer_location']) x[idx],y[idx],xe[idx],ye[idx] = mod.get_batch_pos_at_time(t,**param_dict) except: pass @@ -920,7 +892,7 @@ def get_star_positions_at_time(self, t, allow_alt_models=True): param_dict = {} for par in motion_model.get_one_motion_model_param_names(mm,with_errors=True,with_fixed=True): param_dict[par] = self[par][idx] - mod = modClass(RA=self.meta['RA'], Dec=self.meta['Dec'], PA=self.meta['position_angle'], obs=self.meta['observer_location']) + mod = modClass() x[idx],y[idx],xe[idx],ye[idx] = mod.get_batch_pos_at_time(t,**param_dict) return x,y,xe,ye @@ -1040,8 +1012,7 @@ def shift_reference_frame(self, delta_vx=0.0, delta_vy=0.0, delta_pi=0.0): if delta_pi!=0.0: t_all = self['t'][np.where(~np.any(np.isnan(self['t']), axis=1))[0][0]] t_mjd = Time(t_all, format='decimalyear', scale='utc').mjd - pvec = parallax.parallax_in_direction(self.meta['RA'], self.meta['Dec'], t_mjd, - obsLocation=self.meta['observer_location'], PA=self.meta['position_angle']) + pvec = parallax.parallax_in_direction() self['pi'] += delta_pi self['x'] += delta_pi*pvec[:,0] self['y'] += delta_pi*pvec[:,1] diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index e0e1533..d94d34c 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -1069,7 +1069,7 @@ def test_MosaicToRef_hst_me(): outlier_tol=[None], mag_lim=[13, 21], trans_class=transforms.PolyTransform, trans_args=[{'order': 1}], - use_vel=False, + default_motion_model='Fixed', use_ref_new=False, update_ref_orig=False, mag_trans=False, @@ -1121,7 +1121,7 @@ def test_bootstrap(): mag_lim=mag_lim, ref_mag_lim=ref_mag_lim, weights=weights, - use_vel=True, + default_motion_model='Linear', use_ref_new=False, update_ref_orig=False, init_guess_mode='name', @@ -1155,7 +1155,7 @@ def test_bootstrap(): mag_lim=mag_lim, ref_mag_lim=ref_mag_lim, weights=weights, - use_vel=True, + default_motion_model='Linear', use_ref_new=False, update_ref_orig=False, init_guess_mode='name', @@ -1233,7 +1233,7 @@ def test_calc_vel_in_bootstrap(): mag_lim=mag_lim, ref_mag_lim=ref_mag_lim, weights=weights, - use_vel=True, + default_motion_model='Linear', use_ref_new=False, update_ref_orig=False, init_guess_mode='name', @@ -1300,7 +1300,7 @@ def test_transform_xym(): mag_lim=mag_lim, ref_mag_lim=ref_mag_lim, weights=weights, - use_vel=False, + default_motion_model='Fixed', use_ref_new=False, update_ref_orig=False, init_guess_mode='name', @@ -1335,7 +1335,7 @@ def test_transform_xym(): mag_lim=mag_lim, ref_mag_lim=ref_mag_lim, weights=weights, - use_vel=False, + default_motion_model='Fixed', use_ref_new=False, update_ref_orig=False, init_guess_mode='name', @@ -1378,7 +1378,7 @@ def test_MosaicToRef_mag_bug(): outlier_tol=None, trans_class=transforms.PolyTransform, trans_args=[{'order': 1}], - use_vel=False, + default_motion_model='Fixed', use_ref_new=False, update_ref_orig=False, verbose=True) @@ -1441,7 +1441,7 @@ def test_masked_cols(): dr_tol=[0.2, 0.1], dm_tol=[1, 1], trans_class=transforms.PolyTransform, trans_args=[{'order': 1}, {'order': 1}], - use_vel=True, + default_motion_model='Linear', use_ref_new=False, update_ref_orig=False, mag_trans=True, From 3c3e0ea532349b12b567fef5d528bbc121bf0fad Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 30 Jul 2025 15:27:00 -0700 Subject: [PATCH 082/124] debug motion model rework --- flystar/analysis.py | 8 ++--- flystar/motion_model.py | 32 +++++++++++++++----- flystar/plots.py | 65 ++++++++++++++++++++++++----------------- flystar/startables.py | 10 +++---- 4 files changed, 72 insertions(+), 43 deletions(-) diff --git a/flystar/analysis.py b/flystar/analysis.py index 50fe06a..81ab3f4 100644 --- a/flystar/analysis.py +++ b/flystar/analysis.py @@ -180,16 +180,16 @@ def prepare_gaia_for_flystar(gaia, ra, dec, targets_dict=None, match_dr_max=0.2, gaia_new['motion_model_input'] = 'Parallax' gaia_new['motion_model_used'] = 'Parallax' gaia_new['motion_model_used'][idx] = 'Linear' - #gaia_new['dof'] = 3 - #gaia_new['dof'][idx] = 2 + gaia_new['n_params'] = 3 + gaia_new['n_params'][idx] = 2 elif default_motion_model=='Linear': gaia_new['motion_model_input'] = 'Linear' gaia_new['motion_model_used'] = 'Linear' - #gaia_new['dof'] = 2 + gaia_new['n_params'] = 2 elif default_motion_model=='Fixed': gaia_new['motion_model_input'] = 'Fixed' gaia_new['motion_model_used'] = 'Fixed' - #gaia_new['dof'] = 1 + gaia_new['n_params'] = 1 else: print("Invalid motion model",default_motion_model,"- none assigned") diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 5aca90a..2af4cae 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -74,15 +74,21 @@ def fit_motion_model(self, t, x, y, xe, ye, t0, bootstrap=0, weighting='var'): if bootstrap>0 and len(x)>(self.n_pts_req): edx = np.arange(len(x), dtype=int) bb_params = [] + bb_params_errs = [] for bb in range(bootstrap): bdx = np.random.choice(edx, len(x)) while len(np.unique(bdx))2: # Catch case where bootstrap sends only 2 unique epochs + _,idx=np.unique(dt, return_index=True) + dt = dt[idx] + x = x[idx] + y = y[idx] + xe = xe[idx] + ye = ye[idx] dx = np.diff(x)[0] dy = np.diff(y)[0] dt_diff = np.diff(dt)[0] @@ -319,24 +332,27 @@ def __init__(self, RA, Dec, PA=0.0, obs='earth', **kwargs): self.plx_vector_cached = None return + def get_parallax_vector(self, t_mjd): + return parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA) + def get_pos_at_time(self, fit_params, fixed_params, t): fit_params_dict = dict(zip(self.fitter_param_names, fit_params)) fixed_params_dict = dict(zip(self.fixed_param_names, fixed_params)) dt = t-fixed_params_dict['t0'] t_mjd = Time(t, format='decimalyear', scale='utc').mjd - pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA).T + pvec = self.get_parallax_vector(t_mjd).T pvec_x = np.reshape(pvec[0], t.shape) pvec_y = np.reshape(pvec[1], t.shape) - x = fit_params_dict['x0'] + fit_params_dict['vx']*dt + self.pi*pvec_x - y = fit_params_dict['y0'] + fit_params_dict['vy']*dt + self.pi*pvec_y + x = fit_params_dict['x0'] + fit_params_dict['vx']*dt + fit_params_dict['pi']*pvec_x + y = fit_params_dict['y0'] + fit_params_dict['vy']*dt + fit_params_dict['pi']*pvec_y return x, y def get_batch_pos_at_time(self, t, x0=[],vx=[], y0=[],vy=[], pi=[], t0=[], x0_err=[],vx_err=[], y0_err=[],vy_err=[], pi_err=[], **kwargs): t_mjd = Time(t, format='decimalyear', scale='utc').mjd - pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA).T + pvec = self.get_parallax_vector(t_mjd).T if hasattr(t, "__len__"): dt = t-t0[:,np.newaxis] x = x0[:,np.newaxis] + dt*vx[:,np.newaxis] + pi[:,np.newaxis]*pvec[0].T @@ -369,7 +385,7 @@ def run_fit(self, t, x, y, xe, ye, t0, weighting='var', params_guess=None): pvec = [self.plx_vector_cached[1][pvec_idxs], self.plx_vector_cached[2][pvec_idxs]] recalc_plx = False if recalc_plx: - pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA).T + pvec = self.get_parallax_vector(t_mjd).T self.plx_vector_cached = [t_mjd, pvec[0], pvec[1]] x_wt, y_wt = self.get_weights(xe,ye, weighting=weighting) def fit_func(t, x0,vx, y0,vy, pi): @@ -399,7 +415,9 @@ def fit_func(t, x0,vx, y0,vy, pi): """ def validate_motion_model_dict(motion_model_dict, startable, default_motion_model): # Collect names of all motion models that might get used. - all_motion_model_names = ['Fixed', default_motion_model] + all_motion_model_names = ['Fixed'] + if default_motion_model is not None: + all_motion_model_names.append(default_motion_model) if 'motion_model_input' in startable.columns: all_motion_model_names += np.unique(startable['motion_model_input']).tolist() if 'motion_model_input' in startable.columns: diff --git a/flystar/plots.py b/flystar/plots.py index 83d759e..61df7c1 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -1064,15 +1064,16 @@ def plot_mag_error(tab): return -def plot_mean_residuals_by_epoch(tab): +def plot_mean_residuals_by_epoch(tab, motion_model_dict={}): """ Plot mean position and magnitude residuals vs. epoch. Note we are plotting the mean( |dx} ) to see the size of the mean residual. """ # Predicted model positions at each epoch + motion_model_dict = motion_model.validate_motion_model_dict(motion_model_dict, tab, None) i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] - xt_mod, yt_mod, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + xt_mod, yt_mod, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], motion_model_dict, allow_alt_models=True) # Residuals dx = tab['x'] - xt_mod @@ -1121,7 +1122,7 @@ def plot_mean_residuals_by_epoch(tab): return -def plot_quiver_residuals_all_epochs(tab, unit='arcsec', scale=None, plotlim=None): +def plot_quiver_residuals_all_epochs(tab, motion_model_dict={}, unit='arcsec', scale=None, plotlim=None): # Keep track of the residuals for averaging. dr_good = np.zeros(len(tab), dtype=float) @@ -1129,8 +1130,9 @@ def plot_quiver_residuals_all_epochs(tab, unit='arcsec', scale=None, plotlim=Non dr_ref = np.zeros(len(tab), dtype=float) n_ref = np.zeros(len(tab), dtype=int) + motion_model_dict = motion_model.validate_motion_model_dict(motion_model_dict, tab, None) i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], motion_model_dict, allow_alt_models=True) for ee in range(tab['x'].shape[1]): xt_mod = xt_mod_all[:,ee] @@ -1187,7 +1189,7 @@ def plot_quiver_residuals_all_epochs(tab, unit='arcsec', scale=None, plotlim=Non return -def plot_quiver_residuals_with_orig_all_epochs(tab, trans_list, unit='arcsec', scale=None, plotlim=None, scale_orig=None, cte_fit=None, mlim=15): +def plot_quiver_residuals_with_orig_all_epochs(tab, trans_list, motion_model_dict={}, unit='arcsec', scale=None, plotlim=None, scale_orig=None, cte_fit=None, mlim=15): # Keep track of the residuals for averaging. dr_good = np.zeros(len(tab), dtype=float) @@ -1195,8 +1197,9 @@ def plot_quiver_residuals_with_orig_all_epochs(tab, trans_list, unit='arcsec', s dr_ref = np.zeros(len(tab), dtype=float) n_ref = np.zeros(len(tab), dtype=int) + motion_model_dict = motion_model.validate_motion_model_dict(motion_model_dict, tab, None) i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], motion_model_dict, allow_alt_models=True) for ee in range(tab['x'].shape[1]): dt = tab['t'][:, ee] - tab['t0'] @@ -1293,7 +1296,7 @@ def plot_quiver_residuals_with_orig_all_epochs(tab, trans_list, unit='arcsec', s return -def plot_mag_scatter_multi_trans_all_epochs(tab_list, trans_list_list, unit='arcsec', scale=None, plotlim=None, scale_orig=None): +def plot_mag_scatter_multi_trans_all_epochs(tab_list, trans_list_list, motion_model_dict={}, unit='arcsec', scale=None, plotlim=None, scale_orig=None): m_t_list = [] x_t_list = [] y_t_list = [] @@ -1306,8 +1309,9 @@ def plot_mag_scatter_multi_trans_all_epochs(tab_list, trans_list_list, unit='arc da_list = [] ntrans = len(tab_list) + motion_model_dict = motion_model.validate_motion_model_dict(motion_model_dict, tab, None) i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], motion_model_dict, allow_alt_models=True) for mm in range(ntrans): tab = tab_list[mm] @@ -1850,7 +1854,7 @@ def plot_quiver_residuals(x_t, y_t, x_ref, y_ref, good_idx, ref_idx, title, return (dx, dy) -def plot_quiver_residuals_magcolor_all_epochs(tab, unit='arcsec', scale=None, plotlim=None, lower_mag=18, upper_mag=13): +def plot_quiver_residuals_magcolor_all_epochs(tab, motion_model_dict={}, unit='arcsec', scale=None, plotlim=None, lower_mag=18, upper_mag=13): # Keep track of the residuals for averaging. dr_good = np.zeros(len(tab), dtype=float) n_good = np.zeros(len(tab), dtype=int) @@ -1860,8 +1864,9 @@ def plot_quiver_residuals_magcolor_all_epochs(tab, unit='arcsec', scale=None, pl idx = np.where((tab['m0'] < lower_mag) & (tab['m0'] > upper_mag))[0] tab = tab[idx] + motion_model_dict = motion_model.validate_motion_model_dict(motion_model_dict, tab, None) i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], motion_model_dict, allow_alt_models=True) for ee in range(tab['x'].shape[1]): dt = tab['t'][:, ee] - tab['t0'] @@ -2159,7 +2164,7 @@ def plot_quiver_residuals_orig_angle_xy(x_t, y_t, x_ref, y_ref, good_idx, ref_id return -def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50, boot_err=False): +def plot_chi2_dist(tab, Ndetect, motion_model_dict={}, xlim=40, n_bins=50, boot_err=False): """ tab = flystar table Ndetect = Number of epochs star detected in @@ -2168,8 +2173,9 @@ def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50, boot_err=False): chi2_y_list = [] fnd_list = [] # Number of non-NaN error measurements + motion_model_dict = motion_model.validate_motion_model_dict(motion_model_dict, tab, None) i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], motion_model_dict, allow_alt_models=True) for ii in range(len(tab)): # Ignore the NaNs @@ -2204,8 +2210,9 @@ def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50, boot_err=False): idx = np.where(fnd == Ndetect)[0] # Fitting position and velocity... so subtract 2 to get Ndof - Ndof = Ndetect - tab['dof'][i_all_detected] - print(i_all_detected) + n_params = np.nanmean(tab['n_params'][idx]) + Ndof = Ndetect - n_params + print(f"Ndof={Ndof}, Ndetect={Ndetect}, Nparams={n_params}") chi2_xaxis = np.linspace(0, xlim, xlim*3) chi2_bins = np.linspace(0, xlim, n_bins) @@ -2237,7 +2244,7 @@ def plot_chi2_dist(tab, Ndetect, xlim=40, n_bins=50, boot_err=False): return -def plot_chi2_dist_per_filter(tab, Ndetect, xlim=40, n_bins=50, filter=None, boot_err=False): +def plot_chi2_dist_per_filter(tab, Ndetect, motion_model_dict={}, xlim=40, n_bins=50, filter=None, boot_err=False): """ tab = flystar table Ndetect = Number of epochs star detected in @@ -2246,8 +2253,9 @@ def plot_chi2_dist_per_filter(tab, Ndetect, xlim=40, n_bins=50, filter=None, boo chi2_y_list = [] fnd_list = [] # Number of non-NaN error measurements + motion_model_dict = motion_model.validate_motion_model_dict(motion_model_dict, tab, None) i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], motion_model_dict, allow_alt_models=True) for ii in range(len(tab)): # Ignore the NaNs @@ -2284,9 +2292,10 @@ def plot_chi2_dist_per_filter(tab, Ndetect, xlim=40, n_bins=50, filter=None, boo idx = np.where(fnd == Ndetect)[0] - # Fitting position and velocity... so subtract 2 to get Ndof - Ndof = Ndetect - tab['dof'][i_all_detected] - print(i_all_detected) + # Fitting position and velocity... so subtract n_params to get Ndof + n_params = np.nanmean(tab['n_params'][idx]) + Ndof = Ndetect - n_params + print(f"Ndof={Ndof}, Ndetect={Ndetect}, Nparams={n_params}") chi2_xaxis = np.linspace(0, xlim, xlim*3) chi2_bins = np.linspace(0, xlim, n_bins) print(x[idx]) @@ -2327,7 +2336,7 @@ def plot_chi2_dist_per_filter(tab, Ndetect, xlim=40, n_bins=50, filter=None, boo return -def plot_chi2_dist_per_epoch(tab, Ndetect, mlim=[14,21], ylim = [-1, 1], target_idx = 0, boot_err=False): +def plot_chi2_dist_per_epoch(tab, Ndetect, motion_model_dict={}, mlim=[14,21], ylim = [-1, 1], target_idx = 0, boot_err=False): """ tab = flystar table Ndetect = Number of epochs star detected in @@ -2340,8 +2349,9 @@ def plot_chi2_dist_per_epoch(tab, Ndetect, mlim=[14,21], ylim = [-1, 1], target_ sigY_arr = np.nan * np.ones((len(tab['xe']), Ndetect)) m_arr = np.nan * np.ones((len(tab['xe']), Ndetect)) + motion_model_dict = motion_model.validate_motion_model_dict(motion_model_dict, tab, None) i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], motion_model_dict, allow_alt_models=True) for ii in range(len(tab['xe'])): # Ignore the NaNs @@ -2649,8 +2659,7 @@ def plot_chi2_dist_mag_per_filter(tab, Ndetect, mlim=40, n_bins=30, xlim=40, fil return -def plot_stars(tab, star_names, NcolMax=2, epoch_array = None, figsize=(15,25), color_time=False, - position_angle=None, RA=None, Dec=None, observer_location='earth', boot_err=False): +def plot_stars(tab, star_names, motion_model_dict={}, NcolMax=2, epoch_array = None, figsize=(15,25), color_time=False, boot_err=False): """ Plot a set of stars positions, flux and residuals over time. @@ -2678,10 +2687,11 @@ def rs(x): x = tab['x0'] y = tab['y0'] r = np.hypot(x, y) + motion_model_dict = motion_model.validate_motion_model_dict(motion_model_dict, tab, None) i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] cont_times = np.arange(np.min(tab['t'][i_all_detected]), np.max(tab['t'][i_all_detected]), 0.01) - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) - xt_cont_all, yt_cont_all, xt_cont_err, yt_cont_err = tab.get_star_positions_at_time(cont_times, allow_alt_models=True) + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], motion_model_dict, allow_alt_models=True) + xt_cont_all, yt_cont_all, xt_cont_err, yt_cont_err = tab.get_star_positions_at_time(cont_times, motion_model_dict, allow_alt_models=True) for i in range(Nstars): starName = star_names[i] @@ -3068,7 +3078,7 @@ def rs(x): return -def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_list = None, +def plot_stars_nfilt(tab, star_names, motion_model_dict={}, NcolMax=2, epoch_array_list = None, color_list = None, figsize=(15,25), color_time=False, resTicRng=None, save_name=None, boot_err=False): """ Plot a set of stars positions, flux and residuals over time. @@ -3084,8 +3094,9 @@ def plot_stars_nfilt(tab, star_names, NcolMax=2, epoch_array_list = None, color_ def rs(x): return x.reshape(len(x)) + motion_model_dict = motion_model.validate_motion_model_dict(motion_model_dict, tab, None) i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], allow_alt_models=True) + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], motion_model_dict, allow_alt_models=True) Nstars = len(star_names) Ncols = 3 * np.min([Nstars, NcolMax]) diff --git a/flystar/startables.py b/flystar/startables.py index 618dba3..aef2bd9 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -825,7 +825,6 @@ def fit_velocity_for_star(self, ss, motion_model_dict, weighting='var', bootstra # Model object mod = motion_model_dict[motion_model_use] - print(mod) fixed_params = [self[par][ss] for par in mod.fixed_param_names] # Fit for the best parameters @@ -887,12 +886,11 @@ def get_star_positions_at_time(self, t, motion_model_dict, allow_alt_models=True # Identify stars with this model & get class idx_0 = np.where(self['motion_model_used']==mm)[0] idx = np.intersect1d(re_calc, idx_0) - modClass = getattr(motion_model, mm) + mod = motion_model_dict[mm] # Set up parameters param_dict = {} for par in motion_model.get_one_motion_model_param_names(mm,with_errors=True,with_fixed=True): param_dict[par] = self[par][idx] - mod = modClass() x[idx],y[idx],xe[idx],ye[idx] = mod.get_batch_pos_at_time(t,**param_dict) return x,y,xe,ye @@ -985,7 +983,8 @@ def fit_velocities_all_detected(self, weighting='var', use_scipy=False, absolute else: return - def shift_reference_frame(self, delta_vx=0.0, delta_vy=0.0, delta_pi=0.0): + def shift_reference_frame(self, delta_vx=0.0, delta_vy=0.0, delta_pi=0.0, + motion_model_dict={}): """ After completing an alignment, shift from your relative reference frame to the absolute frame using either Gaia or a Galactic model. This modified the @@ -1001,6 +1000,7 @@ def shift_reference_frame(self, delta_vx=0.0, delta_vy=0.0, delta_pi=0.0): delta_pi : float, optional parallax shift (as) """ + motion_model_dict = motion_model.validate_motion_model_dict(motion_model_dict, self, None) if delta_vx==0.0 and delta_vy==0.0 and delta_pi==0.0: print("No shifts input, reference frame unchanged.") print("Specify delta_vx, delta_vy, and/or delta_pi to perform a reference frame shift.") @@ -1012,7 +1012,7 @@ def shift_reference_frame(self, delta_vx=0.0, delta_vy=0.0, delta_pi=0.0): if delta_pi!=0.0: t_all = self['t'][np.where(~np.any(np.isnan(self['t']), axis=1))[0][0]] t_mjd = Time(t_all, format='decimalyear', scale='utc').mjd - pvec = parallax.parallax_in_direction() + pvec = motion_model_dict['Parallax'].get_parallax_vector(t_mjd) self['pi'] += delta_pi self['x'] += delta_pi*pvec[:,0] self['y'] += delta_pi*pvec[:,1] From 0c64e5c5a950d539704178766d7298818f12ffe6 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 30 Jul 2025 15:41:34 -0700 Subject: [PATCH 083/124] improve plx caching --- flystar/motion_model.py | 37 ++++++++++++++++++++++--------------- flystar/startables.py | 4 ++-- 2 files changed, 24 insertions(+), 17 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 2af4cae..1a5b6f2 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -333,7 +333,25 @@ def __init__(self, RA, Dec, PA=0.0, obs='earth', **kwargs): return def get_parallax_vector(self, t_mjd): - return parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA) + recalc_plx = True + if self.plx_vector_cached is not None: + if hasattr(t_mjd, "__len__"): + if list(t_mjd) == list(self.plx_vector_cached[0]): + pvec = self.plx_vector_cached[1:] + recalc_plx = False + elif all([t_mjd_i in self.plx_vector_cached[0] for t_mjd_i in t_mjd]): + pvec_idxs = [np.argwhere(self.plx_vector_cached[0]==t_mjd_i)[0][0] for t_mjd_i in t_mjd] + pvec = [self.plx_vector_cached[1][pvec_idxs], self.plx_vector_cached[2][pvec_idxs]] + recalc_plx = False + elif t_mjd in self.plx_vector_cached[0]: + idx = np.where(t_mjd==self.plx_vector_cached[0])[0][0] + pvec = np.array([self.plx_vector_cached[1][idx], self.plx_vector_cached[2][idx]]) + recalc_plx = False + if recalc_plx: + pvec = parallax.parallax_in_direction(self.RA, self.Dec, t_mjd, obsLocation=self.obs, PA=self.PA).T + if hasattr(t_mjd, "__len__"): + self.plx_vector_cached = [t_mjd, pvec[0], pvec[1]] + return pvec def get_pos_at_time(self, fit_params, fixed_params, t): fit_params_dict = dict(zip(self.fitter_param_names, fit_params)) @@ -341,7 +359,7 @@ def get_pos_at_time(self, fit_params, fixed_params, t): dt = t-fixed_params_dict['t0'] t_mjd = Time(t, format='decimalyear', scale='utc').mjd - pvec = self.get_parallax_vector(t_mjd).T + pvec = self.get_parallax_vector(t_mjd) pvec_x = np.reshape(pvec[0], t.shape) pvec_y = np.reshape(pvec[1], t.shape) x = fit_params_dict['x0'] + fit_params_dict['vx']*dt + fit_params_dict['pi']*pvec_x @@ -352,7 +370,7 @@ def get_batch_pos_at_time(self, t, x0=[],vx=[], y0=[],vy=[], pi=[], t0=[], x0_err=[],vx_err=[], y0_err=[],vy_err=[], pi_err=[], **kwargs): t_mjd = Time(t, format='decimalyear', scale='utc').mjd - pvec = self.get_parallax_vector(t_mjd).T + pvec = self.get_parallax_vector(t_mjd) if hasattr(t, "__len__"): dt = t-t0[:,np.newaxis] x = x0[:,np.newaxis] + dt*vx[:,np.newaxis] + pi[:,np.newaxis]*pvec[0].T @@ -375,18 +393,7 @@ def get_batch_pos_at_time(self, t, def run_fit(self, t, x, y, xe, ye, t0, weighting='var', params_guess=None): t_mjd = Time(t, format='decimalyear', scale='utc').mjd - recalc_plx = True - if self.plx_vector_cached is not None: - if list(t_mjd) == list(self.plx_vector_cached[0]): - pvec = self.plx_vector_cached[1:] - recalc_plx = False - elif all([t_mjd_i in self.plx_vector_cached[0] for t_mjd_i in t_mjd]): - pvec_idxs = [np.argwhere(self.plx_vector_cached[0]==t_mjd_i)[0][0] for t_mjd_i in t_mjd] - pvec = [self.plx_vector_cached[1][pvec_idxs], self.plx_vector_cached[2][pvec_idxs]] - recalc_plx = False - if recalc_plx: - pvec = self.get_parallax_vector(t_mjd).T - self.plx_vector_cached = [t_mjd, pvec[0], pvec[1]] + pvec = self.get_parallax_vector(t_mjd) x_wt, y_wt = self.get_weights(xe,ye, weighting=weighting) def fit_func(t, x0,vx, y0,vy, pi): use_t = t[:int(len(t)/2)] diff --git a/flystar/startables.py b/flystar/startables.py index aef2bd9..b0d6164 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -1014,6 +1014,6 @@ def shift_reference_frame(self, delta_vx=0.0, delta_vy=0.0, delta_pi=0.0, t_mjd = Time(t_all, format='decimalyear', scale='utc').mjd pvec = motion_model_dict['Parallax'].get_parallax_vector(t_mjd) self['pi'] += delta_pi - self['x'] += delta_pi*pvec[:,0] - self['y'] += delta_pi*pvec[:,1] + self['x'] += delta_pi*pvec[0] + self['y'] += delta_pi*pvec[1] return From bc57c60526179f2f3e0ea702f60342e9d873be2f Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 7 Aug 2025 12:11:18 -0700 Subject: [PATCH 084/124] fit_velocities_all_detected to motion_model first pass --- flystar/fit_velocity.py | 203 ---------------------------------------- flystar/motion_model.py | 29 +++++- flystar/startables.py | 59 +++++++++--- 3 files changed, 73 insertions(+), 218 deletions(-) delete mode 100755 flystar/fit_velocity.py diff --git a/flystar/fit_velocity.py b/flystar/fit_velocity.py deleted file mode 100755 index 45d55d0..0000000 --- a/flystar/fit_velocity.py +++ /dev/null @@ -1,203 +0,0 @@ -from tqdm import tqdm -import numpy as np -import pandas as pd - -def linear(x, k, b): - return k*x + b - -def linear_fit(x, y, sigma=None, absolute_sigma=True): - """Weighted linear regression (See https://en.wikipedia.org/wiki/Weighted_least_squares#Solution). Recommended for low-dimension, non-degenerate data. Otherwise, please use scipy.curve_fit. - - Parameters - ---------- - x : array-like - x data - y : array-like - y data - sigma : array-like, optional - Weighted by 1/sigma**2. If not provided, weight = 1, by default None - absolute_sigma : bool, optional - If True (default), sigma is used in an absolute sense and the estimated parameter uncertainty reflects these absolute values. If False, only the relative magnitudes of the sigma values matter, by default True - - Returns - ------- - result : dictionary - Dictionary with keys 'slope', 'e_slope', 'intercept', 'e_intercept', and 'chi2' if return_chi2=True. - """ - x = np.array(x) - y = np.array(y) - if sigma is None: - sigma = np.ones_like(x) - else: - sigma = np.array(sigma) - - X = np.vander(x, 2) - W = np.diag(1/sigma**2) - XTWX = X.T @ W @ X - pcov = np.linalg.inv(XTWX) # Covariance Matrix - popt = pcov @ X.T @ W @ y # Linear Solution - perr = np.sqrt(np.diag(pcov)) # Uncertainty of Linear Solution - - residual = y - X @ popt - chi2 = residual.T @ W @ residual - - if not absolute_sigma: - reduced_chi2 = chi2/(len(x) - 2) - perr *= reduced_chi2**0.5 - - result = { - 'slope': popt[0], - 'intercept': popt[1], - 'e_slope': perr[0], - 'e_intercept': perr[1], - 'chi2': chi2 - } - - return result - - -def calc_chi2(x, y, sigma, slope, intercept): - popt = np.array([slope, intercept]) - X = np.vander(x, 2) - W = np.diag(1/sigma**2) - residual = y - X @ popt - return residual.T @ W @ residual - - -def fit_velocity(startable, weighting='var', use_scipy=False, absolute_sigma=True, epoch_cols='all', art_star=False): - """Fit proper motion with weighted linear regression equations (see https://en.wikipedia.org/wiki/Weighted_least_squares#Solution). - Assumes that all data are valid. - - Parameters - ---------- - startable : StarTable - StarTable object - weighting : str, optional - Weighting by variance (1/ye**2) or standard deviation (1/ye), by default 'var' - use_scipy : bool, optional - Use scipy.curve_fit or flystar.fit_velocity.linear_fit, by default False - epoch_cols : str or list of intergers, optional - List of indicies of columns to use. If 'all', use all columns, by default 'all' - art_star : bool, optional - Artificial star catalog or not. If True, use startable['x'][:, epoch_ols, 1] as the location, by default False. - - Returns - ------- - result : pd.DataFrame - Proper motion dataframe with keys vx, vxe, vy, vye, x0, x0e, y0, y0e - - Raises - ------ - ValueError - If weighting is neither 'std' nor 'var' - """ - if weighting not in ['std', 'var']: - raise ValueError(f"Weighting must be either 'std' or 'var', not '{weighting}'.") - if epoch_cols is None: - epoch_cols = np.arange(len(startable.meta['YEARS'])) # use all cols if not specified - - N = len(startable) - vx = np.zeros(N) - vy = np.zeros(N) - vxe = np.zeros(N) - vye = np.zeros(N) - x0 = np.zeros(N) - y0 = np.zeros(N) - x0e = np.zeros(N) - y0e = np.zeros(N) - chi2_vx = np.zeros(N) - chi2_vy = np.zeros(N) - t0 = np.zeros(N) - - time = np.array(startable.meta['YEARS'])[epoch_cols] - - if not art_star: - x_arr = startable['x'][:, epoch_cols] - y_arr = startable['y'][:, epoch_cols] - else: - x_arr = startable['x'][:, epoch_cols, 1] - y_arr = startable['y'][:, epoch_cols, 1] - - xe_arr = startable['xe'][:, epoch_cols] - ye_arr = startable['ye'][:, epoch_cols] - - if weighting=='std': - sigma_x_arr = np.abs(xe_arr)**0.5 - sigma_y_arr = np.abs(ye_arr)**0.5 - elif weighting=='var': - sigma_x_arr = xe_arr - sigma_y_arr = ye_arr - - # For each star - for i in tqdm(range(len(startable))): - x = x_arr[i] - y = y_arr[i] - xe = xe_arr[i] - ye = ye_arr[i] - sigma_x = sigma_x_arr[i] - sigma_y = sigma_y_arr[i] - - t_weight = 1. / np.hypot(xe, ye) - t0[i] = np.average(time, weights=t_weight) - dt = time - t0[i] - - if use_scipy: - p0x = np.array([0., x.mean()]) - p0y = np.array([0., y.mean()]) - - # Use scipy.curve_fit to fit for velocity - vx_opt, vx_cov = curve_fit(linear, dt, x, p0=p0x, sigma=sigma_x, absolute_sigma=absolute_sigma) - vy_opt, vy_cov = curve_fit(linear, dt, y, p0=p0y, sigma=sigma_y, absolute_sigma=absolute_sigma) - - vx[i] = vx_opt[0] - vy[i] = vy_opt[0] - x0[i] = vx_opt[1] - y0[i] = vy_opt[1] - vxe[i], x0e[i] = np.sqrt(vx_cov.diagonal()) - vye[i], y0e[i] = np.sqrt(vy_cov.diagonal()) - chi2_vx[i] = calc_chi2(dt, x, sigma_x, *vx_opt) - chi2_vy[i] = calc_chi2(dt, y, sigma_y, *vy_opt) - - else: - vx_result = linear_fit(dt, x, sigma=sigma_x, absolute_sigma=absolute_sigma) - vy_result = linear_fit(dt, y, sigma=sigma_y, absolute_sigma=absolute_sigma) - - vx[i] = vx_result['slope'] - vxe[i] = vx_result['e_slope'] - x0[i] = vx_result['intercept'] - x0e[i] = vx_result['e_intercept'] - chi2_vx[i] = vx_result['chi2'] - - vy[i] = vy_result['slope'] - vye[i] = vy_result['e_slope'] - y0[i] = vy_result['intercept'] - y0e[i] = vy_result['e_intercept'] - chi2_vy[i] = vy_result['chi2'] - - result = pd.DataFrame({ - 'vx': vx, 'vy': vy, - 'vxe': vxe, 'vye': vye, - 'x0': x0, 'y0': y0, - 'x0e': x0e, 'y0e': y0e, - 'chi2_vx': chi2_vx, - 'chi2_vy': chi2_vy, - 't0': t0 - }) - return result - - -# Test -if __name__=='__main__': - from scipy.optimize import curve_fit - - x = np.array([1,2,3,4]) - y = np.array([1,2,5,6]) - sigma = np.array([.4,.2,.1,.3]) - - for absolute_sigma in [True, False]: - result = linear_fit(x, y, sigma=sigma, absolute_sigma=absolute_sigma) - popt, pcov = curve_fit(linear, x, y, sigma=sigma, absolute_sigma=absolute_sigma) - perr = np.sqrt(np.diag(pcov)) - print(f'Absolute Sigma = {absolute_sigma}') - print(f"linear_fit: slope = {result['slope']:.3f} ± {result['e_slope']:.3f}, intercept = {result['intercept']:.3f} ± {result['e_intercept']:.3f}, chi2={result['chi2']:.3f}") - print(f'curve_fit: slope = {popt[0]:.3f} ± {perr[0]:.3f}, intercept = {popt[1]:.3f} ± {perr[1]:.3f}, chi2={calc_chi2(x, y, sigma, *popt):.3f}\n') \ No newline at end of file diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 1a5b6f2..2429a0b 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -97,7 +97,6 @@ def get_chi2(self,fit_params,fixed_params, t,x,y,xe,ye,reduced=False): Get the chi^2 value for the current MM and the input data. """ - # TODO: fix this function - no more get_pos_at_time x_pred,y_pred = self.get_pos_at_time(fit_params,fixed_params, t) chi2x = np.sum((x-x_pred)**2 / xe**2) chi2y = np.sum((y-y_pred)**2 / ye**2) @@ -227,15 +226,37 @@ def run_fit(self, t, x, y, xe, ye, t0, weighting='var', params_guess=None): if self.use_scipy: def linear(t, c0, c1): return c0 + c1*t - x_opt, x_cov = curve_fit(linear, dt, x, p0=np.array(params_guess[:2]), sigma=1/np.sqrt(x_wt), absolute_sigma=True) - y_opt, y_cov = curve_fit(linear, dt, y, p0=np.array(params_guess[2:]), sigma=1/np.sqrt(y_wt), absolute_sigma=True) + x_opt, x_cov = curve_fit(linear, dt, x, p0=np.array(params_guess[:2]), sigma=1/np.sqrt(x_wt), absolute_sigma=self.absolute_sigma) + y_opt, y_cov = curve_fit(linear, dt, y, p0=np.array(params_guess[2:]), sigma=1/np.sqrt(y_wt), absolute_sigma=self.absolute_sigma) x0, vx = x_opt y0, vy = y_opt x0e, vxe = np.sqrt(x_cov.diagonal()) y0e, vye = np.sqrt(y_cov.diagonal()) x0e, vxe, y0e, vye = self.scale_errors([x0e, vxe, y0e, vye], weighting=weighting) else: - raise ValueError("Option use_scipy=False is not yet implemented for the Linear motion model.") + # Use https://en.wikipedia.org/wiki/Weighted_least_squares#Solution scheme + x = np.array(x) + y = np.array(y) + t = np.array(t) + X_mat_t = np.vander(t, 2) + # x calculation + W_mat_x = np.diag(x_wt) + XTWX_mat_x = X_mat_t.T @ W_mat_x @ X_mat_t + pcov_x = np.linalg.inv(XTWX_mat_x) # Covariance Matrix + popt_x = pcov_x @ X_mat_t.T @ W_mat_x @ x # Linear Solution + perr_x = np.sqrt(np.diag(pcov_x)) # Uncertainty of Linear Solution + # y calculation + W_mat_y = np.diag(y_wt) + XTWX_mat_y = X_mat_t.T @ W_mat_y @ X_mat_t + pcov_y = np.linalg.inv(XTWX_mat_y) # Covariance Matrix + popt_y = pcov_y @ X_mat_t.T @ W_mat_y @ y # Linear Solution + perr_y = np.sqrt(np.diag(pcov_y)) # Uncertainty of Linear Solution + # prepare values to return + x0, vx = popt_x[1], popt_x[0] + y0, vy = popt_y[1], popt_y[0] + x0e, vxe = perr_x[1], perr_x[0] + y0e, vye = perr_y[1], perr_y[0] + x0e, vxe, y0e, vye = self.scale_errors([x0e, vxe, y0e, vye], weighting=weighting) params = [x0, vx, y0, vy] param_errors = [x0e, vxe, y0e, vye] diff --git a/flystar/startables.py b/flystar/startables.py index b0d6164..ce7e5bf 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -2,7 +2,7 @@ from astropy.stats import sigma_clipping from astropy.time import Time from scipy.optimize import curve_fit -from flystar.fit_velocity import linear_fit, calc_chi2, linear, fit_velocity +#from flystar.fit_velocity import linear_fit, calc_chi2, linear, fit_velocity from tqdm import tqdm import numpy as np import warnings @@ -10,7 +10,7 @@ import pdb import time import copy -from flystar import motion_model, parallax +from flystar import motion_model class StarTable(Table): """ @@ -896,18 +896,16 @@ def get_star_positions_at_time(self, t, motion_model_dict, allow_alt_models=True return x,y,xe,ye - def fit_velocities_all_detected(self, weighting='var', use_scipy=False, absolute_sigma=False, epoch_cols='all', mask_val=None, art_star=False, return_result=False): + def fit_velocities_all_detected(self, motion_model_to_fit, weighting='var', epoch_cols='all', mask_val=None, art_star=False, return_result=False): """Fit velocities for stars detected in all epochs specified by epoch_cols. Criterion: xe/ye error > 0 and finite, x/y not masked. Parameters ---------- + motion_model_to_fit : MotionModel + motion model object to use for fitting all stars weighting : str, optional Variance weighting('var') or standard deviation weighting ('std'), by default 'var' - use_scipy : bool, optional - Use scipy.curve_fit or flystar.fit_velocity.fit_velocity, by default False - absolute_sigma : bool, optional - Absolute sigma or rescaled sigma, by default False epoch_cols : str or list of intergers, optional List of epoch column indices used for fitting velocity, by default 'all' mask_val : float, optional @@ -954,12 +952,51 @@ def fit_velocities_all_detected(self, weighting='var', use_scipy=False, absolute else: detected_in_all_epochs = np.logical_and(valid_xe, valid_ye) + # START FORMER FIT VELOCITY FUNCITON + if epoch_cols is None: + epoch_cols = np.arange(len(startable.meta['YEARS'])) # use all cols if not specified` + + N = len(startable) + fit_params = motion_model_to_fit.fitter_param_names + param_data = {p: np.zeros(N) for p in fit_params} + param_data.update({p+'_err': np.zeros(N) for p in fit_params}) + param_data.update({p: np.zeros(N) for p in motion_model_to_fit.fixed_param_names}) + param_data['chi2_x'] = np.zeros(N) + param_data['chi2_y'] = np.zeros(N) + + time = np.array(startable.meta['YEARS'])[epoch_cols] + + if not art_star: + x_arr = startable['x'][:, epoch_cols] + y_arr = startable['y'][:, epoch_cols] + else: + x_arr = startable['x'][:, epoch_cols, 1] + y_arr = startable['y'][:, epoch_cols, 1] - # Fit velocities - vel_result = fit_velocity(self[detected_in_all_epochs], weighting=weighting, use_scipy=use_scipy, - absolute_sigma=absolute_sigma, epoch_cols=epoch_cols, art_star=art_star) - vel_result = Table.from_pandas(vel_result) + xe_arr = startable['xe'][:, epoch_cols] + ye_arr = startable['ye'][:, epoch_cols] + + # For each star + for i in tqdm(range(len(startable))): + x = x_arr[i] + y = y_arr[i] + xe = xe_arr[i] + ye = ye_arr[i] + t0 = np.average(time, weights=1. / np.hypot(xe, ye)) + + # Run fit and record results + params, param_errs = motion_model_to_fit.fit_motion_model(time, x, y, xe, ye, t0, weighting=weighting) + if 't0' in motion_model_to_fit.fixed_param_names: + param_data['t0'][i] = t0 + for j, param in fit_params: + param_data[param][i] = params[j] + param_data[param+'_err'][i] = param_errs[j] + chi2x, chi2y = motion_model_to_fit.get_chi2([params], [t0], time, x, y, xe, ye) + param_data['chi2_x'][i] = chi2x + param_data['chi2_y'][i] = chi2y + vel_result = Table.from_pandas(pd.DataFrame(param_data)) + # END FUNCTION # Add n_vfit n_fit = len(epoch_cols) From f73d9c50ae0f155fbc85c759afda6e8389531300 Mon Sep 17 00:00:00 2001 From: Lingfeng Wei Date: Thu, 7 Aug 2025 16:32:14 -0700 Subject: [PATCH 085/124] Added test catalog for testing linear models --- flystar/tests/test_linear_vel.fits | 2911 ++++++++++++++++++++++++++++ 1 file changed, 2911 insertions(+) create mode 100644 flystar/tests/test_linear_vel.fits diff --git a/flystar/tests/test_linear_vel.fits b/flystar/tests/test_linear_vel.fits new file mode 100644 index 0000000..ae56198 --- /dev/null +++ b/flystar/tests/test_linear_vel.fits @@ -0,0 +1,2911 @@ +SIMPLE = T / conforms to FITS standard BITPIX = 8 / array data type NAXIS = 0 / number of array dimensions EXTEND = T END XTENSION= 'BINTABLE' / binary table extension BITPIX = 8 / array data type NAXIS = 2 / number of array dimensions NAXIS1 = 632 / length of dimension 1 NAXIS2 = 2000 / length of dimension 2 PCOUNT = 0 / number of group parameters GCOUNT = 1 / number of groups TFIELDS = 21 / number of table fields TTYPE1 = 'name ' TFORM1 = 'K ' TTYPE2 = 'x ' TFORM2 = '12D ' TDIM2 = '(2,6) ' TTYPE3 = 'y ' TFORM3 = '12D ' TDIM3 = '(2,6) ' TTYPE4 = 'm ' TFORM4 = '12D ' TDIM4 = '(2,6) ' TTYPE5 = 'xe ' TFORM5 = '6D ' TDIM5 = '(6) ' TTYPE6 = 'ye ' TFORM6 = '6D ' TDIM6 = '(6) ' TTYPE7 = 'me ' TFORM7 = '6D ' TDIM7 = '(6) ' TTYPE8 = 'n ' TFORM8 = '6D ' TDIM8 = '(6) ' TTYPE9 = 'det ' TFORM9 = '6D ' TDIM9 = '(6) ' TTYPE10 = 'vx ' TFORM10 = 'D ' TTYPE11 = 'vy ' TFORM11 = 'D ' TTYPE12 = 'vxe ' TFORM12 = 'D ' TTYPE13 = 'vye ' TFORM13 = 'D ' TTYPE14 = 'x0 ' TFORM14 = 'D ' TTYPE15 = 'y0 ' TFORM15 = 'D ' TTYPE16 = 'x0e ' TFORM16 = 'D ' TTYPE17 = 'y0e ' TFORM17 = 'D ' TTYPE18 = 'chi2_vx ' TFORM18 = 'D ' TTYPE19 = 'chi2_vy ' TFORM19 = 'D ' TTYPE20 = 't0 ' TFORM20 = 'D ' TTYPE21 = 'n_vfit ' TFORM21 = 'D ' EPNAMES = '2005_F814W_F1' EPNAMES = '2010_F125W_F3' EPNAMES = '2010_F139M_F2' EPNAMES = '2010_F160W_F1' EPNAMES = '2013_F160W_F1' EPNAMES = '2015_F160W_F1' ZPOINTS = 32.6783 ZPOINTS = 25.2305 ZPOINTS = 23.2835 ZPOINTS = 24.5698 ZPOINTS = 24.5698 ZPOINTS = 24.5698 YEARS = 2005.485 YEARS = 2010.652 YEARS = 2010.652 YEARS = 2010.652 YEARS = 2013.199 YEARS = 2015.148 HIERARCH DATE PRODUCED = '2025-06-30' HIERARCH INSTRUMENT = 'ACSWFC ' HIERARCH INSTRUMENT = 'WFC3IR ' HIERARCH INSTRUMENT = 'WFC3IR ' HIERARCH INSTRUMENT = 'WFC3IR ' HIERARCH INSTRUMENT = 'WFC3IR ' HIERARCH INSTRUMENT = 'WFC3IR ' END @Ÿ ˆ1&éy@Ÿ ›c+Ø(@Ÿ ˆ1&éy@Ÿ “4U‡*@Ÿ ˆ1&éy@Ÿ ¥ÆàOS@Ÿ ˆ1&éy@Ÿ…ÍÅ•Ü@Ÿ ˆ1&éy@Ÿ èÁ Î!@Ÿ ˆ1&éy@Ÿ]H/Ò@¢nzáG®@¢ns2ph@¢nzáG®@¢nˆ:ötä@¢nzáG®@¢mÐüùI±@¢nzáG®@¢mÓÐùòm@¢nzáG®@¢nbö3›@¢nzáG®@¢nsþ¤ÿŠ@8‚ò䎊@8m¥1›Š@4›¥ãSø@3¹Ã!dÏÎ@3š~ùÛ"Ñ@3Q@䩤@2èè§æ›@2h4¥àûZ@2èè§æ›@2•ÄŠÉRd@2èè§æ›@2–&îEK?¤hja¢ÖQ?¤ƒ´Æ*àä?¢iœy‘Ï?ÁÛÆÀï?» +Ld¢?²OU=°6i?¿/nI|Áâ?˜Š·¤‰ÿ?•`«²lñ??ºþ!æàg?Àî’”ï '?»Ï‡Ê1ñ?¶å¿#ý ?–ãjo¼ð?ƒ /±‘OÈ?‘‰©Þ¥e?£ü.Eôv?£ì¶Ñ [\@@"@@"@4@.?ð?ð?ð?ð?ð?ð?“EkŸ€?m¥•oÜ?zÁ•ºS ?œT 8O@ŸËÌÃ@¢n?ð/Ç? ? Csù?¹9wZe`?öª3#õ¶ì@ú溦z@ŸkøªÍ%>@@¤®`Ä›¥ã@¤®\¬1'@¤®`Ä›¥ã@¤®Q4êK@¤®`Ä›¥ã@¤®Mw1Ä@¤®`Ä›¥ã@¤®G¯·é@¤®`Ä›¥ã@¤®:6âë@¤®`Ä›¥ã@¤®4¼j~ú@ÛŠ=p£×@ÛŽV“@ÛŠ=p£×@Û{çl‹D@ÛŠ=p£×@Ûž¸Që…@ÛŠ=p£×@ÛTÉ…ð@ÛŠ=p£×@Û™b¶®@ÛŠ=p£×@ÛÌcñA@6=:’£@6:ÇË)^@4 í‘hr°@4SŽóMj@3ÒÐå`A‰@3ÕÂ\(ö@3._oÒ @3:¦L/ƒ|@3._oÒ @3BëC,¦@3._oÒ @3GÛô‡ü¹?‚á²Olºü?—.‰†5¸?™À‘öô{?™d`ÝXpœ?¨ÇÍµá ›?«Ú>˜¯;Õ?€‚ñêã ?™>%?›ÿµŽ:Þç?Ò–‚h±n?¤|Å9.)?¢¢@ ~?¥ +½ƒBÍ?¤7lyÎ\?¦Jê鞤à?’J×ñf?¡‘8²™ç?ÉJ6Л@@@@@,@(?ð?ð?ð?ð?ð?ð¿€ùC·Ü¿&óÐÔ ?*2iÛ‚A?Yé ˜~õ±@¤®OûÄZ@ÛŒ­˜c¦?DŸ²Ï?t¢NÔù'p?{«QÂ( ñ?ê™ú׺Â@Ÿbn{„Ø@@ª¦Ù‡+Á.„€@ª¦Ù‡+Á.„€@ª¦Ù‡+Á.„€@ª¦Ù‡+Á.„€@ª¦Ù‡+@ª¥Ù¦µ @ª¦Ù‡+@ª¤Àù kº@“(6E¡ÊÁÁ.„€@“(6E¡ÊÁÁ.„€@“(6E¡ÊÁÁ.„€@“(6E¡ÊÁÁ.„€@“(6E¡ÊÁ@“)¸Që…@“(6E¡ÊÁ@“!’ˆÎp<@8«µsê´Á.„>¤µÜÆ@4›¥ãSøÁ.„M‰ûçm@3€å`A‰7Á.„QnÙ‡@2æYJôðØÁ.„NÜC,¥@2æYJôðØ@2üú¬Ùè>@2æYJôðØ@1E2a|Ú@8J¨@8#˜@8¾:@8 >+?¥B¦­xT?Ég{ª£=@8J¨@8Î÷@8i§@8Å?¶VYkøƒ ?ÕŠuÝû@8p÷@8 * @8p÷@8¶?±éŽäþZ?·™Ý\í@@ ?ð?ðøøøøøøøøøøøø@­ÔzáG®@­ÏŸ¾w@­ÔzáG®@­ÏùrGF@­ÔzáG®@­Ûµsì@­ÔzáG®@­Ù=Ùb@­ÔzáG®@­Õ*™0@­ÔzáG®@­×Xâ@¨Õ·KƧð@¨Õ¼(õÂŽ@¨Õ·KƧð@¨ÕÄÂø7¶@¨Õ·KƧð@¨Õ·Xâ@¨Õ·KƧð@¨Õ·Á½¥@¨Õ·KƧð@¨Õ¶z˜@¨Õ·KƧð@¨Õ¸}¿H@8£g ù l@8£þ\‘ÑN@4¡hr° Ä@4§§†Â&€@4"-V@4*Ížƒä&@3B‚@·€5@3GKƧïž@3B‚@·€5@3GÛô‡ü¹@3B‚@·€5@3H´9Xb?š•§q!U?“+ÄWè? ¼¸](Þs?–¼A2xý?™¼wX¬?—>æV¡¶$?¨TU‚?˜[Gú,Ã?¢ðÒŒîI?œ¾,#“t¿?šs°Àãª?“ù|ö[ÿz?žþÓ–O_ö?“[ ·S?“ e?‘ñZa7Þ?“ÌUõÎs¼?ùDâΊ@@@@@*@(?ð?ð?ð?ð?ð?ð?VM²¿B“—x?QÔ¬•y!?B„ex.Œ@­ÕðW.V@¨Õ¸A£A?nçÉ¢f?[ƒç·~?Êéëu?œã+€\…t@ŸoF»5‹i@@¦¤E¸Qì@¦¤9RÒ4ë@¦¤E¸Qì@¦¤G2íì‚@¦¤E¸Qì@¦¤?'-Š9@¦¤E¸Qì@¦¤D›qN@¦¤E¸Qì@¦¤D †¶ï@¦¤E¸Qì@¦¤FÈöWÅ@œ/j~ùÛ#@œ/¨,‚ˆl@œ/j~ùÛ#@œ/iÍ3ߢ@œ/j~ùÛ#@œ/qjK>h@œ/j~ùÛ#@œ/fì¤X@œ/j~ùÛ#@œ/m“·*@œ/j~ùÛ#@œ/u½AªŽ@8£g ù l@8Ãu·¾”@2ør° Äœ@2ùQU|¼Ý@2gKƧïž@2lÂ7À6@1³&Á½¥@1¶ "Áª@1³&Á½¥@1´[ÞÎ@1³&Á½¥@1³} õt?„Ú¢Ó¯?ÿýÑí£œ?’b™ r}»?‹ÊN[×ßx?ó}Ê,AÞ?ñ ëÞJÑ?©¹ûP*i?’6 £Ð k?‘Àƒ¹ ZU?1ì«O}?Ë=еê?‘z¦p»àY?“iÓ èâ¨?V0qRŽi?Š@&àpp?…Ñ?øˆ~Þ?‡øÇãzA?‰Ad¾¬ä`@@ @&@"@&@.?ð?ð?ð?ð?ð?ð?gy—G{¿G;TŸŠ?DOúü­Ý?n@Ù¨3@¦¤C{y"E@œ/p4}pE?g j¯Ë?Öƒ$,¼?ÐgŒ*©âu?ù«8¬Ì·Ê@ŸoÊ›¯œÿ@@§íVÁ.„€@§íV@§Ü»fâ@§íV@§é…¤µÜÆ@3ã÷ÎÙ‡@3µÑ¹ wC@2ÐA‰7KÇ@2Õð……Ï@2(è§æ›@2ìD¦R@2(è§æ›@2÷Ñ4¢Ñ@2(è§æ›@2":>F¸f@8J¨?¡uPÖ„ +?ŸÎ¿}ž?“Í]9tã? ¦fN= ?´â‘wÒp@8J¨?Áo¨!ȼØ?¡@½²;ö?¡<ÜA´lª?žbÑõÐ:u?‡¾¥°Š@8p÷?‘ÕJ­Õø ?“{˜x-â’?“œ¢ÿC×?˜-”Aô?“”­ál­@(@&@&@3@0?ð?ð?ð?ð?ðøøøøøøøøøøøø@©¢Ñë…¸@©¢Òn—P@©¢Ñë…¸@©¢ÓüPG@©¢Ñë…¸@©¢Òñ©ûæ@©¢Ñë…¸@©¢ÔSŽóL@©¢Ñë…¸@©¢Ò-V@©¢Ñë…¸@©¢ÑÑN;Í@¦Õ~ùÛ"Ñ@¦Õ;dZ@¦Õ~ùÛ"Ñ@¦Õ€·€4o@¦Õ~ùÛ"Ñ@¦ÕØ­«Ÿ@¦Õ~ùÛ"Ñ@¦Õ€@¦Õ~ùÛ"Ñ@¦Õ!-w2@¦Õ~ùÛ"Ñ@¦ÕØ­«Ÿ@4T xFÜ@4S¼ÓZ…ˆ@2#÷ÎÙ‡@2&µ '»@0éÛ"Ðå`@0ë"Ðå`B@0‚@·€5@0Äýó¶E¢@0‚@·€5@0Ä÷eýŠÛ@0‚@·€5@0ÄêJŒM?}Ñ¿ž,?‘ ·èe?‘G¿yÛ?ï?‹¬àÌ’Ç?‘˜¯ +`É?‘•S‚üJ?|öOÿÝ?“[¡ŽuœÙ?ÙšlqùÚ?Níú¾?‘Ð¥uvý)­ü?¼¦ @?3fÍÍÅ-? +]¯ÔD@©¢Ò°ÇÇ´@¦ÕxnÚ@?SB!ÒÄ?8FîÌâ°?²Ø¼xqž ?|ÜsþÆ]Þ@ŸfÅžV@@¡ùàÄ›¥ã@¡ûF$Ý/@¡ùàÄ›¥ã@¡úC¼ÓZ†@¡ùàÄ›¥ã@¡úFÁ½¥@¡ùàÄ›¥ã@¡úrˆÎp;@¡ùàÄ›¥ã@¡úéDg8@¡ùàÄ›¥ã@¡úM:’£@¬•=p£× +@¬””¼j~ú@¬•=p£× +@¬•<í‘hs@¬•=p£× +@¬•<]cˆf@¬•=p£× +@¬•3 àÞÔ@¬•=p£× +@¬•æ1ø¡@¬•=p£× +@¬•!TÉ…ñ@87â‚@·€@7†“t¼@2žÙ‡+@2z…‡“ݘ@24“t¼j@2ò{²þÆ@1p–»˜Çã@1<]cˆe•@1p–»˜Çã@1"ø7´¢4@1p–»˜Çã@1-ã¼Ó[?õp·÷ÜÊ?¸ëgUêá?¹y(eM+?–àa¦vf¤µÜÆ@4c÷ÎÙ‡Á.„M‰ûçm@31‰7KƨÁ.„QnÙ‡@3G ù kºÁ.„NÜC,¥@3G ù kºÁ.„NÜC,¥@3G ù kºÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø +@¨;ì‹C•@¨;ø=ÁLº@¨;ì‹C•@¨;éê=Õ~@¨;ì‹C•@¨;ìQbç@¨;ì‹C•@¨;ì^˜Ê·@¨;ì‹C•@¨;í’ŸÇ@¨;ì‹C•@¨;í À@“Êœ¬1'@“Ê•Á¡e´@“Êœ¬1'@“Ê—•F˜o@“Êœ¬1'@“Êœ¨Z +l@“Êœ¬1'@“ÊŸ-fU…@“Êœ¬1'@“ʦ‡À¨@“Êœ¬1'@“Ê MÁ±@7õS&Á¾@7üvU÷@3k¥ãS÷Ï@3nesg'à@2Õ`A‰7L@2Ô6‰çù@2 ¿±[W?@2¬†ù,$@2 ¿±[W?@22Š¥•P@2 ¿±[W?@2 Tœn?}x—™C@R†$Ý/@RuÂ\(@R†$Ý/@R;µsë@R†$Ý/@R0ØDÐ@7í¥œàvÁ.„>¤µÜÆ@4GÎÙ‡+@43Ãa@N@4~ùÛ"Ñ@3çškP°ò@2ëxFÜ^@2á–R½<6@2ëxFÜ^@2êŒL˜_@2ëxFÜ^@2ëÓÃa@@8J¨?¤5‚O}Ó?Ï^sx?¤¥¶‰Ió,?¢L!ñ{©?™ÊU¹Á A@8J¨?i½ÆÝCv?¡z/=–ü?¢¯ÄÕ¨E­?¤•éõ9ð?¨­l÷º Ý@8p÷?Ÿ ‰$FÓ)?¾ï€SÓÌ?¦D'ôö?›˜tgië? ¦å_¹@@@@,@*?ð?ð?ð?ð?ðøøøøøøøøøøøø @¦1®zá@¦1®zá@¦1®zá@¦1 ^ž @¦1®zá@¦1RT`«@¦1®zá@¦1®zá@¦1®zá@¦1ï²-@¦1®zá@¦1l‹C–@¬ƒ« Iº@¬ƒªÀƒp@¬ƒ« Iº@¬ƒªŒL˜@¬ƒ« Iº@¬ƒ« I¹@¬ƒ« Iº@¬ƒªW§†Á@¬ƒ« Iº@¬ƒ«Æ§ïž@¬ƒ« Iº@¬ƒªçÕfÏ@4`ØDЩ@4`ªdÂø7@1i‡+ @1iÇy¦µ @1,j~ùÛ#@1-V”@0O „M@0·éùr@0O „M@0±[W>¬@0O „M@0v_Ø­¬?|¬Çëý ?x°ºà1?‘©ŠÕ ·Ñ?ŒªèkÜ?‘EÉ@Ú?‘C!ƒžÈ?|öOÿÝ?’Q_Ú¸FN?‘F·ˆN ?Œþ%å_D?‚˜YªüÏF?ƒƒQçÐ(?‡×7°º?‡×7°º@@@@@*@,?ð?ð?ð?ð?ð?ð¾àoùX?Ýx?Iç·9lÅ?Òoc2Ðï@¦1¬ƒu¹@¬ƒªåum ?'!·Å—Ã?@(6µ1Ú…?\^s1Ȧé?Š7C…&ð†@ŸfÃZ| @ @¯@ +=p¤@¯@y%¦Õ@¯@ +=p¤@¯@¬2@¯@ +=p¤@¯@ÜÆ?@¯@ +=p¤@¯@ŽóMj@¯@ +=p¤@¯@§†Â(@¯@ +=p¤@¯@z–@œ{>vÈ´9@œ{>ùÛ"Ñ@œ{>vÈ´9@œ{DêJŒ@œ{>vÈ´9@œ{D›¥ãT@œ{>vÈ´9@œ{B&€I@œ{>vÈ´9@œ{BÃÉîË@œ{>vÈ´9@œ{B&€J@4kµsê´@4kêk50@2J^5?|í@2K…¸Që@2 "Ðå`B@2 Oß;dZ@1xDЩ*@1z¹õY³Ñ@1xDЩ*@1yXbMÓ@1xDЩ*@1yÎ_oÒ?}x—™ZÌw?…<ò N ?гá‡}?Œ8¸wx¯@@@@@(@,?ð?ð?ð?ð?ð?ð¿5ªžð?:Á aÀ?@ŠÄ*óîz?º)ç¹@¯@€;_@œ{@Ê%;?`£‚Dµ?7¦$%¥+?ʾ[&+@8Iç@8Ù?†‡+ Iº@8Î÷@8i§@8Å@8S@8û—?˜s5r–¹@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@§EKƧïž@§EQ&éxÔ@§EKƧïžÁ.„€@§EKƧïžÁ.„€@§EKƧïžÁ.„€@§EKƧïžÁ.„€@§EKƧïžÁ.„€@¥êúáG®@¥êø“t¼j@¥êúáG®Á.„€@¥êúáG®Á.„€@¥êúáG®Á.„€@¥êúáG®Á.„€@¥êúáG®Á.„€@7 ØDЩ@7 +¬Ùè>B@3 í‘hr°Á.„M‰ûçm@2€å`A‰7Á.„QnÙ‡@1‘Þi­BÄÁ.„NÜC,¥@1‘Þi­BÄÁ.„NÜC,¥@1‘Þi­BÄÁ.„NÜC,¥?1·†Æjñ@8#˜@8¾:@8 >+@8Iç@8Ù?”¼íÒh?@8Î÷@8i§@8Å@8S@8û—?Úæ5BZ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@®:ŽV“Á.„€@®:ŽV“@®:”`ªdÃ@®:ŽV“@®:’•éá²@®:ŽV“@®:šÔ,<Ÿ@®:ŽV“@®:–ð¹@®:ŽV“@®:’•éá°@£$Ý/Á.„€@£$Ý/@£ŒèõÂ\@£$Ý/@£ŒõÂ\)@£$Ý/@£Œ½¿HÌ@£$Ý/@£ŒÝ²-V@£$Ý/@£ŒÈ§æ›@8Hè§æÁ.„>¤µÜÆ@3n5?|í‘@3d xFÜ@3²-V@3 [À7@2Öý!ÿ.I@2»jçÕfÏ@2Öý!ÿ.I@2·ü¹#¢@2Öý!ÿ.I@2º#9Àëî@8J¨?›úV˜[u9?‘–”«ëó?œ¦]`úæ? k‚ˆŸ;æ?™ÊU¹Á A@8J¨?ª´˜lV±°?šJ‘ÍÒÁ?»5;7Ä»M?¹ê®Q•Ò?»·ÕAû8D@8p÷?ŽOv_Ø­«?† + Ðló]?‡v¯ªIì?”ø™¾?¤ËÜþgì“@@@@,@,?ð?ð?ð?ð?ðøøøøøøøøøøøø@®þ3¶E¡Ë@®þ/ß;dZ@®þ3¶E¡Ë@®þ5Â\)@®þ3¶E¡Ë@®þ33332@®þ3¶E¡Ë@®þ3¶E¡Ë@®þ3¶E¡Ë@®þ3œ¾à@®þ3¶E¡Ë@®þ4!-w@£E1&éxÕ@£E.V“@£E1&éxÕ@£E2¼£@£E1&éxÕ@£E3©*0U@£E1&éxÕ@£E49Xb@£E1&éxÕ@£E3×Ûõ@£E1&éxÕ@£E8­«ŸW@6ý:’£@6ø†YJôñ@1û Iº^@1ù³Ð|„¶@1iÛ"Ðå`@1iŒ~($ @0‚@·€5@0ÂZîcŠ@0‚@·€5@0ÂGE8ï5@0‚@·€5@0¿¾vÈ´:?¦NIÉ®š?ÎÁ¯‰t0?‘¶å¤wk½?Œ‚èõЊ?‘Dj?‘#†»{׈?”¼íÒh??“í +Âô‚?‘}7ˆ.Ñ?‘M –=?‘+ùÔ!½‹?‘ ‡#é +´?¥¤Pà7?c I??…/‡ÙX·³?ƒ­=aÊw%?‡gϵ’õ?ˆ +¿„r©Ý@@@@@(@$?ð?ð?ð?ð?ð?ð?@%+sT?^> +3F?5?Ód/?BõZƦ@®þ3ƒëñõ@£E4q¿¨õ?I\Iñ;Œ?_)T¯`l¯?Ž:õ•{÷§?¸RÅ«\k@Ÿo£´y@@®Û©xÔýô@®Û©7Kƨ@®Û©xÔýô@®Û¯*Á…/@®Û©xÔýô@®Ün<ºÃZ@®Û©xÔýô@®Û¬‘™•u@®Û©xÔýô@®Û¨0Ñ/@®Û©xÔýô@®Û¥Íë»4@œ™™™™š@œš¬1@œ™™™™š@œ– “ÒÄ@œ™™™™š@œŽæì¾@œ™™™™š@œ›I]غ@œ™™™™š@œšœr@œ™™™™š@œ£ÀÑÓä@5:qÞi­C@5:’£S&@1J^5?|í@1žŠp}&Þ@0¾V“u@0íâJé×@0zÔ,<ží@0àW÷R#@0zÔ,<ží@0zãoõ Ö@0zÔ,<ží@0{85;‡÷?~ì“?ÕÒJ?Ïk…¼_?‘ÛåÅ?Ç?ŒIa‰UU?‘ ¯ö`*?¸gèïWœ?|Ñb×¶@?’<ð/Oí?„•à?^c¨gÖ5?‘´ _®?Oâ2¯Ö;?‚ÿÀ_~Š?Œ¬2aà?ƒ]nx+@8Iç@8Ù?‘ɱb)Q@8Î÷@8i§@8Å@8S@8û—?Äþ`ÈÿïS@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@ªbƒ•%@ªb„›¥ãT@ªbƒ•%@ªb„ÜucÕ@ªbƒ•%@ªb„¸œ@ªbƒ•%@ªb„ß©*Ä@ªbƒ•%@ªbƒZVn@ªbƒ•%@ªbƒ)o•U@™®µ?|í‘@™®¶E¡ÊÂ@™®µ?|í‘@™®µÌ¤«@™®µ?|í‘@™®µÃËéH@™®µ?|í‘@™®¶æºûq@™®µ?|í‘@™®¸~=ÂÌ@™®µ?|í‘@™®¸¢î‘@4 xFÜ@4ŸU›=@0&‡+ J@0&?Ü1’@/XÔýó¶F@/W¹Iô@.(Û‹¬q @.(_Œ÷n @.(Û‹¬q @.(ºÇË*@.(Û‹¬q @.(&°ÚI?}@T˜ÁÎ¥?ÜnøÃ!?‘Ûø÷BÉ?‹ÁšŸ™I?ëF BØ?Â*®¼?}@T˜ÁÎ¥?’ï R”?‚¼ FO??Šb£’?ÏnG$GI?]S¶X³d?‚o,¬qVÙ?ŒÂk®/¥?‚‘X ¶ ?‚øL¨ØxŠ?†ÏÅ1C?†‘·ª +9X@@,@$@*@4@7?ð?ð?ð?ð?ð?ð¿/Ú‡j ?.ÅKnà?"©£è¯¦S?ÒØÛoi@ªb„*l@™®·C‡aÜ?B˜lKÑJ?(PÀäñ3?’ž¹«hÉk?^rTÕÂ?›@ŸgäØ¿ @@«›u?|í‘@«›r-V@«›u?|í‘@«›q·Xâ@«›u?|í‘@«›jÚ¹õZ@«›u?|í‘@«›…Ö8†Z@«›u?|í‘@«›x_ö”@«›u?|í‘@«›|žì¿±@¦ÝåãS÷Ï@¦ÝâÐå`B@¦ÝåãS÷Ï@¦ÝéûçlŠ@¦ÝåãS÷Ï@¦Ýá°‰ &@¦ÝåãS÷Ï@¦ÝÛšu@¦ÝåãS÷Ï@¦Ýß¼@¦ÝåãS÷Ï@¦ÝÚ6âë@7*0U2b@7…ðoiD@4Œí‘hr°@4‡$tSŽó@3ûƧï²@3ùº^5?}@3ý!ÿ.I@3œàu÷@3ý!ÿ.I@3$Ý/@3ý!ÿ.I@3Ü]cˆf?ˆÿÀ)T¿Æ?™05¦ ê[?FwôÅ?”ø”gt>?”Å¥ÒB–W?”ÙA!Xá¨?‚á²Olºü?š«Õ LP?–¾Oäë ?‘tÄdªE·?“¹ ¾´î?˜„AP0P?˜o\¾Z{?‘ûKá•)†?”³Ž+k?‡ÕZ›µûÜ?<ש‹äN?Œ8¸wx¯@@@@@$@(?ð?ð?ð?ð?ð?ð?bíútÀ¿Z’¼?_L|H‚bK?EÊjœ-M0@«›y4_í@¦ÝÞ»úúÎ?› /ذ™?eëfÉб)?ùÚ8’ا?ÍK{~´‰@Ÿh,éóµ›@@¥¢Ä›¥ãT@¥¢ºáG®@¥¢Ä›¥ãT@¥¢Ã¼ÓZ‡@¥¢Ä›¥ãT@¥¢ÏhÛŒ@¥¢Ä›¥ãT@¥¢Å¸Qì@¥¢Ä›¥ãT@¥¢ÅýŠÚº@¥¢Ä›¥ãT@¥¢Éã¾@¡çð£× +=@¡çë…¸R@¡çð£× +=@¡çóMj@¡çð£× +=@¡è Iº^@¡çð£× +=@¡çô¼j~ú@¡çð£× +=@¡çð©*0@¡çð£× +=@¡çíOß;d@7įO „M@7Æ¡aä÷f@3k¥ãS÷Ï@3m¸ºÇË@2¹7KƧð@2½ÅÖ8†Y@1î_oÒ @1ð6âë@1î_oÒ @1â\(õÃ@1î_oÒ @1ân—Oà?}Ñ¿ž,?‘–Œ ˆŽ ?“IK¹É?nii)â?šÞjFáÊ?—Ò¸ùBz3?Œs¤DÅÐ?š8º¶{:?‘%gÇ¿µ?‘Nw]6»ô?žrø·óç?¡má\È@à?¯ßÁx}²?’Эs_ª`?‰~}œ…o_?‡õ{CxÞ?屘Úã?˜§zy@@@@@,@*?ð?ð?ð?ð?ð?ð?iŽ|š?W¸öÖ?8ò"ªœ‹?Ufݸbzi@¥¢Á¶• q@¡çïÒj¤þ?XwøÍ6O?rò8G®ËÍ?´Pžðäê?ÛnÿÒ9¶ô@Ÿf¡QF$`@@°=p£× +Á.„€@°=p£× +@°=quŽ@°=p£× +@°;’:)Ç@°=p£× +@°<L˜_@°=p£× +@°;P°ò|@°=p£× +@°;˜Çâ‚@žÈq©ûçmÁ.„€@žÈq©ûçm@žÈgRT`ª@žÈq©ûçm@žÈc¢œwš@žÈq©ûçm@žÈixÔýó@žÈq©ûçm@žÈg8}À@žÈq©ûçm@žÈd÷eý‹@7Âò䎊Á.„>¤µÜÆ@2û Iº^@2ùÔ•*™@2 ²-V@2 ˜Çâ‚A@1a:’£S@1_iDg8@1a:’£S@1_U›=È@1a:’£S@1_Aò×s@8J¨?­hX™*?‘=?ùKh?Œ:Z2‚b?‘ÇöÃÞ`?‘•S‚üJ@8J¨?“Á4œÝi?ÏtP°*?Ò–‚h±n?‘C å;Ã?‘]Ë™$ë>@8p÷?u/®Xã?‚‹¡8*ú?ƒÛ®«etZ?ˆCns¥ ?ˆ¾þúWZ‹@@@@*@*?ð?ð?ð?ð?ðøøøøøøøøøøøø@£Ï!ÊÀƒ@£Ï%¸Që@£Ï!ÊÀƒ@£Ï$÷eý‹@£Ï!ÊÀƒ@£Ï#ˆe”¯@£Ï!ÊÀƒ@£Ï$Âø7¶@£Ï!ÊÀƒ@£Ï!TÉ…ñ@£Ï!ÊÀƒ@£Ï!TÉ…ð@§¾n—@§¾õÂ[@§¾n—@§¾¶®}U@§¾n—@§¾g8~@§¾n—@§¾u%F @§¾n—@§¾n.±Ä@§¾n—@§¾\(ö@7Q|ÚQ@7QÊÀƒn@1O|í‘hr@1O–»˜È@01‰7Kƨ@01uŽ!–S@/fL/ƒ{K@/f€IQƒ@/fL/ƒ{K@/fL/ƒ{K@/fL/ƒ{K@/fÂ&€J? Eˆ‡ðó‹?êÚÏ$?‘,fŸCô6?‹ó#ƒt£?ÿ £‰¸9?¸û:?žˆ2}?’)£µ“[+@8Iç@8Ù?€‚ñêã @8Î÷@8i§@8Å@8S@8û—?œÁXÙðÿ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@¬ÁnzáH@¬ÁmV@¬ÁnzáHÁ.„€@¬ÁnzáHÁ.„€@¬ÁnzáHÁ.„€@¬ÁnzáH@¬Áo²-@¬ÁnzáH@¬ÁmV@¯i@ƒn˜@¯i:^5?}@¯i@ƒn˜Á.„€@¯i@ƒn˜Á.„€@¯i@ƒn˜Á.„€@¯i@ƒn˜@¯iC× +=q@¯i@ƒn˜@¯i?|í‘h@8[¹Œ~($@8WéùrH@2€ Ä›¥ãÁ.„M‰ûçm@1€å`A‰7Á.„QnÙ‡@1 ù kºÁ.„NÜC,¥@1 ù kº@1â‚@·€@1 ù kº@1ÕϪ͟?£È‰·akû@8#˜@8¾:@8 >+?‘ ·èf?‘/¹ß…?‚á²Olºü@8Î÷@8i§@8Å?‘އ Àí?’9ñ9¶ò8?žhËJÎæ@8 * @8p÷@8¶?‹&¸ê±fÂ?’¸ø‰o@@@?ð?ð?ðøøøøøøøøøøøø@¢L¬‹C•@¢L¬‹C•@¢L¬‹C•@¢L®záH@¢L¬‹C•@¢L­‘hr°@¢L¬‹C•@¢L¯v_Ø®@¢L¬‹C•@¢L¨Ë’;@¢L¬‹C•@¢L©Çy¦µ@¦,`A‰7L@¦,`Ä›¥ã@¦,`A‰7L@¦,aaä÷f@¦,`A‰7L@¦,_;dZ@¦,`A‰7L@¦,]ŠÚ¹õ@¦,`A‰7L@¦,cÉîËû@¦,`A‰7L@¦,cn—@3 ]cˆe”@3 íúCþ\@/û"Ðå`A@/ô‡ü¹#¢@/N—Oß<@/C•$Ý@-õ¨Xy=Ú@-é­BÃÉï@-õ¨Xy=Ú@-ëP°ò{³@-õ¨Xy=Ú@-ëP°ò{´?€‚ñêã ?ûJ`ÕYð?‘"žæÆó¡?‹¬àÌ’Ç?”ä+ïè?“Q´Î`°€?|¬Çëý ?’eCŒO?œõLÁE?@§[*^?”*v7¹¿?“½w¢8…?‚s@ˆaÚ?=d­úå?‚¸“Îè ø?ƒžÂâk,?ˆëÅoë?Ž .0åv@@@@@,@,?ð?ð?ð?ð?ð?ð¿8ÃZâ¸?2Øà?HTœãË*?D)Zî£<@¢L¬7Lë@¦,aÀ%?g !í/Ù?cýtÏá2Á?×ÍIN½­£?щØmó&å@Ÿfg¨áµ`@@­ÀÀÁ.„€@­ÀÀ@­Á(ZªÖ;@­ÀÀ@­Áû S@­ÀÀ@­À¸w6Ç@­ÀÀ@­ÀçxQýÇ@­ÀÀ@­ÀÌ\&SÁ@›E49XbÁ.„€@›E49Xb@›E3ûÕi6@›E49Xb@›E £¯ºg@›E49Xb@›Dãµ\8…@›E49Xb@›E"ß;Ô·@›E49Xb@›E7gþù@8ð4mÅÖ8Á.„>¤µÜÆ@3¡hr° Ä@3{R­!4€@2Æ“t¼@2céN`@2 +0U2a|@1ÖPŠX§ô@2 +0U2a|@1ØÅˆöˆÂ@2 +0U2a|@1Ü·+•ò@8J¨?˜Á¥MŒtÞ?—s˜¥¸Î¿?®¦â|vã?“N?ªó¥±e@8J¨?p¦&tìC?™éø„s?£Yg3–÷?šŒŠJ](?›YöîÈÉé@8p÷?–¯´Å”s ?¹ +ÁNr)?’ål-¦Q?‘I`ÊïN?upß-z¢@&@"@*@.@0?ð?ð?ð?ð?ðøøøøøøøøøøøø@ž™‹C•@ž™¤Ô}@ž™‹C•@ž™‘­:=@ž™‹C•@ž™È¨ÉV@ž™‹C•@ž™ÊB%¥†@ž™‹C•@ž™½.Ûø@ž™‹C•@ž™ÂÍφ@ öœ(õÂ@ ö±ë…¸@ öœ(õÂ@ öòx[ññ@ öœ(õÂ@ öʾ€´@ öœ(õÂ@ öÔgº¨@ öœ(õÂ@ öÓgß^V@ öœ(õÂ@ öÔÇÄG@6*0U2b@6á(E\@1—+ Iº@1+­{N¾@0éÛ"Ðå`@0Îm°ðK@03&Á½¦@0©*SEŸ@03&Á½¦@0‚Ñ@03&Á½¦@0lÃðRÌ?€Z=ú‚¡?¤^£ ‰?™42`Ò??‹éþ7?”L–—í ?”Fœ0ê^?Œ}ØEò?•ð·÷ô'?•ÀÔÏ>?1ß”ñìÿ?•ìG +̾ù?”PQÌ-2?— abŽ?TàŒx?ŒŒ­Ÿèã?‡“m« pØ?Œ:w€…êB?޽±Yfž³@@"@$@@2@2?ð?ð?ð?ð?ð?ð?oÜá¾é?€Ð'8€?Y´P;rq§?d#ÈÍÁŠ@ž™¹¤äó}@ öÈ ß¼x?zXXd–¹W?ƒ•ta%?ú\2¶eÇ@.^F;!–@Ÿhú‹¶™@ @¨ÊÒñ©ü@¨Ê‘hr°@¨ÊÒñ©ü@¨ÊŒô!-@¨ÊÒñ©ü@¨Ê‹Æ§ïŸ@¨ÊÒñ©ü@¨Êqu@¨ÊÒñ©ü@¨ÊúCþ]@¨ÊÒñ©ü@¨ÊŒÌÌÌÍ@«‚“u@«‚KƧñ@«‚“u@«‚»˜Çã@«‚“u@«‚ðØDÑ@«‚“u@«‚škP±@«‚“u@«‚®}Vm@«‚“u@«‚+jçÕ@6ò䎊@6aä÷eþ@1 í‘hr°@1 wškP°@0¾V“u@0¼žì¿±[@0&YJôðØ@0&Á½¥@0&YJôðØ@0'¯·é@0&YJôðØ@0'1Å‚?1·†Æjñ?qÂ' +B›?’5 µ¿$„?Œ‚èõЊ?‘¾%î +ã?Ðýð^–Ö?|öOÿÝ?’4 "ëžØ?‘;¨™,?‘M –=?‘ ^Íü?ÿ?lINõÕ„?‡}¤íý?3I¶#i?ƒ!A +mº¹?ƒ­=aÊw%?†ùadô|?†Ü‘ °Ô@@@@@*@(?ð?ð?ð?ð?ð?ð¿›Y–¿&=3!@?²J¶‘Ô?ózÑÕ©)@¨ÊcÐXÌ@«‚ú¸ò:?<ó‡)ÄÑß?:»Çejâ?…Gæ¶ŸFa?ón AõÌ@Ÿg9.Íè¤@!@¨WŽV“Á.„€@¨WŽV“@¨W Ä›¥ã@¨WŽV“@¨W„ŽŠqß@¨WŽV“@¨WŠOv@¨WŽV“@¨W¾ í*@¨WŽV“@¨W˜†YJõ@ ƒn˜Á.„€@ ƒn˜@ ïŸ¾w@ ƒn˜@ ñø .@ ƒn˜@ û‹¬q @ ƒn˜@ óœ¾à@ ƒn˜@ ï'»/ì@8#g ù lÁ.„>¤µÜÆ@4!hr° Ä@3ü¾ß¤@@3lj~ùÛ#@3[xFÜ]@2°–»˜Çã@2®ŠqÞi®@2°–»˜Çã@2¨ -à@2°–»˜Çã@2£{J#9Á@8J¨?¡³¡Bš™?¥Äü¸§‚e?‘4ãM^?›À‰¥xsÎ?¥˜9‹´j@8J¨?Æ“¡0°Øf?±·`;9›?–ª'G_ßJ?žFl}ÖÑì?£:ó;Ãç@8p÷?›¿G¶‘µ?“ø­×N?Ÿ.BZO¶?œpO‹4I?™/ã̽`ª@@@@(@*?ð?ð?ð?ð?ðøøøøøøøøøøøø"@©Î—Oß;@©Î–È´9X@©Î—Oß;@©Î–‡+ @©Î—Oß;@©Î˜}¿G@©Î—Oß;@©Î“œ¾à@©Î—Oß;@©Î›²þÅm@©Î—Oß;@©ÎšCþ\’@­9XbN@­9XbN@­9XbN@­6_Ø­¬@­9XbN@­2ˆÎp:@­9XbN@­7Xâ@­9XbN@­0ØDÐ@­9XbN@­1Þi­C@6*0U2b@6K]Ìcò@2Ô›¥ãSø@2ÑTÉ…ðo@1ä¼j~ùÛ@1âGE8ï5@1B‚@·€5@1;P°ò{³@1B‚@·€5@1Fð¸»@1B‚@·€5@1DFs×Ü?1·†Æjñ?ôÊ_?“ „qç +*?•¬+ÌYI˜?”1މ,jˆ?‘&¶Gf¡?Œs¤DÅÐ?’7Îf¬ps?’±ä?—,àÐÑž?•ò±É*³¯?’ω:hT†?‡z"2Úù(?’á²Olºü?‡š¿]b?†ú#ѧ?‹ ˜1 D@?‹ì3åý@@@@@,@*?ð?ð?ð?ð?ð?ð?FÙÎ0¿[!˜”x?COÕصC?:õݶFNc@©Î˜IC”@­5m$žò?enþÂD`¸?[Ä7Yä–?Ð^d‚üqã?±õŽýÜ Ý@Ÿi2О‚;@#@¢"½ó¶E¢@¢,1&é@¢"½ó¶E¢@¢H`ù³@¢"½ó¶E¢@¢Z^Áë-@¢"½ó¶E¢@¢]&ãW@¢"½ó¶E¢@¢-¼Ÿ@¢"½ó¶E¢@¢2-0@˜"šŸ¾vÉ@˜%° Ä›¦@˜"šŸ¾vÉ@˜%šœy€@˜"šŸ¾vÉ@˜%… Œ@˜"šŸ¾vÉ@˜%)3°³@˜"šŸ¾vÉ@˜%‹]d*±@˜"šŸ¾vÉ@˜%1MY@6Ô xFÜ@3YîËû¶@3ÜIº^5?@/¥2Ø4Ž@2ìj~ùÛ#@.lÿð¾ o@2‘Þi­BÄ@-WM4@2‘Þi­BÄ@-jVwˆ®)@2‘Þi­BÄ@-]`߈?}@T˜ÁÎ¥?˜H%€]¾^?‘,Qú"Œ»?ÎÍQ#“ï?}x—™ÃMÐ?ƒ&C@=V?†Á‡ÄQS?†ºEZë€J@@ @"@$@,@0?ð?ð?ð?ð?ð?ð¿O-b,¿ ww€?@±LU?# œßã¥@ ÷-+¤,@¦ ·¶[’?_äܳ.?CÏ„ú—È?Çãdw"D?“JÏEÔ÷@ŸgÍv¶Y§@%@©“í‘hr°@©“í‘hr°@©“í‘hr°@©“î¿}n@©“í‘hr°@©“îòÙ9@©“í‘hr°@©“î"™Ü9@©“í‘hr°@©“ì³ew€@©“í‘hr°@©“ìÇÅøb@–©÷ÎÙ‡@–©÷ÎÙ‡@–©÷ÎÙ‡@–©ø}¿I@–©÷ÎÙ‡@–©÷æïÙ7@–©÷ÎÙ‡@–©øÐ6k”@–©÷ÎÙ‡@–©ø…Wã‘@–©÷ÎÙ‡@–©÷†“Ÿ€@3:qÞi­C@3:kP°ò|@-û"Ðå`A@-û?÷ÿ@-4ýó¶E¢@-5F +¦L0@,=Vlô"@,=‚÷…Š\@,=Vlô"@,=Áç–|¯@,=Vlô"@,=§°³‘“?|¬h2:“?Ëš]Üus?‘ùBì?‹®’‘8ø?î¤Ë)>ñ?ºT|/ÿ?|¬h2:“?’…;*;h?’Ìw¸&?1–‹ï ?Òh‘›1?T©£q/G?‚nÚ¨´8Ð?Œ¯ê¸wœ?‚u¹k‚=?‚ê ëZ“E?†Š7´is\?†Œ§÷‹Ý@@*@,@&@;@;?ð?ð?ð?ð?ð?ð¿ +xJà?'¬¯@?"ˆgÝé?{­²ºk@©“íb¨n@–©øR?p?Boû{ù×?2Ó@CŠ„¦?’¦…f´?r›6Æä@ŸfòÕN[¤@&@¬T5?|î@¬T/Ÿ¾@¬T5?|î@¬Tƒä%®@¬T5?|î@¬T¸Që…@¬T5?|î@¬T«6z@¬T5?|î@¬TÑ·@¬T5?|î@¬TVlô@©ÙIº^5?@©ÙLÌÌÌÎ@©ÙIº^5?@©ÙI7Kƨ@©ÙIº^5?@©ÙIº^5?@©ÙIº^5?@©ÙJŒL˜@©ÙIº^5?@©ÙIîËû@©ÙIº^5?@©ÙJW§†Â@6Q|ÚQ@6O\(õÂ@0Ò Iº^5@0ÒMÒñ©ü@/rn—Oà@/r{²þÅn@-p‰ 'RU@-p£× +=q@-p‰ 'RU@-p|„µÜÇ@-p‰ 'RU@-p°ò{²ÿ?|¬Çëý ?Òç{íj?‘G¿yÛ?ï?‹ÁË…ÉT?÷6r In?¶*WFÑ?…ÅBðrç?’›ÈÖÝ?»Þ‹"è?6) }’ë?â2„&ÿh?e¾DQ„Q?–Õ ­Ÿû?ŒÂ§dß±?‚˜YªüÏF?ƒE 8?†–f_ÔŠŠ?†©b/bJö@@@@@,@,?ð?ð?ð?ð?ð?ð?%WÛ­€¿CCW ?&èá.´?"›,|¡x@¬T±šù +@©ÙK<òv>?GÜ>uTô‚?B†ãèah?œ|NáRuÈ?ŠdË;T0@Ÿh¹pI™D@'@«™ Ƨïž@«™ ƧïŸ@«™ Ƨïž@«™ ÓÃa@«™ Ƨïž@«™ "h Õ@«™ Ƨïž@«™ ÌÌÌÍ@«™ Ƨïž@«™ cñA @«™ Ƨïž@«™ BÃÉï@¨+u?|í‘@¨+u$Ý@¨+u?|í‘@¨+tÉ…ðn@¨+u?|í‘@¨+u¨Xy>@¨+u?|í‘@¨+uéá°‹@¨+u?|í‘@¨+tmÅÖ:@¨+u?|í‘@¨+tÉ…ðo@5-¥œàv@5-úCþ\’@1sS÷ÎÙ@1sˆe”¯N@0ÝV”@0ÝIQ‚©“@0ëxFÜ^@0ëjçÕfÐ@0ëxFÜ^@0ìIº^5@@0ëxFÜ^@0ëíúCþ]?€‚ñêã ? ¸×KG?‘O‚%c?Žl¢¦µ¥?‘‘n{ÆäK?‘Ò\.:Ø@?|öOÿÝ?’CòO…?‘;¨™,?‘°ß‡O©?’l{9ÙŽ?¦QÎð\ã?„‘Za¹P?3I¶#i?‚Ì ÝŽ‚8?„ mŠmsi?‡L8õASÎ?ˆ‹”âó@@@@@,@,?ð?ð?ð?ð?ð?ð?1`åß¿#ZLw€?AdA•‡I?=!^é@«™ aPP@¨+u9¥¶:?4-4ÆLª:??'mwƒ?r«1ÃV0?‡Y[º¦Pœ@Ÿg%{Ñ’?@(@ d›¥ãSø@ dšÆkÅ”@ d›¥ãSøÁ.„€@ d›¥ãSøÁ.„€@ d›¥ãSøÁ.„€@ d›¥ãSøÁ.„€@ d›¥ãSøÁ.„€@§¨÷ÎÙ@§¨n—Q@§¨÷ÎÙÁ.„€@§¨÷ÎÙÁ.„€@§¨÷ÎÙÁ.„€@§¨÷ÎÙÁ.„€@§¨÷ÎÙÁ.„€@6Œ]cˆe”@6n*ó¨‡@2óS÷ÎÙÁ.„M‰ûçm@2t“t¼jÁ.„QnÙ‡@2 ¿±[W?Á.„NÜC,¥@2 ¿±[W?Á.„NÜC,¥@2 ¿±[W?Á.„NÜC,¥?€Z=ú‚¡@8#˜@8¾:@8 >+@8Iç@8Ù?ŽÕQp Î@8Î÷@8i§@8Å@8S@8û—?‚ãTʼ =@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø)@£#Cn—Á.„€@£#Cn—@£#9#¢œx@£#Cn—@£#F?@£#Cn—@£#5L˜_@£#Cn—@£#,VÕÏ«@£#Cn—@£#3 àÞÒ@§ž5?|îÁ.„€@§ž5?|î@§Ç ù m@§ž5?|î@§²° Ä›@§ž5?|î@§­BÃÉð@§ž5?|î@§­à q@§ž5?|î@§µfÏAò@9–»˜ÈÁ.„>¤µÜÆ@5Œí‘hr°@5ž5?|í‘@4²-V@4—Oß;d@40–»˜Çã@41$Ý/@40–»˜Çã@4$`ªdÂø@40–»˜Çã@4%¨Xy=Ú@8J¨?®ÖJ éf?¢Ø‹)¬Ô?¡àp½ùW²?¯ÂÿU܈9?¦ìm°Z³@8J¨?°k3–~?©oÌ„»É—?·Ë¿ o¶?°KNø»«ú?¬H"¨Û#¦@8p÷?³/ÇÅ‘B?«ý¿­¨?²Ž Ÿ‘W?®zoV÷?œÐ€IÙN†@@@@,@(?ð?ð?ð?ð?ðøøøøøøøøøøøø*@¥{dZ¬@¥xÔýó¶@¥{dZ¬@¥~ÒˆÎp@¥{dZ¬@¤þ‘[W>«@¥{dZ¬@¤ÿÿØ­«Ÿ@¥{dZ¬Á.„€@¥{dZ¬Á.„€@¦S_¾vÈ´@¦Sg+ K@¦S_¾vÈ´@¦S\¬1(@¦S_¾vÈ´@¦SYJôðÙ@¦S_¾vÈ´@¦S ùrG@¦S_¾vÈ´Á.„€@¦S_¾vÈ´Á.„€@6ð4mÅÖ8@6ïO „M@4ÇÎÙ‡+@4°@4RÐå`A‰@4žì¿±[W@4 ù kº@4 ¹Œ~($@4 ù kºÁ.„NÜC,¥@4 ù kºÁ.„NÜC,¥?‚á²Olºü?­ÙEÔy©Ñ?ê¶i’•ðX?´ÿ,¶ö +d@8Iç@8Ù?–ªÎ­¡?°k3–~?Çù9Ø‚àÁ?³R(gÉF²@8S@8û—?™N³“—õ?ÉôÒ:æøš?ȧuð Ì?¼ ÿvrC@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøø+@§kPå`A‰@§kQ©ûçm@§kPå`A‰@§kEo@§kPå`A‰@§k-¸ºÇ@§kPå`A‰@§k(e”¯P@§kPå`A‰@§kSg ù@§kPå`A‰@§k‡“Ý—÷@­»X“t¼j@­»s÷ÎÙ@­»X“t¼j@­»3Mj@­»X“t¼j@­»W´¢3œ@­»X“t¼j@­»s àÞÓ@­»X“t¼j@­»h>BZî@­»X“t¼j@­»ª™0¾@95S&Á¾@9?v_Ø­¬@5ã÷ÎÙ‡@5ëP°ò{³@5lj~ùÛ#@5usê³g¡@4ž«6z‘@4ž}Vlô@4ž«6z‘@4¨è§æ›@4ž«6z‘@4z0U2a|?©W»¥ÿ$B?°õ + åã¢?Â9œÐ/¹?´>5’cª?§?7¡â±?¸Ú2džý?¼xòaz#û?¨Õ¼2®?¸P@÷ë?¶5O¯WÕ?ª#Uºû?Ì·ö~ø Ì?Ãm¢Üå?¢:™/ʼn?¢ó6õ··?§øe8ú?ªé¦ªC¨?²ÞY')î@@@@@$@(?ð?ð?ð?ð?ð?ð?k¶è{º€¿Ta}ø?€hãf®ëz?y·V"Ý@§kR¹öp@­»nÃ^Ò?ŸµÅßS~?‘¶ôÐ8ˆ¢@}—Àc?ÕélIß¡@Ÿlö¥å£@,@¯>=ó¶E¢@¯>9Û"Ðå@¯>=ó¶E¢@¯>C¼ÓZ‡@¯>=ó¶E¢@¯>F1ø @¯>=ó¶E¢@¯>Ik¹Œ}@¯>=ó¶E¢@¯>B Iº_@¯>=ó¶E¢@¯>@ƒn™@¨55Â\)@¨56E¡ÊÁ@¨55Â\)@¨5:6âë@¨55Â\)@¨52òä@¨55Â\)@¨58ï4Ö¡@¨55Â\)@¨5/hÛŒ@¨55Â\)@¨5/ìVÕÐ@4–šÔ,<Ÿ@4‹¹Œ~($@1û Iº^@1øbMÒò@1,j~ùÛ#@1(è§æš@0¸DЩ*@0µ '»0@0¸DЩ*@0³¼ÓZ…ˆ@0¸DЩ*@0³S&Â?›’qvš°•?‘U «¼é¥?–/¸Í”p?ZÁ».œ?’?;Áƒè?‘ë´¤G?›’qvš°•?’)£µ“[j¢Ó=?V­à¾$f‰@¯>CƱÿ@¨53Äz¢?|·M²l­?qµÉÓ‡l?ò³h<~5?Ù$m½ò @Ÿn“G ˆ.@-@®A‰7KÇÁ.„€@®A‰7KÇ@®A×Ûôˆ@®A‰7KÇ@®B‚@·€@®A‰7KÇ@®Aä÷eý@®A‰7KÇ@®@4mÅÖ@®A‰7KÇ@®@4mÅÖ@ ‰)xÔýôÁ.„€@ ‰)xÔýô@ ‰(r° Å@ ‰)xÔýô@ ‰(ÁTɆ@ ‰)xÔýô@ ‰(šu%@ ‰)xÔýô@ ‰)*0U2@ ‰)xÔýô@ ‰(ÁTÉ…@3įO „MÁ.„>¤µÜÆ@0n5?|í‘@0nvÈ´9X@/¥¡ÊÀƒ@/¥ðoiDg@.³üPH@.³@N¤¨Â@.³üPH@.³Z…‡“Þ@.³üPH@.²×süQ@8J¨? ¸×KG?‘\H{gX ?Œݶ\ñr?òǹíT­?Å{¿Ž<¹@8J¨?’0nà=Q“?‘Jâ”âj?7枪y7?ÚÌA B{?Sñƒ´V.@8p÷?ŒÂ§dß±?‚† SFò?ƒ!Ë *(?†£îž«î?†©b/bJö@@@@&@&?ð?ð?ð?ð?ðøøøøøøøøøøøø.@¥Û~vÈ´9@¥Û~ùÛ"Ñ@¥Û~vÈ´9@¥ÛU›=@¥Û~vÈ´9@¥Û}cˆe•@¥Û~vÈ´9@¥Û|Æ?@¥Û~vÈ´9@¥Û}!ÿ.I@¥Û~vÈ´9@¥Û~Ov_Ù@¨F,‹C•@¨F,‹C•@¨F,‹C•@¨F+àÞÒˆ@¨F,‹C•@¨F$ xH@¨F,‹C•@¨F&šÔ,=@¨F,‹C•@¨F)Dg8@¨F,‹C•@¨F'ÈK]Ë@3cg ù l@3cS÷ÎÙ@0Ô›¥ãSø@0ÕfÏAò@0š~ùÛ"Ñ@0›/ìVÕÐ@0cÉîËû@0eýŠÚ¹ö@0cÉîËû@0f$Ý/ @0cÉîËû@0eãS÷ÎÚ?|¬Çëý ?äm°û0Ž?’´ýBI{?‡{@áè?‘@@Nßo9?‘ë´¤G?|¬Çëý ?’j%ÓRa?•¶ÀA½ +;?’ƾ| ?‘êë·áþA?‘:i€ÑìÂ?‚nâwfÿ?Œþ%å_D?†úŒz_–È?…p=¤J‰?‰G±±ZÎ?ˆA0û)n@@@@@(@"?ð?ð?ð?ð?ð?ð¿5wå"x¿Q(Á©Š?-"Sù`ÏÀ?9z¸T‹ü@¥Û~%Ã1ž@¨F*$h(^?M8Mñ¡Ö?Y–Ðwª“6?¦&–YD!?¿G¹¤óñ@Ÿf–?®%<@/@©þÃn—@©þÁF£ç@©þÃn—@©þœáûÌx@©þÃn—@©þŸ|óÂ@©þÃn—@©þ£4‡.y@©þÃn—@©þ¦VÉ¡@©þÃn—@©þÎp:û@˜týó¶E¢@˜uPa$á@˜týó¶E¢@˜tôã÷Ô¿@˜týó¶E¢@˜udˆŽö?£¡q\^/ü?¯ˆÂ(¦#@@(@(@*@;@*?ð?ð?ð?ð?ð?ð¿q}o{?0tz–€?nAÖ…`Ä?hÜÃòk@©þ¼yö¼@˜uÙµ®o?‚¿ëBh?~õÜ,øãâ?ðîcs{eˆ?ïò4Ù~Ÿ@Ÿ^¸T@0@¥Z¬1@¥XQë…@¥Z¬1@¥OìVÕÐ@¥Z¬1@¥U›=È@¥Z¬1@¥TzáG®@¥Z¬1@¥9Û"Ðä@¥Z¬1@¥@N¤¨Á@£ ?|í‘h@£ 9Û"Ðå@£ ?|í‘h@£ mÅÖ8†@£ ?|í‘h@£ i^ž @£ ?|í‘h@£ QÄ2ÊX@£ ?|í‘h@£ Që…¸@£ ?|í‘h@£ ^Ov_Ù@7Ô xFÜ@7ÞÒˆÎp;@4i‡+ @4QÞi­BÄ@3Ú~ùÛ"Ñ@3»ÚQÎ@2ÏO „M@2½w1Å@2ÏO „M@2¶z–¼@2ÏO „M@2µ®æ1ø¡?¡EÉ@Ú?§îéZ]›$?¥×DZ?“êXÔ #{?«XàzÆ=?¨\LïTu?ˆÿÀ)T¿Æ?®*JŠË?¥ûS]:°¸?agÌf ?©®,<Å?²í(Uëó?±ÖÉ„‹?˜¼qlPg?ªÞe»þ?›a½%¨?žæŠ;Ü”ä?¨S![cé@@@@@&@*?ð?ð?ð?ð?ð?ð¿tt‚Ó ?€Þ’üE€?ijÀÉÐ?P–Ý€ò ?@¥Q§w³¹@£ M^^ÛG?°P}d?n7¼±/õ?ärý@øM?Çe¹½æI†@ŸhæÂâ@1@¨=å`A‰@¨=bMÒó@¨=å`A‰@¨="Ðå`B@¨=å`A‰@¨=!ÊÀƒ@¨=å`A‰@¨==ã¼Ó@¨=å`A‰@¨=LIº^4@¨=å`A‰@¨=_oÒô@£p£× +=@£p£× +=@£p£× +=@£q©ûçm@£p£× +=@£mà q@£p£× +=@£På`A‰@£p£× +=@£JÚ¹õZ@£p£× +=@£%zxl#@4Œ]cˆe”@4Œ¿ q@2Ìí‘hr°@2È Ô•*@2“t¼@1þHè§ç@2OO „M@29á°‰ (@2OO „M@20@2OO „M@20|„µÜÆ?~ì“?ÕÒJ?•ª „¼w(?Ÿçdl\’ž? l§s¼C^?´²Ò–ù?ºÙ Gýü?|¬h2:“?•Ð\ÄÙ?•Ó%Øc~?•è­¸‡?¸á®`cë?¿râÂ{?‚¬®eà?ލf†)"?‹v'þ­X?‡µ‚[Ö?–Ö8ýÆN0?–{=rƒ™K@@@@@(@,?ð?ð?ð?ð?ð?ð?¹=âÀ¿x¶œ<§?A‡¨:%^?<Âã|d±@¨= è¹$@£e#á¾?QÝv¥”í?Nbè$h?–Ý oˆ]ž?™œÉgŸuÑ@Ÿ]eß䟽@2@§¹Ç®zá@§¹âÐå`B@§¹Ç®zá@§¹Ãn.±Ã@§¹Ç®zá@§¹ÕϪ͟@§¹Ç®zá@§¹Ãn—@§¹Ç®zá@§¹Èšu%@§¹Ç®zá@§¹ÍBÃÉð@ªÞ¸Që…@ªíÒñ©û@ªÞ¸Që…@ªÎ±Ä2Ê@ªÞ¸Që…@ªÕµsê´@ªÞ¸Që…@ª½<63@ªÞ¸Që…@ª¬<žìÁ@ªÞ¸Që…@ª§ü¹#£@9[¹Œ~($@9múCþ\’@4}‘hr° @4sä%®æ2@4lj~ùÛ#@4gö+jçÕ@3èè§æ›@3ϱ[W>¬@3èè§æ›@3Óœ¾ß¤@3èè§æ›@3Ó{J#9Á?®í©@Šþ?”„ö}>žå?™¬þ.OÀ…? ¨1‚–Áx?£*bQtË6?¤=Bù+?­g;+³ût?”ï©ÛÉ?ŸíBðÐÄ? £½:…? øó¼o?³YðÕ{¸?Ání+î?•ða˜,F?žåÍ1¶ã‘?³d&ó? ü‡—Üä?£ªS@Gd·@@@@@$@(?ð?ð?ð?ð?ð?ð¿fê6tô¿M¤ -@?p‘Ba&\?a\ör”@§¹ËzP'¦@ª»}Þ,?ˆ#v <ã/?v ×ú"í?åרwGµ%?Â>íì÷Ïu@Ÿm)·\å@3@©KƧïž@©KƧïž@©KƧïž@©LVÕÏ«@©KƧïž@©LÌÌÌÍ@©KƧïž@©M„M;@©KƧïž@©KP°ò}@©KƧïž@©JŒL—@¥—vE¡ÊÁ@¥—vE¡ÊÁ@¥—vE¡ÊÁ@¥—vOva@¥—vE¡ÊÁ@¥—v4ê@¥—vE¡ÊÁ@¥—usê³i@¥—vE¡ÊÁ@¥—v»˜Çã@¥—vE¡ÊÁ@¥—vz–@2ºqÞi­C@2ºxl"h +@/ðå`A‰7@/ðØDЩ@.cn—P@.cS&Â@-Aò×t@-ŽóMj@-Aò×t@-Ÿ¾vÉ@-Aò×t@-'»/ìW?É^žQ5P‚?ôÊ_?‘@˜¯³¸?‹µ™eU!µ?‘ ·èf?¼‚Ë¡K?ÐbMçê_x?’ÍîfÕ?«'Q™µ?4–Ú‰3?‘Ú‚ýc¯?Sñƒ´V.?€n|ð̲?ŒÂ§dß±?‚¸“Îè ø?‚æÊ¬vã?†µ°jÆÃ?†£îž«î@@@@@,@(?ð?ð?ð?ð?ð?ð¿U,$  ?>;§ ”?.[}HÛÆ?/¹YXu® @©KøT;p@¥—v'†?=:æ|7v?>#¢},?tæO¬• ¾?sÀ3uó@Ÿsè˜'t@4@ª‘S÷ÎÙ@ª‘VE¡ÊÁ@ª‘S÷ÎÙ@ª‘„Щ*@ª‘S÷ÎÙ@ª‘F€IR@ª‘S÷ÎÙ@ª‘c,¥zx@ª‘S÷ÎÙ@ªúû~‘@ª‘S÷ÎÙ@ª‘Á½¥@¥.—Oß@¥-Òñ©ü@¥.—Oß@¥*™0¾@¥.—Oß@¥ ëíúD@¥.—Oß@¥ó&Á¾@¥.—Oß@¥ye+ÓÄ@¥.—Oß@¥mw1Å@8½:’£@8¯ò䎊r@4µãS÷ÎÙ@4‚MÒñ©ü@4“t¼j@4ÞÒˆÎp@3”mÅÖ8†@3D÷eýŠÛ@3”mÅÖ8†@3>BZîc @3”mÅÖ8†@3Q«ÇÑÚ?“ü”òÖÂ?‘!´ö‚?¯ðòçÊ’K?¬Dc†Ù?±a²OúDæ@@@@@*@(?ð?ð?ð?ð?ð?ð¿…³ô_€¿mWFt?Ñ¿ÿ¼?W¨ã8?‘@ª‘H¼o4ç@¥%Æf®?–À¤¥Óè?¥ú¶Â…•Ÿ?óÐÒÍè#x@ÏGF5—@Ÿ`ç17@5@£èr° Å@£áÊÀƒ@£èr° Å@£唯O@£èr° Å@£ç†Â&@£èr° Å@£èÎp:û@£èr° Å@£ç+ J@£èr° Å@£ÞOv_Ù@¤ÃF§ï²@¤ÃCn—Œ@¤ÃF§ï²@¤ÃC¢œwš@¤ÃF§ï²@¤Ã>žš@¤ÃF§ï²@¤Ã<£n0@¤ÃF§ï²@¤Ã>š@¤ÃF§ï²@¤Ã$?åÉ@8}:’£@8°‰ 'R@3ý‘hr° @3ùb¶®}@3V”@3êJŒL@2ò䎊r@2}:’£@2ò䎊r@2|~($ x@2ò䎊r@2qaä÷eþ?‚á²Olºü?”û#T©È?˜2<ºT?d"¹QZ?”¶q fì?˜Ê`1ó€`?¤ÊŽaÈ]Ó? 3ÝP‰j?­¾Ñ,†L?“{¡7¨Üò?žßÂÚÅ8‡?¤’sæmÅI?“²pÅâ-Ý?”3®èÚ ?•Wí+ Æ?’»•e¨ò?ˆT“Ÿÿ?”"éã/åY@@@@@(@*?ð?ð?ð?ð?ð?ð?F\àéпrôpÀ?S²r‘m@;?jÃ@® ‰{@£ä~3Ï?@¤Ã:©¶Tp?v,ûçœöU?z®ßÃÙ?çr3Zq?ç­˜êVó @Ÿl#UÚù@6@©t¼j~ú@©†$Ý/@©t¼j~ú@©r-V@©t¼j~ú@©v”Fs‚@©t¼j~ú@©tÉ…ðo@©t¼j~ú@©sœ¾à@©t¼j~ú@©ra|Ú@¨þÉ7Kƨ@¨þÖ‡+ @¨þÉ7Kƨ@¨þÅýŠÚ»@¨þÉ7Kƨ@¨þµöý!ÿ@¨þÉ7Kƨ@¨þ´`ªdÃ@¨þÉ7Kƨ@¨þ´ðØDÏ@¨þÉ7Kƨ@¨þ·´¢3œ@8m¥œàv@8h Ô•*@43S÷ÎÙ@4-cˆe”¯@3´“t¼j@3®Hè§ç@2ãÉîËû@2Ü„µÜÆ?@2ãÉîËû@2ÙÇy¦µ @2ãÉîËû@2ÝVlô"?¥Ìõ}êáþ?’bÓ}?•Mq —¦?¢Ö +ƒ«Y?Ÿ´°îéõl?žý¨B3ŒR?}Ñ¿ž,?™ÿÓH*¥?¢†$öf:?™ðyµCÒW?œCuC’?£On4;E?ôê÷º»â?ª‚eûƒ+?”ù‰ÚÞ©)?‹µ¼a?’;WZŸÿÔ?™^ÓnÔl©@@@@@*@*?ð?ð?ð?ð?ð?ð¿o“(²¿Õ2Ø?Rl‚ðÎ\8?^æ&¬Dg@©xM†@¨þ½¼J´?o]),Tð›?ƒõ'ªÌû?¸ïh…Yœ?ò uKq¢@Ÿl%McÌú@7@¥{ùÛ"Ðå@¥|G®{@¥{ùÛ"ÐåÁ.„€@¥{ùÛ"ÐåÁ.„€@¥{ùÛ"ÐåÁ.„€@¥{ùÛ"ÐåÁ.„€@¥{ùÛ"ÐåÁ.„€@¦5|í‘h@¦5ˆr° Å@¦5|í‘hÁ.„€@¦5|í‘hÁ.„€@¦5|í‘hÁ.„€@¦5|í‘hÁ.„€@¦5|í‘hÁ.„€@8kµsê´@8r Iº^6@6ÎÙ‡+Á.„M‰ûçm@4ñ‰7KƨÁ.„QnÙ‡@4Š0U2a|Á.„NÜC,¥@4Š0U2a|Á.„NÜC,¥@4Š0U2a|Á.„NÜC,¥?œä%—ëš@8#˜@8¾:@8 >+@8Iç@8Ù?¤I~Óy‘@8Î÷@8i§@8Å@8S@8û—?³Is -Æ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø8@ŸäâMÒñª@ŸäâMÒñ©@ŸäâMÒñª@Ÿä÷mâ@ŸäâMÒñª@ŸäçÁ¶´¿@ŸäâMÒñª@Ÿäè˜Ó³€@ŸäâMÒñª@ŸäçÉúT@ŸäâMÒñª@ŸääQ"Ú»@«}èr° Å@«}á#xæ`@«}èr° Å@«}íZX\@«}èr° Å@«}éÆtCx@«}èr° Å@«}çhâÕ…@«}èr° Å@«}èè @«}èr° Å@«}æ*Ý=¦@8 xFÜ@8 L³Àæ‚@3f‡+ J@3c­Ö@@2y7KƧð@2z Ï}Š @1ãÉîËû@1ß©s€ëÀ@1ãÉîËû@1ß‹'ZšE@1ãÉîËû@1á)5¢Fˆ?¿pÉÃV?“†}\¯\?’~€\Ñ ‹?…´£ÂÛ•?’¥W"/ãÂ?‘h$‡§ƒ[?ƒÔo"ë–?” +èÂ~>i?’ó†ÖàO%?Þ¿×I\¬?”qAx†û?‘/À•þª?¦ ¹kDþ?XM=nk?„QÇW%;2?„=ÈË\b +?'wChÌ?à +)¥€@@,@,@*@9@5?ð?ð?ð?ð?ð?ð??§x`x?VÀ6KÔ?6Säù­w‡?A5p¤ÉÎ@ŸäåA¯Ü@«}äÊÉß?VÁÒTDœm?a„0—x?·YVÁF*v?ƹHqñi@Ÿh+šœÈ@9@ ¡j~ùÛ#@ ¡oŸ¾w@ ¡j~ùÛ#Á.„€@ ¡j~ùÛ#Á.„€@ ¡j~ùÛ#Á.„€@ ¡j~ùÛ#Á.„€@ ¡j~ùÛ#Á.„€@•ˆô¼j~ú@•ˆêa/ Ö@•ˆô¼j~úÁ.„€@•ˆô¼j~úÁ.„€@•ˆô¼j~úÁ.„€@•ˆô¼j~úÁ.„€@•ˆô¼j~úÁ.„€@4Âò䎊@4­w1›Ø«@2Å?|í‘hÁ.„M‰ûçm@2§KƧïžÁ.„QnÙ‡@2O „MÁ.„NÜC,¥@2O „MÁ.„NÜC,¥@2O „MÁ.„NÜC,¥?|Í>·G3Ó@8#˜@8¾:@8 >+@8Iç@8Ù?‰PÑ&Éx®@8Î÷@8i§@8Å@8S@8û—?‚n—8ˆ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø:@§ž•%@§žA‰7L@§ž•%@§ž Iº^@§ž•%@§žo@§ž•%@§žñA \@§ž•%@§že+Õ@§ž•%@§ž{J#:@«qD›¥ãT@«qDZ¬@«qD›¥ãT@«qC¼ÓZ…@«qD›¥ãT@«qC,¥zx@«qD›¥ãT@«qCñA \@«qD›¥ãT@«qDŽŠqÞ@«qD›¥ãT@«qDZ¬@7Bò䎊@7BZîcŠ@2!hr° Ä@2!ÊÀƒn@0ä¼j~ùÛ@0äÖ¡aäø@0O „M@0b¶®}V@0O „M@0‘-w1Å@0O „M@0HË’:?‡YÍ_?Ï[äe?iT£C~t?ƒúʳ_Ä?ƒ=rµE=?‰©OO ¨?†Óß +tõ@@@@@,@,?ð?ð?ð?ð?ð?ð?EB +t>µ-•@?7Q m­¸?þ‘Š¥@§žCÈÍ@«qDQ®`?VF‹ôc/?0Ùeos ?²§å½?fåZÂRé@ŸiLò‰?@;@¢ ÌÌÌÍ@¢ŽøÔýó¶@¢ ÌÌÌÍÁ.„€@¢ ÌÌÌÍÁ.„€@¢ ÌÌÌÍÁ.„€@¢ ÌÌÌÍÁ.„€@¢ ÌÌÌÍÁ.„€@ ~mV@ ~TzáG®@ ~mVÁ.„€@ ~mVÁ.„€@ ~mVÁ.„€@ ~mVÁ.„€@ ~mVÁ.„€@8™*0U2b@8£t¼j~ú@5 +^5?|íÁ.„M‰ûçm@4š~ùÛ"ÑÁ.„QnÙ‡@4xDЩ*Á.„NÜC,¥@4xDЩ*Á.„NÜC,¥@4xDЩ*Á.„NÜC,¥?°{QBãï@8#˜@8¾:@8 >+@8Iç@8Ù?½=,ÜŠ{g@8Î÷@8i§@8Å@8S@8û—?§K¥xMÐR@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø<@­ÒùÛ"Ðå@­Òú¬1@­ÒùÛ"Ðå@­Òú^5?}@­ÒùÛ"Ðå@­Òûçl‹D@­ÒùÛ"Ðå@­Òÿ;dZ@­ÒùÛ"Ðå@­Òý²-V@­ÒùÛ"Ðå@­ÓA‰7L@®ÿ‰7KÇ@®ÿÊÀƒ@®ÿ‰7KÇ@®ÿ@®ÿ‰7KÇ@®þþùÛ"Ò@®ÿ‰7KÇ@®ÿ›¥ãT@®ÿ‰7KÇ@®ÿ`A‰7@®ÿ‰7KÇ@®ÿ+ I@3ð4mÅÖ8@3ð'RT`ª@0£÷ÎÙ‡@0¡ä÷eýŠ@/¿;dZ¬@/¹õY³Ð|@/#¼ÓZ…ˆ@/C,¥zy@/#¼ÓZ…ˆ@/5?|í’@/#¼ÓZ…ˆ@/]cˆe•?|öOÿÝ? ÿ1‡åH?‘*"AaIÐ?Œä%—ëš?‘Dj?’ëÆ[2?|öOÿÝ?’?Á• ñ:?Œqç©Fü?ni"Í š?ÏtP°*?’›â¾Ð'µ?‚Ÿ JŠÅ?îŠõ ?ƒmÕ+&¬Š?„XïWÉò~?†‰Oú|q?‡<û¡71@@@@@@?ð?ð?ð?ð?ð?ð?TS™ß8?P±¥D¸?5hápÿ8‚?ç® Ü±@­Òüä30@®ÿò˜ ¬?Tê´Zª²î?2ØO‡R?¶c—XZG®?qjôW“â`@Ÿfšžï¾@=@­ß²-V@­ßª=p£×@­ß²-V@­ßw1Å@­ß²-V@­ß Ä›¥â@­ß²-V@­ß Ä›¥ã@­ß²-V@­ßšQÎ@­ß²-VÁ.„€@Ÿ<Ÿ¾vÈ´@Ÿ<³3333@Ÿ<Ÿ¾vÈ´@Ÿ<¥”¯O@Ÿ<Ÿ¾vÈ´@Ÿ@ª²‘ë…¸@ª²ˆõÂ[@ª²‘ë…¸@ª²4Ö¡b@ª²‘ë…¸@ª²hÛ@ª²‘ë…¸@ª²’×s@ª²‘ë…¸@ª²°ò{²@ª²‘ë…¸@ª²’þÅm]@¨Ót¼j@¨Ì1&é@¨Ót¼j@¨ÕY³Ð|@¨Ót¼j@¨ÓÝ—ö+@¨Ót¼j@¨ÔSŽóM@¨Ót¼j@¨Ò䎊r@¨Ót¼j@¨ÓÐ|„¶@8Bò䎊@8C©*0U2@3i‡+ @3jŒL˜_@2b-V@2aø -à@1ÿò䎊r@2hr° Å@1ÿò䎊r@2ëíúCþ@1ÿò䎊r@2 [À7?°:-%šÀ?dYûë„{?’Õ ØÎ†{?Ž,OêK˜u?‘‘n{ÆäK?’»«ÒñŒ?žˆ2}?’&u÷E»@?‘½ÀèÑmK?’"Š6›Wz?‘Ð¥uvæ‹o²¿4.ƒ‡ˆ?Øé9ð?(L5}y@¦‹%Ë~‘%@¨¿cnï?!_¨æG»?9òӢס?=FÞ"”§W?ûfºyâ@Ÿs ©§Íû@@@¦Ìw@¦Ìw@¦Ìw@¦ÌðoiDg@¦Ìw@¦Ìðÿ—$s@¦Ìw@¦Ìð|„µÝ@¦Ìw@¦Ìí\ú¬Ù@¦Ìw@¦ÌíúCþ]@©Ž¡ÊÀƒ@©Ž¡ÊÀƒ@©Ž¡ÊÀƒ@©Ž¢‚@·€@©Ž¡ÊÀƒ@©Ž¡ÿ.Hè@©Ž¡ÊÀƒ@©Ž¢\(ö@©Ž¡ÊÀƒ@©Ž¢u%F @©Ž¡ÊÀƒ@©Ž¡°‰ '@0ð4mÅÖ8@0ð:û~‘@.MV“@.L篷è@.h1&éxÕ@.h1&éxÕ@.kjçÕfÐ@.kàÞÒˆÏ@.kjçÕfÐ@.k)^ž @.kjçÕfÐ@.kjçÕfÐ?É^žQ5P‚?äm°û0Ž?‘G¿yÛ?ï?‹ë¤½?‡á?‘Dj?ÛF»0?ÐbMçê_x?’ ,øÕC©?«'Q™µ?>\‰å‘?â2„&ÿh?{L Õ¢D?€bMÕky?Œµ3‰;šÏ?‚‹¡8*ú?‚ìxqC?†¯Mž684?†¼Š˜L¥÷@@@@@,@*?ð?ð?ð?ð?ð?ð¿S‰üÖü¿7¥’L?B\‰Ã vS?"—´\{Yë@¦ÌîѪ@©Ž¢EÆŽ*?Q¦¥¨äÈØ?1“ó»Ž@?ž(+q:ºã?ZØ4ä§[†@ŸsY²¥@A@§ÿ +=p£×@§ÿ +~ùÛ#@§ÿ +=p£×@§ÿ +ŒL™@§ÿ +=p£×@§ÿÛ‹¬r@§ÿ +=p£×@§ÿ º^5?@§ÿ +=p£×@§ÿ1ø @§ÿ +=p£×@§ÿr° Å@¥q“t¼j@¥qÔýó¶@¥q“t¼j@¥qâëC@¥q“t¼j@¥qbMÔ@¥q“t¼j@¥q_ö“@¥q“t¼j@¥q‡ü¹$@¥q“t¼j@¥qµsê³@3Y*0U2b@3Y‡+ @1…?|í‘h@1„%®æ1ø@1t¼j~ú@1ohÛŒ@0”mÅÖ8†@0‘Þi­BÄ@0”mÅÖ8†@0‘Ä2ÊW§@0”mÅÖ8†@0’GE8ï5?|öOÿÝ?Kb½™×?‘½ÉaR º?Ça_b‹?’PY8~Qj?‘ø)±'3?|öOÿÝ?’V"y$R?Ê +ä\ä?‘< /0ç˜?‘ýuãá$6?‘pN.>7E?‚uÞ@>N ?Å9–o?ƒ¡É^&Ö?ƒË´ÔC¶¼?‡æê7²zE?’ymícw\@@@@@,@*?ð?ð?ð?ð?ð?ð¿C »ù ¿G¡T´?2ºïW²åy?1º>Œ`@§ÿ @3ÞJ@¥q]ÐÆã?R‡oÊ-'¼?QAfwºàŽ?±&¨­¾¬Â?¬à£ <@Ÿf‚²¦³;@B@¥ñÚŸ¾vÉ@¥ñÙ™™™š@¥ñÚŸ¾vÉ@¥ñÙ³Ð|…@¥ñÚŸ¾vÉ@¥ñÛ‹¬q@¥ñÚŸ¾vÉ@¥ñÛšt@¥ñÚŸ¾vÉ@¥ñÚ¬Ùè=@¥ñÚŸ¾vÉ@¥ñØÇâ‚A@¢ÉPå`A‰@¢ÉQhr°!@¢ÉPå`A‰@¢ÉP-à @¢ÉPå`A‰@¢ÉPbMÒò@¢ÉPå`A‰@¢ÉP:û~‘@¢ÉPå`A‰@¢ÉP¾ í)@¢ÉPå`A‰@¢ÉP°ò{³@5¥öý!ÿ.@5¥2a|Ú@1ë¥ãS÷Ï@1ëxFÜ]@0È“t¼j@0È“t¼j@0?ò䎊r@0@°ò{²ÿ@0?ò䎊r@0@HðŽ@0?ò䎊r@0?ß;dZ?|¬Çëý ?Úþþ³?‘"žæÆó¡?Œ:Z2‚b?‘¾%î +ã?ø·-/ge?}Ñ¿ž,?’ ŠŠ¤Hì?¹º–Èj?>\‰å‘?‘ ^Íü?ÿ?±—'¶Ü+?‚oÁÆÜ§ö?ŒÆò/¢äÍ?‚yî8Á$?ƒGϵ¨í'?†Ü‘ °Ô?‡ã ËÄž@@@@@(@,?ð?ð?ð?ð?ð?ð?r}M@¿([p?0a|ăó?6Y ²ª¼@¥ñÙêRO¼@¢ÉPò”Z?PU&„µ"°?8—¤ëÇò?¬¥ Cv??~`(üÄç˜@ŸfüÍè8@C@¯iÒn—P@¯iÒn—Q@¯iÒn—PÁ.„€@¯iÒn—PÁ.„€@¯iÒn—PÁ.„€@¯iÒn—PÁ.„€@¯iÒn—PÁ.„€@¯Ê=p£×@¯Ê=p£×@¯Ê=p£×Á.„€@¯Ê=p£×Á.„€@¯Ê=p£×Á.„€@¯Ê=p£×Á.„€@¯Ê=p£×Á.„€@4Y*0U2b@4XÇâ‚@¸@0ÜIº^5@Á.„M‰ûçm@06§ï²-Á.„QnÙ‡@/u¨Xy=ÚÁ.„NÜC,¥@/u¨Xy=ÚÁ.„NÜC,¥@/u¨Xy=ÚÁ.„NÜC,¥?}Ñ¿ž,@8#˜@8¾:@8 >+@8Iç@8Ù?|¬Çëý @8Î÷@8i§@8Å@8S@8û—?‚¯­Ù¤Áµ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøD@¦°MOß;d@¦°W +=p¤@¦°MOß;dÁ.„€@¦°MOß;dÁ.„€@¦°MOß;dÁ.„€@¦°MOß;dÁ.„€@¦°MOß;dÁ.„€@©ªo²-@©ª}²-W@©ªo²-Á.„€@©ªo²-Á.„€@©ªo²-Á.„€@©ªo²-Á.„€@©ªo²-Á.„€@9 xFÜ@8ñhr° Å@3ë¥ãS÷ÏÁ.„M‰ûçm@2ù7KƧðÁ.„QnÙ‡@2uµsê³hÁ.„NÜC,¥@2uµsê³hÁ.„NÜC,¥@2uµsê³hÁ.„NÜC,¥?Ÿ‹‘+-/Ü@8#˜@8¾:@8 >+@8Iç@8Ù?óA[ØïF@8Î÷@8i§@8Å@8S@8û—?Ä`âe@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøE@¥¶Ü¬1'@¥¶ë Iº@¥¶Ü¬1'Á.„€@¥¶Ü¬1'Á.„€@¥¶Ü¬1'Á.„€@¥¶Ü¬1'Á.„€@¥¶Ü¬1'Á.„€@§¥Àƒn˜@§¥¾¸Që…@§¥Àƒn˜Á.„€@§¥Àƒn˜Á.„€@§¥Àƒn˜Á.„€@§¥Àƒn˜Á.„€@§¥Àƒn˜Á.„€@7Ì]cˆe”@7ËP°ò{³@30Ä›¥ãTÁ.„M‰ûçm@2U`A‰7LÁ.„QnÙ‡@2Vý!ÿ.IÁ.„NÜC,¥@2Vý!ÿ.IÁ.„NÜC,¥@2Vý!ÿ.IÁ.„NÜC,¥?|¬Çëý @8#˜@8¾:@8 >+@8Iç@8Ù?°¼x‡Ç…Ä@8Î÷@8i§@8Å@8S@8û—?†' +³}÷B@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøF@¦ñ÷ÎÙ‡@¦ñÿ;dZ@¦ñ÷ÎÙ‡@¦ñúxl"h@¦ñ÷ÎÙ‡@¦ñö¡aä÷@¦ñ÷ÎÙ‡@¦ñöÈ´9X@¦ñ÷ÎÙ‡@¦ñ÷Xâe@¦ñ÷ÎÙ‡@¦ñùrGE8@¡cW +=p¤@¡cdZ¬@¡cW +=p¤@¡cSŽóMj@¡cW +=p¤@¡c["Ðå`@¡cW +=p¤@¡cR×sü@¡cW +=p¤@¡cVý!ÿ.@¡cW +=p¤@¡cUŽ!–S@804mÅÖ8@8.V“u@3Ìí‘hr°@3͸ºÇË@3lj~ùÛ#@3l]cˆe•@2Œ¿±[W?@2'RT`ª@2Œ¿±[W?@2U›=È@2Œ¿±[W?@2Aò×t?°¼x‡Ç…Ä?‘" Á°–•?‘\H{gX ? Ìç,Z?”z|œèç™?–"ûe”M?}Ñ¿ž,?’ÚlE0º?Å)Ì_“?’:u.ý ?–Â4¨ß?”æâ„o?µeão‘ñ?·ïö)h?ƒ~¨õ/¥O?…”rsw?ŠE§e,¤?”8©èÈí@@@@@,@,?ð?ð?ð?ð?ð?ð?./”0¸¿n) èÉ?P·6È;Õõ?R®îH|²Š@¦ñ÷±5l/@¡cW¸ªZJ?aÏk½Ù?yß^*˜‰ø?¶ö½×¸ ü?ê!M^#­b@ŸoŸÌ˜:(@G@ªü.—Oß@ªü5Â\(@ªü.—Oß@ªü3Mj@ªü.—Oß@ªüAohÜ@ªü.—Oß@ªü;‹¬q@ªü.—Oß@ªü.;Í5¨@ªü.—Oß@ªü)*0U2@ª>ûçl‹D@ª?ƒn™@ª>ûçl‹D@ª>úxl"h@ª>ûçl‹D@ª? w1Æ@ª>ûçl‹D@ª>û/ìVÕ@ª>ûçl‹D@ª? [À@ª>ûçl‹D@ª>ü¹#¢œ@7Âò䎊@7¿Ë’:)Ç@5?|í‘h@5>«6z@4iÛ"Ðå`@4k’:)Çz@4O „M@4?|í‘i@4O „M@4éá°‰ @4O „M@4-à ?›’qvš°•?Žd±Ìº?”‰oüq u?ž\ôÖeú?œhÈï?—oN„R?3ßa=„?“Á4œÝi?˜û9]t`? ZÁ».œ?žßÂÚÅ8‡?šÛ’ä|?´÷#i›ÄN?’K•ªQ5?’ÌRû ã?”AXÄ|åy?šz"+;‚á?›°Ô¤A]@@@@@,@(?ð?ð?ð?ð?ð?ð¿fþœH½Â?{våo‚¾‚?eäDF ,w?à;—Þ„ò?¸åÇè/5@Ÿk©¶’@H@®€¢MÒñª@®€¢MÒñª@®€¢MÒñª@®€¤ xF@®€¢MÒñª@®€ŸØ­«Ÿ@®€¢MÒñª@®€¡ohÜ@®€¢MÒñª@®€ uöý"@®€¢MÒñª@®€ Ñ·X@žÆƒn—@žÆƒn—@žÆƒn—@žÆò×s@žÆƒn—@žÆ‰7Kƨ@žÆƒn—@žÆ‚ Iº^@žÆƒn—@žÆƒ¯·é@žÆƒn—@žÆ‚&€I@35S&Á¾@352a|Ú@1k¥ãS÷Ï@1k…¸Që@1,j~ùÛ#@1+çl‹C–@0½cˆe”°@0¼‘ÑN;Î@0½cˆe”°@0¼Æ?@0½cˆe”°@0½!ÿ.Hé?|¬Çëý ?W[†?‘=?ùKh?ŒÇQ´—;}?a¢¶û\?™pf°Žœ@Ÿiˆqu´'@J@ª;ùÛ"Ðå@ª;ú¬1@ª;ùÛ"Ðå@ª;ûdZ¬@ª;ùÛ"Ðå@ª;ú^5?}@ª;ùÛ"Ðå@ª;úŸ¾vÊ@ª;ùÛ"Ðå@ª;ø†YJö@ª;ùÛ"Ðå@ª;øï4Ö¡@¯ w@¯ îÙ‡+@¯ w@¯ ï\(õÄ@¯ w@¯ ðå`A‰@¯ w@¯ ï²-@¯ w@¯ ïhÛ@¯ w@¯ î;Í5§@5¹Œ~($@5²þÅm^@/¤“t¼j@/£ñA [À@.ÄZ¬1@.Ä?åÉ@-zÇË)_@-z)Çy¦µ@-zÇË)_@-{"Ðå`B@-zÇË)_@-zÇË)_?|öOÿÝ?ß‹’bÏ?‘*"AaIÐ?‹¯eU5?‘2A¥Ø?¸û:?1·†Æjñ?’ aÒ¹zï?€s8rÅ?-õI¸`K?Ø¥²À<(?Uÿyu”#?‚íWçé„?Œáò¯ž¼ù?‚Ö˜>µDá?‚ôhBì^?†špk Y?†žóB» “@@@@@@?ð?ð?ð?ð?ð?ð¿-U–½À¿­†€?(U?¨”y×? òôéáãü@ª;ù¶¼ @¯ îÞ¯Ç,?Hbª3lþ?AJ-•x+?ŸÖ´¹[$?|Œ‹é@ŸgJª@¥ô2° Äœ@¥ô-Òñ©ü@¥ô2° Äœ@¥ôÀ qv@¥ô2° Äœ@¥ô¤%®æ1@¥ô2° Äœ@¥ôèr° Å@¥ô2° Äœ@¥óªqÞi®@¥ô2° Äœ@¥ô¬1@9Q|ÚQ@9BÞÑ·@6¦‡+ J@8QÊÀƒn@5Æ“t¼@6–ö”Fs‚@5a:’£S@7uŽ!–S@5a:’£S@5DÉ…ðoj@5a:’£S@5%+ÓÃa?Á¯Ì:¦å%?̰ùC?Ђ·x6?ÀáÜVÖI?¶ÏÇÖ¤¤?¸Ÿû•Öæ?¾„CÚ–•F?Ô¥(Ÿ‚Щ?ÆÆh2áEö?¸§p¦ÿæë?«¬5Kؘ£?Èç +ˆÍ5?ÄR¸P¸?➪“ûŸU?Éÿ*'þn?ÜýÙì 2,?µÝƒÏþ§?±¼BXFzS@@@@@&@*?ð?ð?ð?ð?ð?ð?T~| P¿¦m¼í·4?“¿~¡>?¬à–ú7@¨Ûj]©Ðø@¥ô + åžò?¯™˜òÔ?Ãõq§^×@»Ý§b«F@8æÛNE½ù@ŸmIY€|ü@L@¯› Iº^@¯šót¼j~@¯› Iº^@¯› ’:)Ç@¯› Iº^@¯› +ŒL˜@¯› Iº^@¯› Òñ©ü@¯› Iº^@¯›?åÉ@¯› Iº^@¯›þÅm\@Ÿ\—Oß;@Ÿ\›¥ãSù@Ÿ\—Oß;@Ÿ\¥ãS÷Ï@Ÿ\—Oß;@Ÿ\¤÷eýŠ@Ÿ\—Oß;@Ÿ\¬¿±[V@Ÿ\—Oß;@Ÿ\  qw@Ÿ\—Oß;@Ÿ\ÂZîc!@7ëµsê´@7ä!-w2@3‚° Ä›¦@34Ö¡aå@2²-V@2Šxl"h +@1¸DЩ*@1³S&Â@1¸DЩ*@1·+ Iº@1¸DЩ*@1¬Æ??гá‡}?•.å§ØjM? ±ubÊÅ5?‹¹GüÞõ?“êôÉøX?œˆš—I?}Ñ¿ž,?šr’nc?›«9ØYº,?9ÍÇ~FÀ?’¯dL¶t?–ẕ?ˆïhƒEõ¦?ž=fA:?“'ü#šgã?‰hS—p]Ð?€=P|?žTIœ@@@@@(@&?ð?ð?ð?ð?ð?ð?y$ÓÁÌ?d~×þ?ePEI?U7™°m‹‹@¯›ôR @Ÿ\§ï¢e?‚,1¼\µ?u­Ñœ=©·@Þ&;•©õ?ñ©’}…“Ã@ŸgØ\¼HŠ@M@£X4¼j~ú@£X4¼j~ú@£X4¼j~ú@£X5öý!ÿ@£X4¼j~ú@£X5?|í‘@£X4¼j~ú@£X4ðØDÐ@£X4¼j~ú@£X4mÅÖ:@£X4¼j~ú@£X4záG®@¨ã(õÂ@¨ãj~ùÛ@¨ã(õÂ@¨ãú¬Ùè@¨ã(õÂ@¨ã„µÜÆ@¨ã(õÂ@¨ãžì¿±@¨ã(õÂ@¨ã¹#¢œ@¨ã(õÂ@¨ã¬1'@2p4mÅÖ8@2p-à r@-ëÆ§ï²@-ëÓÃa@@-cn—P@-bÐå`A‰@,ëjçÕfÐ@,ë6z—@,ëjçÕfÐ@,ëjçÕfÐ@,ëjçÕfÐ@,ë6z—?É^žQ5P‚?°çR;?‘ÌË>¯f?‹ËØ|*(?ÿ £‰¸9?²õ/]?ÐbV‡,?’˜‰%F²?~ËQ§?;ß $Þû?ÚÌA B{?M\³Ù“@?€b¡´ñ@?Œµ3‰;šÏ?‚uÞ@>N ?‚ù8 ±^?†’Õaì+’?†’Õaì+’@@@@@*@ ?ð?ð?ð?ð?ð?ð¿, Ÿp>û¤ˆà?Ñ‹GK°x>ú”b9Ô‡@£X4¦ÖÑ@¨ãªáÜ‘?%ø³¹í? )º Îpn?E“•ò€t? ¸I £j,@Ÿs +Ý~¤¡@N@¥bl1&é@¥bl1&é@¥bl1&é@¥bnËûµ@¥bl1&é@¥bra|Ú@¥bl1&é@¥bw§†Â'@¥bl1&é@¥bx}¿H@¥bl1&é@¥bw +=p£@ý-V@ý-V@ý-V@ý1Å@ý-V@ý1Ä2ÊX@ý-V@ý6E¡ÊÂ@ý-V@ý7Xâ@ý-V@ý6”Fsƒ@0Bò䎊@0Be+ÓÃ@-ðå`A‰7@-íBÃÉîÌ@-h1&éxÕ@-b©“ àß@--úCþ\’@-#S&Â@--úCþ\’@-#¯·éú@--úCþ\’@-#ˆe”¯N?É^žQ5P‚?Úþþ³?” +Ÿ”îtI?“ׂa†Üü?–~9n4ºÀ?—oN„R?ÐbMçê_x?’&u÷E»@? Dñ£P?‘§›ßÉîj?’…4Ü.?’ Óº^?€bMÕky?Œ».êxóÚ?‚Ì ÝŽ‚8?„l¯¸‰ŒÎ?†ïRÉv‘Ñ?‰Â“yä–ê@@@@@,@*?ð?ð?ð?ð?ð?ð¾ü5Ÿu€?âWO?Cj®Ú=S?&PõNkxO@¥bw’}eõ@ý6™Ç ?R¥é[Ž?5 /|ÿíB?‘ÞWÔ ?`I¿7"Ö@Ÿrß“€·®@O@¡ ûdZ¬Á.„€@¡ ûdZ¬Á.„€@¡ ûdZ¬Á.„€@¡ ûdZ¬Á.„€@¡ ûdZ¬Á.„€@¡ ûdZ¬Á.„€@’ÝáG®{Á.„€@’ÝáG®{Á.„€@’ÝáG®{Á.„€@’ÝáG®{Á.„€@’ÝáG®{Á.„€@’ÝáG®{Á.„€@8Ù*0U2bÁ.„>¤µÜÆ@4Ù‡+Á.„M‰ûçm@3V”Á.„QnÙ‡@2øDЩ*Á.„NÜC,¥@2øDЩ*Á.„NÜC,¥@2øDЩ*Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøP@­4{çl‹D@­4{çl‹E@­4{çl‹D@­4xÔýó¶@­4{çl‹D@­4}ÈK^@­4{çl‹D@­4ÿÿÿÿ@­4{çl‹D@­4zîcŠ@­4{çl‹D@­4|64@ªÂq©ûçm@ªÂoß;dZ@ªÂq©ûçm@ªÂoÒòä@ªÂq©ûçm@ªÂnzáH@ªÂq©ûçm@ªÂpË)^ž@ªÂq©ûçm@ªÂt•*™@ªÂq©ûçm@ªÂt¯O „@5Ô xFÜ@5ÓÉîËû@3W+ Iº@3V¡aä÷f@2K"Ðå`B@2H*™0¾@1Åœàu÷@1Áÿ.Hè§@1Åœàu÷@1ÄðØDÐ@1Åœàu÷@1ÄmÅÖ8†?€‚ñêã ?‘€5{ºÎ#?‘ê ÷“'?Œ'õ‚$5ñ?’(æ„+Zk?‘‚ÊŸû©?1·†Æjñ?•Ð\ÄÙ?“„;Ë~½ú?ð{¥âdû?’ÞH†<²?›ªU3Îp?ƒ{¬ÉV?3ßa=„?„ü›ðÓ?ƒý¥ñÍú?‡…¤$Ó?ˆk! ¨l@@@@@,@"?ð?ð?ð?ð?ð?ð?'Ç}}`?OŸ“ƒ¨?C°[V‘ZÌ?.Ìüª‰š]@­4|»Ê>•@ªÂqë­¼ ?c”P±8Dj?OÏj.M?Ò6½Ÿh?¦ò,.Wê@ŸgsÐ8a@Q@«lgl‹C–@«lk ¿%Û@«lgl‹C–@«lm]j^ù@«lgl‹C–@«lxìÿb)@«lgl‹C–@«lx+ÞÃÆ@«lgl‹C–@«l…ž[Š@«lgl‹C–@«lzô«Ž×@™Ö“u@™ÂܶÆ@™Ö“u@™ê—µ¤<@™Ö“u@™¿ü›–ó@™Ö“u@™Û­„hò@™Ö“u@™ÌÌ,?@™Ö“u@™³`»úÛ@7ÿ–»˜È@8DóÁâ@3óS÷ÎÙ@3ù6a—Š0@3lj~ùÛ#@3kí/+Н@2}cˆe”°@2q”Gg"µ@2}cˆe”°@2q‹Þ +ÓŒ@2}cˆe”°@2pÝC»?¡D6?E?š×§að?—Rªð‰=»?‘°ûlð~?éñLÉeT?–%t;Ò?€Z=ú‚¡?šõÈí8?“8šYˆðà?–ö«ÂbÚ‘?¤Ž`äëî?˜KaÐOëb?¢&—ìô?“òipžR? Ý®ÙÐ5?6 aµ"?=E8šº?”ˆº¶,:‹@@*@(@&@7@3?ð?ð?ð?ð?ð?ð?kßñ®¿¸¥(?aç‘­"¡’?`0Ö²kÿs@«lx[8o@™ÄíìŒ?{[Dìs?„Œðú— +w?ãÂ@`žŸ?ù„˜Ç…^<@Ÿl*r>@R@£/Ÿ¾Á.„€@£/Ÿ¾@£ŸoÒó@£/Ÿ¾@£ži­BÅ@£/Ÿ¾@£ë…¸R@£/Ÿ¾@£ª0U2b@£/Ÿ¾@£¦s×Ü@ž­Ü(õÂÁ.„€@ž­Ü(õÂ@ž­Ã,¥zy@ž­Ü(õÂ@ž®$÷eý‹@ž­Ü(õÂ@žº?|í‘h@ž­Ü(õÂ@ž­´mÅÖ9@ž­Ü(õÂ@ž­“t¼j€@0òÃÉîËûÁ.„>¤µÜÆ@) +~ùÛ"Ð@)× +=p£@(wOß;d@(›²þÅm^@&¸7´¢3œ@,;À6âì@&¸7´¢3œ@& ÞÒˆÎq@&¸7´¢3œ@&¤%®æ1ù@8 +Näy?ÿ﯒?’,³Zêª@ŸÄ67ÅU?˜ +0˜ggk?˜ñ<óâg…@82rê?’j•×›c?›0–4,Þ@{Æ5_?-C i|â?¬ðþÒg(@8L?àQdËЈ?‡»¢Øˆ‹@ÄéKðo?†ïRÉv‘Ñ?ž#¢¦‘6@@@@$@,?ð?ð?ð?ð?ðøøøøøøøøøøøøS@«·ºáG®@«·»¥ãSø@«·ºáG®@«·¶Ov`@«·ºáG®@«·¾Ñ·@«·ºáG®@«··Á½¥@«·ºáG®@«·µÏªÍŸ@«·ºáG®@«·¸†YJõ@©@@©H1&éy@©@@©Hð@©@@©?U›= @©@@©@uöý"@©@@©4ôgŒ9?‘aYZ†«q?‘އ Àí?‘pN.>7E?©›¿Ínoð?[™ÕÈ™8?ˆïhƒEõ§?†Á{0Ÿà®?ˆ¾þúWZ‹?Š—à `ž@@@@@&@*?ð?ð?ð?ð?ð?ð¿€Dû¿aòÜ2?Jøµì’ÊA?E°*ÀÄ!ø@«··^lÈ@©?Ô"k4?Z_¥2ý¾w?hòsƈ?ª{…ÊR»?ͨˆß”n@Ÿq£ºVËè@T@¨° Ä›¦@¨¯ß;dZ@¨° Ä›¦@¨°Hð@¨° Ä›¦@¨°|„µÝ@¨° Ä›¦@¨°°ò{²@¨° Ä›¦@¨°°ò{²@¨° Ä›¦@¨±&éxÖ@«dæéxÔþ@«dæéxÔþ@«dæéxÔþ@«dèXy=Ø@«dæéxÔþ@«dìL˜_@«dæéxÔþ@«dçE8ï6@«dæéxÔþ@«dè´9X@«dæéxÔþ@«dç_oÒ @4[¹Œ~($@4[ô‡ü¹$@1c÷ÎÙ‡@1d!-w1@0Ͳ-V@0Ìú¬Ùè>@0œÚQÎ@0(Œç°@0œÚQÎ@0cˆe”°@0œÚQÎ@05¨Xy>?|öOÿÝ?¦Ì '?‘ùé éµ??Œ¸ðËb?‘VšÐ^Ø?ý‰w'¬?|¬Çëý ?’p RN%Î?‘´"«Õa?‘§›ßÉîj?‘=d¦^™?›ªU3Îp?‚‘´…=Ca?ŒöOÿÝ?ƒúʳ_Ä?ƒv_.^?‡?®\Âä?ˆk! ¨l@@@@@,@,?ð?ð?ð?ð?ð?ð?0jÂh`?+š{PÀ?v¼x$N»?"—|ú>‚@¨°l}dä@«dçb¶6? cñPG‚¿?C µ_=Õ?Lwz¨ØñL?’5ËPg$@ŸfÏbÙ +@U@£ÛÉ7Kƨ@£ÛÏß;dZ@£ÛÉ7Kƨ@£ÛÈe”¯O@£ÛÉ7Kƨ@£ÛÅÉã@£ÛÉ7Kƨ@£ÛÍÒñ©ü@£ÛÉ7Kƨ@£ÛÇï²-@£ÛÉ7Kƨ@£Û¼ÓZ…‰@¢`(õÂ@¢`XbN@¢`(õÂ@¢`e+ÓÄ@¢`(õÂ@¢`×sü@¢`(õÂ@¢`<65@¢`(õÂ@¢`ÌcñB@¢`(õÂ@¢`dZ¬@7įO „M@7Ãn—P@3|í‘hr@3Œ(õÂ\@3ï²-@3¶®}Vm@2._oÒ @2)ùrGF@2._oÒ @2'eýŠÚº@2._oÒ @2¿HË’?€‚ñêã ?•ìspîî?”Uy*ð>ýÜÇœ‰LØ>ûˆü²Á$®@¢Îh†›…Ú@•‰¼Î(Š?½~'b¢? Fýë¿Þ?H¹½u[9?DFLx‹0ï@Ÿgpôa@X@«˜—Oß;@«˜‹Æ§ïž@«˜—Oß;@«˜“œ¾à@«˜—Oß;@«˜’a|Û@«˜—Oß;@«˜ªÍž„@«˜—Oß;@«˜‘ÑN;Í@«˜—Oß;@«˜’䎊r@¤y4¼j~ú@¤y3¶E¡Ë@¤y4¼j~ú@¤y:Ÿ¾vÊ@¤y4¼j~ú@¤y9b¶¯@¤y4¼j~ú@¤y:)Çy§@¤y4¼j~ú@¤y;²þÅn@¤y4¼j~ú@¤y=¥œß@8ãg ù l@9ªdÂø8@4©‡+ @4¨Ôýó¶F@3V”@3cˆe”¯@2á:’£S@2ÝjOv@2á:’£S@2ÚÀƒn˜@2á:’£S@2Û…¸Qì?±ÿ}ö?—TÛ’}÷”?›£=Ñã5?šniÙÊ¢Ð?–(Ži´™^?’Ýå"çX?™™™™™™š?“«ö„@×®?“½ ™¸‹ì?—,àÐÑž?—å$ZÌÆ?”÷\Å©U?½&·-æ¨?–xéCìZÒ?ˆAᆽÃí?†ü¢q+ÄU?‘HAõY‚§?’Oûh´6c@@@@@,@&?ð?ð?ð?ð?ð?ð?W,d“œ?`"Ôa?IæOý*(?(ÍB¡Óœñ@«˜áé­w@¤y:î%ø?/%-³Á`?F32ƒH(Ì?E{YH™$?|?qÒŒ@Ÿpé&Ìq@Y@£ù¤Ý/ @£ù¥¸Qì@£ù¤Ý/ @£ù¢&€I@£ù¤Ý/ @£ùŸ;dZ@£ù¤Ý/ @£ù¥ýŠÚº@£ù¤Ý/ @£ù¥m\ú­@£ù¤Ý/ @£ù¢ÃÉîÍ@®Ì A‰7L@®Ì¡G®{@®Ì A‰7L@®Ì ÞÒˆÎ@®Ì A‰7L@®Ì¥`A‰7@®Ì A‰7L@®Ì£ñA [@®Ì A‰7L@®Ì£,¥zx@®Ì A‰7L@®Ì§ü¹#£@5Ù*0U2b@5ÙÎ_oÒ@3.5?|í‘@3-}¿HË@2H“t¼j@2GOß;d@2(è§æ›@2(1&éxÕ@2(è§æ›@2(Ë’:*@2(è§æ›@2&€IQƒ?1·†Æjñ?‘‘Ç`[?‘:€¾¶ˆ?Œ‚èõЊ?“Ýâqß?”ÙA!Xá¨?…ÅBðrç?“?xr¢I?³2ºŽ'?èÊ\då?•Ÿ6mþ)¢?“ 3—·²W?‚oÁÆÜ§ö?Ñ¿ž,?…~ÆÎÇ$‡?…bv{3dZ?‰®ââP\?ˆT“Ÿÿ@@@@@"@$?ð?ð?ð?ð?ð?ð¿"aã ?QÉ^̤?3};t$ß?7b|(Íkr@£ù¤ùHü@®Ì£œœà?SfQ +³?W:KÖãs°?®ÒŸHý|?±h9lÚþ@Ÿg¥/e+@Z@¨˜(õÂ\@¨˜)º^5?@¨˜(õÂ\@¨˜7süQ@¨˜(õÂ\@¨˜2ˆÎp;@¨˜(õÂ\@¨˜?|í‘h@¨˜(õÂ\@¨˜>i­BÄ@¨˜(õÂ\@¨˜fö”Ft@¦7¬1'@¦7çl‹E@¦7¬1'@¦7ŠÚ¹õ@¦7¬1'@¦7ÓZ…ˆ@¦7¬1'@¦7=ÈL@¦7¬1'@¦7&Á¾@¦7¬1'@¦7}¿H@4òÃÉîËû@4ò-V@0û Iº^@0ôðØDÐ@0'KƧïž@0!ë…¸R@0:Ô,<ží@02@·€4n@0:Ô,<ží@0&¸ºÇ@0:Ô,<ží@0'ÕfÏAò?|öOÿÝ?’g½þË£?‘Ú¾¯ïé?Ž‚¨Ø†{~?žî üÑ)?ºæ'Ýt?|öOÿÝ?’p RN%Î?ÏtP°*?‘§›ßÉîj?—÷Ë5D«ç? új^œqò?ƒ~¨õ/¥M?ŒÐ¤Âÿê?…/‡ÙX·³?…bv{3dZ?a…眷D? tÆùlŠ@@@@@ @,?ð?ð?ð?ð?ð?ð?~#|îK¿S{õD?VáŽã„Vn?FrŸ\Þ@¨˜4¸7ÜÄ@¦7BÐz?p·§W¨ZÁ?aüþ?Sî?ã £wšºp?Ê•ZŒ{Ô@Ÿax@15d@[@¥j~ùÛ#@¥hõÂ\@¥j~ùÛ#Á.„€@¥j~ùÛ#Á.„€@¥j~ùÛ#Á.„€@¥j~ùÛ#Á.„€@¥j~ùÛ#Á.„€@zLÌÌÌÍ@zN\2@zLÌÌÌÍÁ.„€@zLÌÌÌÍÁ.„€@zLÌÌÌÍÁ.„€@zLÌÌÌÍÁ.„€@zLÌÌÌÍÁ.„€@7ò䎊@7XÛIÇ@3óS÷ÎÙÁ.„M‰ûçm@3ÐA‰7KÇÁ.„QnÙ‡@3&YJôðØÁ.„NÜC,¥@3&YJôðØÁ.„NÜC,¥@3&YJôðØÁ.„NÜC,¥?…Hùg @8#˜@8¾:@8 >+@8Iç@8Ù?ƒÔo"ë–@8Î÷@8i§@8Å@8S@8û—?¡›Y,ën@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø\@¡)gï²-Á.„€@¡)gï²-Á.„€@¡)gï²-Á.„€@¡)gï²-Á.„€@¡)gï²-Á.„€@¡)gï²-Á.„€@¦hœ(õÂÁ.„€@¦hœ(õÂÁ.„€@¦hœ(õÂÁ.„€@¦hœ(õÂÁ.„€@¦hœ(õÂÁ.„€@¦hœ(õÂÁ.„€@8úqÞi­CÁ.„>¤µÜÆ@5Ê^5?|íÁ.„M‰ûçm@5v§ï²-Á.„QnÙ‡@4Ì¿±[W?Á.„NÜC,¥@4Ì¿±[W?Á.„NÜC,¥@4Ì¿±[W?Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø]@®Œ½p£× +@®ŒÇï²-@®Œ½p£× +@®ŒÂÐå`C@®Œ½p£× +@®ŒÈÛ‹¬r@®Œ½p£× +@®Œº6âë@®Œ½p£× +@®ŒŸb¶®}@®Œ½p£× +@®Œ¢ÃÉîÍ@¬¸F$Ý/@¬¸Iº^5?@¬¸F$Ý/@¬¸P Ä›¦@¬¸F$Ý/@¬¸xâe,@¬¸F$Ý/@¬¸FÂ&€œ@¬¸F$Ý/@¬¸pbMÒò@¬¸F$Ý/@¬¸lq ²–@8è†YJôñ@8à6âë@45ãS÷ÎÙ@4!£n.±Ä@3•`A‰7L@3mjOw@3O „M@2æs×Ûõ@3O „M@2í\ú¬Ùè@3O „M@2ï „M;?¤I~Óy‘?™•žõ‰Û?ª¦­|JOÐ?°ž‹<›Þ?©×žA:ã#?­½ò™Ýq?›’qvš°•?›ƒ¸Ý³?º÷hwpØc?²ÅD­ŒB,?¶£œ¤ƒ?ºÎŒtìn?¦ +Ð0ú:C?›Õ¼ÉUÓ›?’-BR1Å?’¤õ³Æ«?“!S{uu?¬·¹½'ñ›@@@@@*@,?ð?ð?ð?ð?ð?ð¿eº€?yõã:?^mC¿z?k*dSÁ +¾@®Œµõ9b@¬¸Vš¼°†?~MïlúÙ?‹€c£Û7Ö?Å„ Ìu`?×_ËI«ò@Ÿfîçˆ@^@žòIº^5?@žòJ=p£×@žòIº^5?@žòLIº^5@žòIº^5?@žòL"4jŒ@žòIº^5?@žòKÑ€ÚÁ@žòIº^5?@žòG1ÎlP@žòIº^5?@žòGB Ç@¬Rñ©ûç@¬Rñ©ûç@¬Rñ©ûç@¬Sv õØ@¬Rñ©ûç@¬SQlu@¬Rñ©ûç@¬SUÍ‘î@¬Rñ©ûç@¬S©²8e@¬Rñ©ûç@¬T.f’@1D¯O „M@1D¼j~ùÛ@,³t¼j~ù@,³x4Ÿ@+/ß;dZ@+/Ùý6÷å@+p‰ 'RU@+pIQ‚ª@+p‰ 'RU@+p|„µÜÇ@+p‰ 'RU@+pt#mR«?É^¨¯Âj?¾Œn‘†?‘-jõ¬?‹«ég€eÜ?쑪…Tƒ?µûê?ÐbMÝn½?’ΰ¡ày?[UòkV?2,gÉ Ô?ÐsRdéÑ?Iâo®É?€bMÔŠ»?Œ­Ea©Ó‰?‚nÚ¨´8Ñ?‚ç\fò ?†‰ýçïe?†Š®ÚH„ð@@@"@$@4@4?ð?ð?ð?ð?ð?ð¿Q"G/œ?7~fº‚?6ut¥Ì÷f? YUðoÜÚ@žòI¼²d@¬S¯kÖ›?Eš!K?ÔÎ>¡‹F?†ól¶ù©£?/¢‡ß²^|@Ÿs ƒê@_@¦¯mV@¦¯a$Ý/@¦¯mVÁ.„€@¦¯mVÁ.„€@¦¯mVÁ.„€@¦¯mVÁ.„€@¦¯mVÁ.„€@¤Ô;çl‹D@¤ÔA$Ý/@¤Ô;çl‹DÁ.„€@¤Ô;çl‹DÁ.„€@¤Ô;çl‹DÁ.„€@¤Ô;çl‹DÁ.„€@¤Ô;çl‹DÁ.„€@8?–»˜È@88ÁTÉ…ð@5Ù‡+Á.„M‰ûçm@5"-VÁ.„QnÙ‡@4QÞi­BÄÁ.„NÜC,¥@4QÞi­BÄÁ.„NÜC,¥@4QÞi­BÄÁ.„NÜC,¥?гá‡}@8#˜@8¾:@8 >+@8Iç@8Ù?¢Æ÷Xê†@8Î÷@8i§@8Å@8S@8û—?ƒúʳ_Ã@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø`@©˜ Iº^Á.„€@©˜ Iº^@©—úxl"h@©˜ Iº^@©—Çü¹#£@©˜ Iº^@©—ó@N¤¨@©˜ Iº^Á.„€@©˜ Iº^Á.„€@ŸYOß;dÁ.„€@ŸYOß;d@ŸY’:)Çz@ŸYOß;d@ŸZ Ä›¥ä@ŸYOß;d@ŸYÖR½<7@ŸYOß;dÁ.„€@ŸYOß;dÁ.„€@7„¯O „MÁ.„>¤µÜÆ@5›¥ãSø@4ÿHË’:@4±‰7Kƨ@4Æý!ÿ.I@3¦YJôðØ@3ž;Í5¨Y@3¦YJôðØÁ.„NÜC,¥@3¦YJôðØÁ.„NÜC,¥@8J¨?±;)ry²/?Æ”ø‹Ø¯?—Ýúâþ @8Iç@8Ù@8J¨?¢åµ0Å?Ä‹“IV÷q?®¡E¬Óɨ@8S@8û—@8p÷?¯r +e&#œ?Ã¾áØ³qª?ožQw@8 Ø@8 Ø@@@?ð?ð?ðøøøøøøøøøøøøa@ª"í‘hr°@ª"ï²-@ª"í‘hr°@ª"íBÃÉð@ª"í‘hr°@ª"éûçlŠ@ª"í‘hr°@ª"àƒn˜@ª"í‘hr°@ª"Ýp£× +@ª"í‘hr°@ª"áTÉ…ï@Ÿ­ 7Kƨ@Ÿ­n—P@Ÿ­ 7Kƨ@Ÿ­KƧïž@Ÿ­ 7Kƨ@Ÿ­¯4Ö¡b@Ÿ­ 7Kƨ@Ÿ­Ž¤¨ÁT@Ÿ­ 7Kƨ@Ÿ­w€4mÆ@Ÿ­ 7Kƨ@Ÿ­Ò×sû@7*0U2b@7"h Ô•@4}‘hr° @4v$Ý/ @4€å`A‰7@4iDg8~@3õµsê³h@3ØÛ‹¬q @3õµsê³h@3Ê Þ@3õµsê³h@3ÈõÂ\)?ð°–Ž]? dãŸ^?­;ðÕwß{?£ìߦË>?¡úñÙà?¡X“P#®?ð°–Ž]?&”ðÚ˜?´#f¨’L +?´f *N˜?»ðŒQÔE?ÄùËä#ÚÉ?ð*wjs—?“êXÔ #{?§K¥xMÐR?£øƒqÌ?¥VËMª¼‰?±¨ÙN;…?ð@@@@&@,?ð?ð?ð?ð?ð?ð?5maê?§0{£?U†«$+å'?…N1¥J»@ª"ßž: @Ÿ­“*RX´?e|œkÍP?’gÂÛ#?› “?Š8m?Æ)-[¤µÜÆ@3{ Iº^Á.„M‰ûçm@2Àå`A‰7Á.„QnÙ‡@2mÅÖ8†Á.„NÜC,¥@2mÅÖ8†Á.„NÜC,¥@2mÅÖ8†Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøc@¦¬€ƒn˜@¦¬yÛ"Ðå@¦¬€ƒn˜@¦¬m‘hr°@¦¬€ƒn˜@¦¬q[W>ª@¦¬€ƒn˜@¦¬gÈK]Ì@¦¬€ƒn˜@¦¬ezxl#@¦¬€ƒn˜@¦¬fµ (@§ìMÒñ©ü@§ìGl‹C–@§ìMÒñ©ü@§ì["Ðå_@§ìMÒñ©ü@§ìP°ò{³@§ìMÒñ©ü@§ìU¨Xy>@§ìMÒñ©ü@§ìYŒ~($@§ìMÒñ©ü@§ìWsüP@7`ØDЩ@7aœàuöý@1½‘hr° @1·RT`ªd@0¾V“u@0·´¢3œ@0 ¿±[W?@0 ^žš@0 ¿±[W?@0?åÉ@0 ¿±[W?@0'RT`ª?€‚ñêã ?“”üU§<­?˜g± ÓË?Ž,OêK˜u?Ÿˆ`“Q?¢zvíÈ­c?„F/·ÿP5?–wzCœËï?œ”ÒÚ×¾æ?0ÜN :s?œ—ø#\á?›¶x•7fÙ?ŒÊ­#г^? *i B??˜o\¾Z|?…âC£½¾Ý?ˆT“Ÿÿ?¢ŠEÈ>g@@@@@,@*?ð?ð?ð?ð?ð?ð¿vlYQ°?q Ôoî?QØß›i ?JÊ»½ÄÎ(@¦¬nôN†–@§ìO뫸?mÙ[’‰_ã?h%²8ºþ.?ÙÅxc^Ø?ÐÛ6VïñÒ@ŸdæWÍr@d@­}\¬1'@­}]p£× +@­}\¬1'@­}n;Í5§@­}\¬1'@­}¥o@­}\¬1'@­}—$tS@­}\¬1'@­}‰ 'Q@­}\¬1'@­}˜bMÓ@¢¼+ Iº@¢¼)º^5?@¢¼+ Iº@¢¼!$Ý/@¢¼+ Iº@¢¼)­BÃÊ@¢¼+ Iº@¢»æÁ½¥@¢¼+ Iº@¢¼hÛŒ@¢¼+ Iº@¢¼rGE9@5·â‚@·€@5¸ Ô•*@6¡hr° Ä@6&éxÔþ@6V”@5çXâe@5(è§æ›@4ïªÍžƒä@5(è§æ›@4õ`A‰7L@5(è§æ›@4ù…ðoiE?|öOÿÝ? í+ÁÁú?·¢…£qðÎ?ªî…T%?ªxàôTl?·ÞN*·?|öOÿÝ?™|ÎFe‰f?È7tgÛ?­&*N‡?´g“®zà?¹«5t3w9?ƒ>ZÌw~?¬œ”e¸?­æMBé–?¢U]^á,Ç?¡EL¬À?Ú¾ÉÛ²º@@@@@(@(?ð?ð?ð?ð?ð?ð?Žþ©€¿‡=Í€?g˯N™?|<ªjb@­}j&Ê@¢¼ÔÇ[?vØym¼Ù$?Š?­îà›­?åTjŠ\&@¹_³‘œ@Ÿ\¢¢éÈ@e@¥<Ÿ;dZ@¥<¨õÂ[@¥<Ÿ;dZ@¥=|¾ß¤@¥<Ÿ;dZ@¥=2° Äœ@¥<Ÿ;dZ@¥=ò¼£@¥<Ÿ;dZÁ.„€@¥<Ÿ;dZÁ.„€@«5?|î@«p£× +@«5?|î@«Ezxl"@«5?|î@«Hð@«5?|î@«G+ J@«5?|îÁ.„€@«5?|îÁ.„€@7#g ù l@7"þÅm\ú@4GÎÙ‡+@4÷ÎÙ‡@3{Ƨï²@3MV”@3+xFÜ^@2ÏU›=È@3+xFÜ^Á.„NÜC,¥@3+xFÜ^Á.„NÜC,¥?Œs¤DÅÐ?Í€¼îVê?à ñ•º?ÜKw¦¢£Ž@8Iç@8Ù?Ž=fA:?©ûÙ_Â.`?°ì3&‡Ì?Äcx!þaD@8S@8û—?•@K/Ù{?§Y+®„£:?§C9«ã?·ÌŸ²$@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøøf@ª£ÍOß;d@ª£âMÒñ©@ª£ÍOß;d@ª£È1&éy@ª£ÍOß;d@ª£Æ¸ºÈ@ª£ÍOß;d@ª£ÈXy=Ú@ª£ÍOß;d@ª£Ð°ò{³@ª£ÍOß;d@ª£Ó×Ûõ@««Æ§ï²@««Ót¼j~@««Æ§ï²@««Â©“ á@««Æ§ï²@««¿|í‘h@««Æ§ï²@««ÅF +¦L@««Æ§ï²@««Á°‰ '@««Æ§ï²@««¸ -à@92ÃÉîËû@9<žì¿²@4ahr° Ä@4\„µÜÆ?@3±‰7Kƨ@3°A‰7KÆ@2î_oÒ @2ê…‡“ݘ@2î_oÒ @2ëW>«6z@2î_oÒ @2è†YJôñ?îŠõ ?‘@@Nßo9?”B 'nr?U›=ÈK?•bJÖµæÿ?•ï¢Ò®F?¿Ëg1Ñ?“£PuòN?—+Áèlç?‘M –=?“«YNÚ˜°?¢ðŒHößÃ?À +šeKsÁ?“8í¢ßA?‡š¿]b?…bv{3dZ?IÏáå$?–‘ñ ç{t@@@@@"@(?ð?ð?ð?ð?ð?ð¿\“^¿rC­6?nó·S l…?S~€È†Óñ@ª£ÏsðI@««Â·r½d?†}¿j½o?`ƒf¬ˆe@¼/sD36?­®XTWóï@Ÿp/%Æ5@g@§¯n—Oß@§¯wÎÙ‡@§¯n—Oß@§¯ov_Ø®@§¯n—Oß@§¯p£× +=@§¯n—Oß@§¯mà q@§¯n—Oß@§¯pØDÐ@§¯n—Oß@§¯p¾ í)@¨kÌIº^5@¨kÌ1&é@¨kÌIº^5@¨kÐ£× +>@¨kÌIº^5@¨kÐË)^Ÿ@¨kÌIº^5@¨kЖ»˜Ç@¨kÌIº^5@¨kË’:)Ç@¨kÌIº^5@¨kË Iº@7ò䎊@6ÿv_Ø­¬@2ahr° Ä@2cS&Á@1—ï²-@1šçÕfÏB@1a:’£S@1g§†Â&@1a:’£S@1cn.±Ä3@1a:’£S@1dFs×Ü?‚á²Olºü?µ‡:úÎ ?‘jh¨qã9? Ìç,Z?’o?P´À?‘À?ÙÂ#’?‡YÍ_?’u¦ieõ–?ö”iåó¨?”¡VòÄ\F?’ºñS©YÖ?“t‡o(ÚÊ?•‡C¿ ?]ÒivLÿ?…/‡ÙX·³?‡µ‚[Ö?ˆ©{2¡Î?‹DVóö@@@@@,@,?ð?ð?ð?ð?ð?ð¿]žZä¿Pè,€?Kxn‹º_?DAý)TÙ„@§¯r£ƒŸ@¨kÌrÎ@Î?k³µ W:·?d¾•~#µ^?ÞuP*üK?ÉÔõ™o»@Ÿhí>>w@h@¨s¯²-@¨s¯\(õÄ@¨s¯²-@¨s°¸»@¨s¯²-@¨s° Ä›¦@¨s¯²-@¨s°¸»@¨s¯²-@¨s¯hÛŒ@¨s¯²-@¨s®æ1ø¡@­ª®—Oß@­ª­Òñ©ü@­ª®—Oß@­ª¯Ÿ¾w@­ª®—Oß@­ª¯ƒ{J"@­ª®—Oß@­ª¯hÛŒ@­ª®—Oß@­ª®Ù‡+@­ª®—Oß@­ª®±Ä2Ê@4™*0U2b@4™“ àÞÒ@/Û"Ðå`@/è>BZî@,¿;dZ¬@,¿|í‘hs@+Ǔݗö,@+džÂ&€ž@+Ǔݗö,@+Ç ù kº@+Ǔݗö,@+Ǔݗö,?|öOÿÝ?ÉGãA­÷?‘!!Ø×‹7?‹¨þ„/š?ÿ £‰¸9?È2I/?|öOÿÝ?’ aÒ¹zï?ŠA)Nîá?7枪y7?Ö§­îQD?X78›š?ƒíÈm½!¾?Œ¯þuõí?‚‹¡8*ú?‚æÊ¬vã?†’Õaì+’?†½ª»—@@@@@,@(?ð?ð?ð?ð?ð?ð¿­ŽË€?.V¾þ?Ç™¶Õ?©û¬…@¨s¯Y3r&@­ª®a2+??ž¿á ¶¥?5{^Þ†1Ï?‹ù€º?wþTC0Ú@ŸgÌ[À@i@¡; Ä›¥ã@¡;¥`A‰6@¡; Ä›¥ã@¡;¢\(ö@¡; Ä›¥ã@¡;¡G®{@¡; Ä›¥ã@¡; Ä›¥ã@¡; Ä›¥ã@¡;¡@N¥@¡; Ä›¥ã@¡;¡ohÜ@«7ï²-@«7ÚáG®@«7ï²-@«7î;Í5¨@«7ï²-@«7ê¦L/ƒ@«7ï²-@«7ë…¸R@«7ï²-@«7ë]Ìcñ@«7ï²-@«7êÍžƒä@7Y*0U2b@7B½<64@1» Iº^@1ºÚ¹õY´@1Wï²-@1Vµ '»@1Œ~($ @1škP°ò@1Œ~($ @1*™0¾@1Œ~($ @1y¦µ ?ˆÿÀ)T¿Æ?ûJ`ÕYð?‘"žæÆó¡?ŒR‹w#z?’êÔÒ?’4¶ó?„F/·ÿP5?’5CàQ?ŽËÜ¿€?-õI¸`K?’W;„zY?’.8 +B?«ú—ÇZà?R©i»èi?ƒ´],m=?ƒv_.^?‡?®\Âä?‡?®\Âä@@@@@(@*?ð?ð?ð?ð?ð?ð¿OI=H¬?oKý ?9>ìÉ ×«?Q_X¹ëeÿ@¡;¢kòùÏ@«7å„ö6E?W¹|¬oJÉ?qÁyÔ .?³r+p€8?æfâÙ´k+@Ÿi˜!šyµ@j@«¢âMÒñª@«¢Û"Ðå`@«¢âMÒñª@«¢çÕfÏB@«¢âMÒñª@«¢ßb¶®}@«¢âMÒñª@«¢å`A‰6@«¢âMÒñª@«¢ßb¶®|@«¢âMÒñª@«¢å`A‰7@®Û"Ðå`@®çï²-@®Û"Ðå`@®ÜÆ?@®Û"Ðå`@®ÙÀëíû@®Û"Ðå`@®Ü]cˆf@®Û"Ðå`@®àƒn—@®Û"Ðå`@®Ü£n/@8‡>«6z@8’ˆÎp:ü@3ÜIº^5?@3Ý!ÿ.Hè@3Wï²-@3Z’£S&@3mÅÖ8†@3§†Â&@3mÅÖ8†@31Å‚@3mÅÖ8†@3?|í‘i?€‚ñêã ?‘+ùÔ!½Š?•XYäý?“ׂa†Üü?’yÊêºq?’*Mõis?¸¤(¾ÂeI?’ ·6Öc¤?•¶ÀA½ +;?›|¦l¯âU?“úaû]?‘Qïʾ?Ãp`ŠÛD?Ž*JŠË?‰¢Ò+ÜÝ—œ ?ŒC ãSG?Š|)-}í(@@@@@@?ð?ð?ð?ð?ð?ð?_O:Ë$¿RCu–?HÁw½ª?ZØ-Ê‹œ@«¢âP,{(@®ÞiÁ¶›?qšÚ_ºë?k›r +ç«þ?ÙºÿƒÿX?ÂTbî˜BO@Ÿr>:`´Ô@k@¨P½ó¶E¢@¨P¶‡+ @¨P½ó¶E¢@¨P½ó¶E¡@¨P½ó¶E¢@¨Pµéá°Š@¨P½ó¶E¢@¨P¼wškP@¨P½ó¶E¢@¨Pµ '»@¨P½ó¶E¢@¨P ÞÒˆÍ@§ó}ó¶E¢@§óy™™™š@§ó}ó¶E¢@§ó~Ov_Ø@§ó}ó¶E¢@§óˆK]Ìe@§ó}ó¶E¢@§óˆ$ x@§ó}ó¶E¢@§óxüPH@§ó}ó¶E¢@§ó~ÒˆÎp@8|ÚQ@8ë…¸R@3½‘hr° @3¹xÔýó¶@3PA‰7KÇ@3L‹C•@2«xFÜ^@2¬Æ?@2«xFÜ^@2¬ç¯·é@2«xFÜ^@2¦®}Vlô?1·†Æjñ?‘Ð`HÇh?™KÔ9\Ä?’èÞ㬱_?™ìbðCú?¥Œ#ghç›?–ªÎ­¡?’j%ÓRa?•ê?íuA?•WŠ­ ?—ˆ”„òõ¤?—vÑékÜ?— —‰Ò‡?’[éæóL³?qÂ' +Bœ?‹µ¼a?”"‚Ò#?›P^eNÇQ@@@@@,@*?ð?ð?ð?ð?ð?ð¿BC}Ø?@oqI¬?`1ðâXk?c̽Øf²,@¨Pµ·F®±@§ó~­ñ´?ry›ÏP„?‚ø,A?õÊ.ü‰³"?ó~~‹-m@ŸhûÔ V`@l@¦¾St¼j@¦¾==}mq@¦¾St¼j@¦¾ì‰Îô@¦¾St¼j@¦¾ Û:Žo@¦¾St¼j@¦½ý¿‚¬ì@¦¾St¼j@¦½ø+Ë@¦¾St¼j@¦¾­«ŸW@•°!ÊÀƒ@•°8Që…@•°!ÊÀƒ@•°/ÓùF@•°!ÊÀƒ@•°1‡T@•°!ÊÀƒ@•°2q‡I@•°!ÊÀƒ@•¯ÎÛZ@•°!ÊÀƒ@•°¡ÿ.Hé@7Âò䎊@7ªÐïtÔt@4Å?|í‘h@4¼ÇUį@3Ú~ùÛ"Ñ@3ÈJ!"6@3fYJôðØ@3T¤¡†fÆ@3fYJôðØ@3Cp~W“ÿ@3fYJôðØ@2ûçl‹C–?ƒ6ð]g™ä?¡fÕA½ž¶?¨Q¼O&7*?š³5ñ© +z?£ê-T³Ý?ÂH[ R§C?Ö?ŠÓ'P?´õm'Èx?³2õïÆ"?¦Íɳê?°N¨Gአ+?¹d +™Oe?¥•ÏÛäå°?¤{®ìbÆâ?§Ör7\Àå?§!N/p?¢k´¨†Çi?«ê3ƒsЍ@@(@,@(@7@*?ð?ð?ð?ð?ð?ð¿”RÔ¥i@¿f Üïß?k#£L4?¬Ðs4@¦¾£{‚Š@•°,ÔÅ»Â?ˆ9Q)Mf?ž‡Åx~?ù{½0“@ fíÅ0²›@Ÿd‰ÏU¹ @m@¦ÜÕ$Ý@¦ÜÔ¼j~ù@¦ÜÕ$Ý@¦ÜÖÈ´9X@¦ÜÕ$Ý@¦ÜÖ”Fsƒ@¦ÜÕ$Ý@¦ÜÖ8†YJ@¦ÜÕ$Ý@¦ÜÕ›=È@¦ÜÕ$Ý@¦ÜÔ`ªdÃ@«ô™™™™š@«ô—KƧñ@«ô™™™™š@«ô™‡+@«ô™™™™š@«ôŸ±[W@@«ô™™™™š@«ôœ£n0@«ô™™™™š@«ôš)Çy¨@«ô™™™™š@«ô˜_ö”@7-¥œàv@7.±Ä2ÊX@2é‡+ @2é=Ùb¶@2"-V@2"T`ªdÃ@1O „M@1Ÿ¾vÉ@1O „M@1!-w1@1O „M@1Žì¿±[X?’Óusÿ\Ã?ï1ïºÅ?’Õ ØÎ†{?ºgk\0?‘×´<î¯j?‘…Rgå.?„F/·ÿP5?’ +‰¸Ì?‘[RK¶ËE?‘~¬Àm?ó?‘†óèJL\?‘ ‡#é +´?“ d?îŠõ ?ƒÆ×q„nð?ƒ­=aÊw%?‡?®\Âä?‡YÍ_@@@@@,@*?ð?ð?ð?ð?ð?ð¿¥™Ç@??úË@?3ƒÔÌ]?@£_ý-@¦ÜÕNìü@«ô™#Ûì ?På“`¡|ô?aëat³wœ?ÒûV¿R?ÅÊNTp–@Ÿk¥˜ãoÅ@n@¤çl‹C–@¤âÐå`B@¤çl‹C–@¤åœàv@¤çl‹C–@¤ì‹C•@¤çl‹C–@¤ä2ÊW©@¤çl‹C–@¤ç¯·é@¤çl‹C–@¤ç®zá@¤ÅLIº^5@¤ÅNÙ‡+@¤ÅLIº^5@¤ÅHšu%@¤ÅLIº^5@¤ÅPË)^ž@¤ÅLIº^5@¤ÅHÛ‹¬q@¤ÅLIº^5@¤ÅIÔ•+@¤ÅLIº^5@¤ÅKC,¥@7” xFÜ@7quŽ"@3º^5?}@3~ÿ—$@2Ͳ-V@2Ξš@2fYJôðØ@2iQ‚©“ @2fYJôðØ@2iÇy¦µ @2fYJôðØ@2k=ÈK^?¡ÅꯨŠT?‘‘Ç`[?‘„ë2‘~?• +ÏÄ¡?“2{Áw¸?•(Ï¢Uÿ?•²»UbB2?“-N•I`(?‘t‰WZñ?—°Ó&v'ç?•nW*Ø„?•êÁØ|?„ò—TËÃ?Fƒ¿p7€?qÂ' +Bœ?‘l_zU’Ý?’3¨£„È?K·‘d\@@@@@*@*?ð?ð?ð?ð?ð?ð?R¾p<~¿KiÌ`¤?2Ð\C?CŒâÛ@¤å˜B“@¤ÅKfC +?K:8è•¶?b#Øyú?†XýÀ‹Qõ?µ¿Íjy <@ŸnT<ì?@o@¦ß;dZ@¦È1&éy@¦ß;dZ@¦ã× +=r@¦ß;dZ@¦ÙõY³Ñ@¦ß;dZ@¦ã¯·é@¦ß;dZ@¦àN¤¨Á@¦ß;dZ@¦Ûô‡ü¸@¬qàA‰7L@¬rzáH@¬qàA‰7L@¬qÚ¬1@¬qàA‰7L@¬qâÞÑ·@¬qàA‰7L@¬qá [À@¬qàA‰7L@¬qÜPHð@¬qàA‰7L@¬qàhÛ‹­@9‡>«6z@9g´¢3œ@4Ùº^5?}@4ߪ͞ƒä@4t“t¼j@4y¦µ (@3¸DЩ*@3¾ì¿±[X@3¸DЩ*@3¾_oÒ @3¸DЩ*@3À‰ 'RT?±ÿ}ö?êÚÏ$?¡ ×1èB?ŒGZ0eê;?—À °Ø§ ?—šÜ!2f…?±Á1Èáý?ƒÁþGEÛ?Hžyq?·ïö)h?„ã¼ÓZ…ˆ?„2ÌôÏ?ˆW|¶DC?ˆCns¥ @@@@@,@$?ð?ð?ð?ð?ð?ð¿6ÕnÛœ¿P/:[‚?@$ Âè?S»]^0ú_@§½O]¾ »@¦\#R,Ê?U‡³^.(?mHEšð?œê,xc…?¡Ì÷=ä·?—Ði&¿C?¢7ÿP›µK?‚~ƒ7qé“?m¸¼‚ý?…á%¦aȲ?˜…]k™7?]˜m3ÆŒ?ð2ƒX@@&@$@*@7@9?ð?ð?ð?ð?ð?ð?Uà£þ¿c‹Fc €?cl‘ jÏ?cÖö¢C@¦ö1ÐV@˜aoº."?‚(¤ZµN)?M·@]KÑV?þÆHì:º@Ÿc¦îÐ@r@¦>,1&é@¦>>Ø [@¦>,1&éÁ.„€@¦>,1&éÁ.„€@¦>,1&éÁ.„€@¦>,1&é@¦@¶“u@¦>,1&é@¦=#× +=q@œ)Àƒn˜@œ)­V@œ)Àƒn˜Á.„€@œ)Àƒn˜Á.„€@œ)Àƒn˜Á.„€@œ)Àƒn˜@œB Iº^@œ)Àƒn˜@œ.V‡+ @9|ÚQ@9 +¦7?1k@5pÄ›¥ãTÁ.„M‰ûçm@4â-VÁ.„QnÙ‡@4î_oÒ Á.„NÜC,¥@4î_oÒ @31Å‚@4î_oÒ @4Ö®}Vlô?‚Cš æI@8#˜@8¾:@8 >+?¢WÃTþi?ÁÜñÀdå¢?¦_»o_d@8Î÷@8i§@8Å?-C i|â?Å1=îIL?±Ž‰-»ÕÃ@8 * @8p÷@8¶?¼ïõÀq2?¬]Çwsƒ@@@?ð?ð?ðøøøøøøøøøøøøs@¥ObÐå`B@¥O`Ä›¥ã@¥ObÐå`B@¥Oa]­K©@¥ObÐå`B@¥OCŸéî@¥ObÐå`B@¥O`S@¥ObÐå`B@¥OHùGß@¥ObÐå`B@¥OR± ä@—„ 7Kƨ@—ƒ÷œ]y@—„ 7Kƨ@—ƒó†&½@—„ 7Kƨ@—ƒÛÃ[©@—„ 7Kƨ@—ƒIð¤Ú@—„ 7Kƨ@—ƒr›(@—„ 7Kƨ@—ƒcÐâ@8 Î_oÒ@8 #59 @2E?|í‘h@2#2íViú@1~V“u@1RzEn@0ÑÞi­BÄ@0¥éŠCô˜@0ÑÞi­BÄ@0¢b5€œ@0ÑÞi­BÄ@0£‰z&WÙ?¦]OëvÙú?šm@pZG?ŸóË[®·?©þK;0ê? ‚°ëÒ¦—?›Ázç9?•Ö/ê€÷Æ?—)ž®ˆ¡ø?”!vqG_¾?¦¾«Õñ(µ?™‚ááqQ'?—¯¦`R?¤¶e‰ ND?ßHQÅaG?œ³ùf-%l?V¸5Àñù?‘ &ºåX?”ôEö L@@ @$@(@2@3?ð?ð?ð?ð?ð?ð¿lûÅÓ¿˜…Eô`?e˜ß6å5?qP~Ë*h@¥OUJëkõ@—ƒ³Ñ޾?‚à¤XÛ?’I¾Ÿ%Ê?àÀ' fï@ƒš·" ã@Ÿnl.³:C@t@¤}ØbMÓ@¤}Ù‡+@¤}ØbMÓÁ.„€@¤}ØbMÓÁ.„€@¤}ØbMÓÁ.„€@¤}ØbMÓÁ.„€@¤}ØbMÓÁ.„€@¥ÃŸ¾vÈ´@¥Ã¶È´9W@¥ÃŸ¾vÈ´Á.„€@¥ÃŸ¾vÈ´Á.„€@¥ÃŸ¾vÈ´Á.„€@¥ÃŸ¾vÈ´Á.„€@¥ÃŸ¾vÈ´Á.„€@8Ù*0U2b@8宿1ø @4½‘hr° Á.„M‰ûçm@3†“t¼Á.„QnÙ‡@3Þi­BÄÁ.„NÜC,¥@3Þi­BÄÁ.„NÜC,¥@3Þi­BÄÁ.„NÜC,¥?îŠõ @8#˜@8¾:@8 >+@8Iç@8Ù?¢Æ÷Xê†@8Î÷@8i§@8Å@8S@8û—?«Æá뼑:@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøu@¤Ö+…¸R@¤Ö)º^5?@¤Ö+…¸R@¤Ö+C,¥@¤Ö+…¸R@¤ÖØ­«Ÿ@¤Ö+…¸R@¤ÖCˆe”¯@¤Ö+…¸R@¤Ö/Ÿ¾w@¤Ö+…¸R@¤Ö>쿱[@¬]eãS÷Ï@¬]gl‹C–@¬]eãS÷Ï@¬]>vÈ´9@¬]eãS÷Ï@¬]J=p£Ö@¬]eãS÷Ï@¬]XbMÔ@¬]eãS÷Ï@¬]Sê³g @¬]eãS÷Ï@¬]DЩ+@5Ù*0U2b@5×Ûô‡ü¹@20Ä›¥ãT@2XÁTÉ…ð@1çKƧïž@1ô2ÊW§†@1 +0U2a|@1":)Çy§@1 +0U2a|@1\ú¬Ùè@1 +0U2a|@1 xFÜ^?„F/·ÿP5?­Na~|¾>?°õ%ÆÛ'^?¤OXâi}i?›«Âp°¦ý?“èÿºp–Þ?|¬Çëý ?µØ~—ñ;„?®÷†ÕS w?œÎuµ/è?¬Ì0û?)?§lÅBCk?ƒ]€µ,VÞ?šà+>G–Ì?œÚ.ô §Æ?š"âŒÀxÐ?œño(?›8~à,ã™@@@@@,@&?ð?ð?ð?ð?ð?ð?oQ¿yZ¾õ?Y7ÿ£É¶?Ck®}™°@¤Ö/á’Âø@¬]]̽ýæ?yƒ_~? B[?¯ò5}'Î?œÿ‰eVé?£”S)$Å?šX“Øû?–Ãù‚ò@‰?—šÜ!2f…?¢Æ÷Xê†?žO£·»Ïy?ž‰_Ó?”`íÖ†›?™B°*Z?™šô•Üy?Ìùüy‰5Í?•¾Ä6Ü?—5"GWÈ?µõsÌþq?’d­©‡ò?—Ò¸ùBz4@@@@@(@&?ð?ð?ð?ð?ð?ð?rÿ¹‡ËÀ¿S•”l¸?QZ`E‚3?PM²Ÿç.$@© +MÝt@Ÿqi»N4?e¨ˆ'­ý·?g‰bS¼?² +•X ¬,?»ÚÒœ‰Y®@Ÿoðˆ Š®@z@  A‰7L@ ¤>70‚@  A‰7L@ ¡y÷†7@  A‰7L@ £?æ@  A‰7L@  w¢o @  A‰7L@ ŸÔLet@  A‰7L@ ž[…@¬õð£× +=@¬ö Iº^@¬õð£× +=@¬õî®âG„@¬õð£× +=@¬õîPý¾Ê@¬õð£× +=@¬õòŒ¬‘µ@¬õð£× +=@¬õð‘Ên@¬õð£× +=@¬õð’PAÐ@8zqÞi­C@8ˆ+[@2®5?|í‘@2®=LÄÁÀ@1ä¼j~ùÛ@1ä“s6zä@10–»˜Çã@11ÞBÒè@10–»˜Çã@10~@10–»˜Çã@10âómÀ?¦,¹(g©?ÿß +…×·?’ÝrõÂ+@8Iç@8Ù?®ƒ›‚á@8Î÷@8i§@8Å@8S@8û—?›pÒ̺Ô@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø|@ %Òñ©ü@ %ŽzáH@ %Òñ©ü@ %–ÕO,Ý@ %Òñ©ü@ %Ÿ]/‘ƒ@ %Òñ©ü@ %–èÌòó@ %Òñ©ü@ %—„¥ê@ %Òñ©ü@ %˜,v´{@WIº^5?@WI7Kƨ@WIº^5?@W-ÔH²—@WIº^5?@W1"Û¡y@WIº^5?@WYSP@WIº^5?@WaCUÓˆ@WIº^5?@Wa¿'@1«µsê´@1«;dZ¬@0 +^5?|î@0 +¨ÞTå@/ΗOß<@/Ó9Àëíû@.”`ªdÂù@.‡K+I@.”`ªdÂù@.ˆ“E›ñÓ@.”`ªdÂù@.Œm]Ÿ&œ?É^£eeäí?ϦÓlÛ„?•{ͱϑ?@ ú­Q»?’T) +K?’Ï¡Sbw>?ÐbOß;C–?”Ó\Ó¯¸­?™@?¼Ë.G?’º Š]è?’ˆ¾ú|‰5?“è&Üÿ´Í?€bbË™Æø?î:ÆÍ(?”¹[©c?“ =ãù±?eÁË?’@ £LÁD@ @,@$@*@7@7?ð?ð?ð?ð?ð?ð?CÆéŽ?_{õl‰?0ª¸ |3À?C/nT\ž.@ %—qLw>@W^6<œø??×þ«„(?QÊó>Õ ?uVÉÖi?”Æ®#;ŽÀ@ŸrÒ“\¢ñ@}@¯7ÎÙ‡@¯Ižz¼@¯7ÎÙ‡@¯g»/ìW@¯7ÎÙ‡@¯•Y³Ð~@¯7ÎÙ‡@¯®¾ß¤@@¯7ÎÙ‡@¯Í5¨W@¯7ÎÙ‡@¯™rGE9@œx¸Që…@œx?8I«e@œx¸Që…@œvï·éú@œx¸Që…@œwOß;@œx¸Që…@œwV8†YL@œx¸Që…@œv·´¢3œ@œx¸Që…@œyp‰ 'R@9(†YJôñ@9&ŠqÞi­@6pÄ›¥ãT@5Âø7´¢@6V”@4u8ï4Ö¡@5î_oÒ @4 Ä›¥ä@5î_oÒ @3ô9XbN@5î_oÒ @75ÜÆ??’j ÑÐ|?ßÜ¡÷u¸k?ºNéxZBÇ?ľ}'0y¥?¤š%OÜ–õ?ÑuYdÈP?³*Y¯*?ÌÅë¬òð¿?¢äEÊ»¶)?µùpQ$?¦OY¸¾?؆É8àÐ?³|Ö[¡Dÿ?§e¥n”UW?ž6Øìhâ?ª‰ ƒ~?žæŠ;Ü”ä?ÞÅÙÀ=ɧ@@@@@@"?ð?ð?ð?ð?ð?ð¿Øô‘»D€¿¨(ÓÉ?®Ô5ÞÜd?ƒY–rÓî@¯Чrs@œwUrÇ’À?ÑgΙtY?ªaã}„DG@mNƒ›}þ @éJ%SR3@Ÿi~fÝÑ@~@®L®záH@®L®V“@®L®záH@®L®¾ß¤@@®L®záH@®L±N;Í6@®L®záH@®L¯Ÿ¾x@®L®záH@®L¬¥zxl@®L®záH@®L«Æ§ïŸ@®f¦ffff@®f§+ K@®f¦ffff@®f¦éxÕ@®f¦ffff@®f¨Ë’:@®f¦ffff@®f¡ä÷eÿ@®f¦ffff@®f¦šÔ,<@®f¦ffff@®f¤ŽŠqÞ@4Y*0U2b@4XõÂ\)@2f‡+ J@2f‡+ J@2²-V@2HË’:@1ž«6z‘@1žƒä%¯@1ž«6z‘@1ŸŠ Þ@1ž«6z‘@1›íúCþ]?|öOÿÝ?jÝ‚È?’•íX~4w?ŒÖ +Äȱ?‘,IÝ Áé?‘W×ý°A?|öOÿÝ?’Òc§—Ûí?‘Ç€˜­r?’‘Ç#·X?Ø¥²À<(?‘]Ë™$ë>?ƒ´],mBZî@ªɺ^5?@ªÈÛ‹¬p@«-bMÒò@«-bMÒò@«-bMÒò@«-Ë)^ž@«-bMÒò@«--à @«-bMÒò@«-‚©“ @«-bMÒò@«-–»˜È@«-bMÒò@«-ÿ—$t@0¨†YJôñ@0¨†YJôñ@/¼j~ùÛ@/œ¾ß¥@- ƒn—@-Ÿ—$tS@-£¼ÓZ…ˆ@-¡:’£T@-£¼ÓZ…ˆ@-¡£n.±Å@-£¼ÓZ…ˆ@-¡°‰ 'S?É^žQ5P‚?é¥3i£ó?‘4!Ÿ•p’?‹¬àÌ’Ç?‘ ·èf?ÔCXsñ?ÐbMçê_x?’uß¿çÒ?†[‘'Í?6) }’ë?øóéM Ÿ?lINõÕ„?€bMÕky?ŒÆò/¢äÍ?‚2Y0âµ?‚ìxqC?†–f_ÔŠŠ?†žóB» “@@@@@,@(?ð?ð?ð?ð?ð?ð¿,¤µ<¿/Lm~è?0I¾úPÅ?,¦E½ÙX›@ªÈÔ‰N@«-F¼¾?>è-ú]+?;'ÅïóL%?wO6Ú/ά?p{&AÏE@ŸseÊ +å@€@¦ÄaÊÀƒ@¦ÄJ=p£×@¦ÄaÊÀƒ@¦Äd÷eýŠ@¦ÄaÊÀƒ@¦Äbø7´¢@¦ÄaÊÀƒ@¦ÄdЩ*@¦ÄaÊÀƒ@¦Äc× +=q@¦ÄaÊÀƒ@¦Äf?@ªË º^5?@ªËp£× +@ªË º^5?@ªËÈK]Ì@ªË º^5?@ªË )^ž@ªË º^5?@ªËDЩ@ªË º^5?@ªËMj@ªË º^5?@ªËý!ÿ-@9+µsê´@9,~($ x@4)‡+ @4(7´¢3œ@3)Û"Ðå`@3(K]Ìcñ@35µsê³h@34g8}À@35µsê³h@33ÉîËû@35µsê³h@30å`A‰8?´Žé`m?‘Ð`HÇh?’•íX~4w?‘´CF õ?–91£ƒ’?œH÷A”mà?ª[Xxöp?“Öæ…0Âû?’t-Eü?–r°¤»®?˜Op¢‘¬?—Õàq¶Ù?¬r¥R‚?‘ +òtMŠ?‹‘+-/Ý?Œw%è®?“6‰møŸã?›€*:€R}@@@@@(@(?ð?ð?ð?ð?ð?ð?aer¸%€¿U´ŽCÜ?b°ö®Üá?Qþã÷4@¦Ädh:@ªËþRÒ?rø“0ùUþ?g­–¢Sà?Òÿ„ìÙ™?¸ŠË6Ä›@ŸpH/¡Vz@@¡ª|í‘h@¡ª‚\(ö@¡ª|í‘h@¡ªßHË‘@¡ª|í‘h@¡«#{J#:@¡ª|í‘h@¡«QÎ@¡ª|í‘h@¡«/ìVÕÐ@¡ª|í‘hÁ.„€@¤±¾vÈ´@¤±ï²-@¤±¾vÈ´@¤±YÎ_p@¤±¾vÈ´@¤±u›=È@¤±¾vÈ´@¤±“ŽóMj@¤±¾vÈ´@¤±kP°ñ@¤±¾vÈ´Á.„€@8Û¹Œ~($@8¿Aò×s@4œIº^5?@4tZ¬1@4"-V@3×§†Â&@3kxFÜ^@3 P°ò{³@3kxFÜ^@3¼¤@3kxFÜ^Á.„NÜC,¥?ˆÿÀ)T¿Æ?·ts3¢ø?¨%1¿6?¶äŒ›%þØ?Ô®þ>†@8Ù?|öOÿÝ?³r‘‹O?°˜Â•0}|?´Eð)öpü?ÎA\"I @8û—?‹´¡`Ƕà? çaŸ¹5? øk@×õ{?¶7òh³Þù?¬·¹½'ñ›@8 Ø@@@@@,?ð?ð?ð?ð?ðøøøøøøøøøøøø‚@¢ñë…¸R@¢ñì1&é@¢ñë…¸R@¢ñõ*™0@¢ñë…¸R@¢ñúu%G@¢ñë…¸R@¢ò „M@¢ñë…¸R@¢ò àÞÒ‰@¢ñë…¸R@¢ò-V@¦æffff@¦æéxÔþ@¦æffff@¦î;Í5¨@¦æffff@¦‘¼ÓZ†@¦æffff@¦ÊÀƒp@¦æffff@¦£¯·é@¦æffff@¦ŸË’:*@4+µsê´@4+¥ãS÷Ï@1µãS÷ÎÙ@1©e+ÓÃa@16§ï²-@1,àuöý"@0ÔmÅÖ8†@0·ï²-@0ÔmÅÖ8†@0¼~($ x@0ÔmÅÖ8†@0½p£× +>?}Ñ¿ž,?¡'‹Q›p?—bÕ/ŸÓ?›©Ñ®vtQ?¨àt/1  ?¬‰…dkUÛ?|¬Çëý ?@`WÓæ?ŸÀh¡º?–= £6Ï?´”zœ&>?±à¦ÌTS?‚n—8‹8?›9WTêW?”US9úÅ?•*¥Q«_“?–í +e˜›ï?˜ŒL.C-¹@@@@@*@*?ð?ð?ð?ð?ð?ð?„Y›K]€¿‰ þÚÇ€?_çŸö§ðp?[Ï‚œÇÉÍ@¢ñ÷ÑÖ@¦Øâ%©š?t€×˜îà¢?q‰s0?ä1ó:X[É?Ü~Ÿ|@Ÿ_ÝÄX¿@ƒ@£ò&ffff@£ò49Xb@£ò&ffff@£òRT`©@£ò&ffff@£ò×s@£ò&ffff@£òÿ—$t@£ò&ffff@£ò}¿H€@£ò&ffff@£ò>«6y@£¸Ôýó¶@£¶“u@£¸Ôýó¶@£ËíúCÿ@£¸Ôýó¶@£Ì¥zxk@£¸Ôýó¶@£Õµsê³@£¸Ôýó¶@£é7KÆ©@£¸Ôýó¶@£Û=ÈK@8‚ò䎊@8}p£× +>@3c÷ÎÙ‡@3PIQ‚©@2Ú~ùÛ"Ñ@2ÊÇË)_@2&YJôðØ@2 ¹#¢œx@2&YJôðØ@1þËûµt@2&YJôðØ@1ÿË’:)È?¢Æ÷Xê†?‘Ð`HÇh?’´ýBI{? `ĉ5‘5?º,j +í[?º=¸¨cÏ?”¼íÒh??“[¡ŽuœÙ?–AuøG1?¡ 3Õ¬T?»É¬ê\©ù?½pî=ëDó?¿àéå=c"?“êXÔ #{?’q6tNø6?–ì k.÷A?•°QŸ?]Í?«¶Ûİ^Ï@@@@@*@*?ð?ð?ð?ð?ð?ð¿ƒkí™?†ÉsK€?náCâ¨0U?Yu@:Æû@£òô’Õ\@£ÌXùqx?‡D³4„Ii?uð2v#ã6?ß+>”F¾?¿×0ä¦Q@Ÿe[Æ:Ðá@„@Ÿ†dZ¬@Ÿ†cS÷ÎÙ@Ÿ†dZ¬@Ÿ†gÓ+s@Ÿ†dZ¬@Ÿ†lAûp@Ÿ†dZ¬@Ÿ†[#5y¹@Ÿ†dZ¬@Ÿ†c +óùk@Ÿ†dZ¬@Ÿ†c¼ç¢@¥ ô9Xb@¥ ô9Xb@¥ ô9Xb@¥ ÷oˆk´@¥ ô9Xb@¥ ö3íµ@¥ ô9Xb@¥ ýÕ2q­@¥ ô9Xb@¥ úÀIb@¥ ô9Xb@¥ üÖöž†@45S&Á¾@45L˜_ö@1 +^5?|î@1Fnß @0 "Ðå`B@0›…=KW@/á-w1Å@/ת,ú@/á-w1Å@/Ío¡œ@/á-w1Å@/Ó< ì +?|¬h2:“?Ãÿž«R÷?‘;"Ùµ•Û?‹¦S¹?‘…ù/¬] ?“&XÄ=†I?}@T˜ÁÎ¥?’“Dæ»Zœ?‘ =׿?Jôª?“Ô^ ?”Rnwø?‚o,¬qVÙ?2ãsF­H?…Ë„f?ƒéÚisŒ?‡çìI.Î?‰áRqœË1@@$@&@ @:@8?ð?ð?ð?ð?ð?ð¿1öp&À?`3kõÖ?B›ÁŒàob?FekÐÏ@Ÿ†a…ó_b@¥ ø D ?aä<Ò#O?e鈨g?ÐÂUÜð£Ö?Õ qþá,C@Ÿf>uJ}@…@¦ã× +=q@¦ä“t¼@¦ã× +=q@¦䎊qÞ@¦ã× +=q@¦ä÷eý‹@¦ã× +=q@¦ãˆe”®@¦ã× +=q@¦ãŠ @¦ã× +=q@¦ã9Àëî@¡@bÐå`B@¡@bÐå`B@¡@bÐå`B@¡@bMÒñª@¡@bÐå`B@¡@aÊÀƒ@¡@bÐå`B@¡@` qu@¡@bÐå`B@¡@bMÒñª@¡@bÐå`B@¡@bZîc!@1ÉÎ_oÒ@1ÉÛ"Ðå`@-Š~ùÛ"Ð@-Š0U2a}@+wOß;d@+w>«6z@+æL/ƒ{K@+å¡ÊÀƒ@+æL/ƒ{K@+åýŠÚ¹ö@+æL/ƒ{K@+æÁ½¥?É_\p)Ï?¾‰máÚ?‘@˜¯³¸?ŒArUã@?÷6r In?¾ƒìÈÁ?ÐbMçê_x?’)£µ“[M@Ÿs ‚ç@†@­\âMÒñª@­\à@­\âMÒñª@­\âø7´£@­\âMÒñª@­\âø7´¢@­\âMÒñª@­\ä“t¼@­\âMÒñª@­\âø7´¢@­\âMÒñª@­\Öý!ÿ.@¨ËD“t¼@¨ËDÝ/¡@¨ËD“t¼@¨ËCþ\‘Ñ@¨ËD“t¼@¨ËD÷eý‹@¨ËD“t¼@¨ËCn.±Å@¨ËD“t¼@¨ËD“t¼@¨ËD“t¼@¨Ë@IQƒ@5õS&Á¾@5ô“t¼j@2ahr° Ä@2b¼£n@1—ï²-@1™ k¹Œ~@1p–»˜Çã@1q·Xâ@1p–»˜Çã@1t2ÊW§‡@1p–»˜Çã@1múCþ\’?žˆ2}? ¸×KG?’Z¡*CÂ?nii)â?‘§›ßÉîj?•ÍÂ^mÄ*?|öOÿÝ?“$i «%h?üÓqÔN‰?|Ø}Õ…?‘¦‘=W?“f:[êc#?ƒmÕ+&¬‰?þrªbT?‚ù…žÄ`x?…<ò N ?‡×7°º?ŠÐ+`È“@@@@@(@*?ð?ð?ð?ð?ð?ð¿3OAÙ0¿BòÔL´?Tý÷ÙMô?0¡¡PKW®@­\à"QOh@¨ËC«Æv ?tV lÂwõ?Pª³>o +“?ðˆ'PŶ?©` Å ý@ŸfÇÄÐbs@‡@­UÛ¥ãSø@­UÉ7KƧ@­UÛ¥ãSø@­UÖ_Ø­¬@­UÛ¥ãSø@­UÙÀëíú@­UÛ¥ãSø@­UàIQƒ@­UÛ¥ãSø@­UÝ}¿H@­UÛ¥ãSø@­UÞžš@©ÖÎÙ‡+@©ÖÍOß;d@©ÖÎÙ‡+@©ÖÆ$Ý/@©ÖÎÙ‡+@©Öɺ^5>@©ÖÎÙ‡+@©ÖÇæšÓ@©ÖÎÙ‡+@©ÖÇü¹#¤@©ÖÎÙ‡+@©ÖƸºÇ@7ÞHè§æ@7Ùè>BZî@3k¥ãS÷Ï@3gsüPH@2Ãt¼j~ú@2Áø -à@2Eœàu÷@2ÒˆÎp;?—¤o„C?äm°û0Ž?”—ýÉò€?šAÈ|»x?–~9n4ºÀ?”ªEñeX?ˆÿÀ)T¿Æ?’“ºƒ;Nû?“5ñ µ?•Œ ;qí?—ˆ”„òõ¤?˜I­}ý½Ä? “˜¯ÃÛ?‚ñêã ?Šó¿á§E?ˆW„hðQ?‘ ê$4 ?$Ìj½BÙ@@@@@,@(?ð?ð?ð?ð?ð?ð?qnÈ¿Wü•¶|?[§¼÷?6ȃn9@­UØBXÄ@©ÖÉrÓ¹?yÙÕY?X¦/ÔÌ•h?ãŸ#¹<Д?§v/²¶¹‹@Ÿkj9l¾ë@ˆ@ Ïèr° ÅÁ.„€@ Ïèr° ÅÁ.„€@ Ïèr° ÅÁ.„€@ Ïèr° ÅÁ.„€@ Ïèr° ÅÁ.„€@ Ïèr° ÅÁ.„€@o¤Ý/ Á.„€@o¤Ý/ Á.„€@o¤Ý/ Á.„€@o¤Ý/ Á.„€@o¤Ý/ Á.„€@o¤Ý/ Á.„€@3è†YJôñÁ.„>¤µÜÆ@2; Iº^Á.„M‰ûçm@1Àå`A‰7Á.„QnÙ‡@0øDЩ*Á.„NÜC,¥@0øDЩ*Á.„NÜC,¥@0øDЩ*Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø‰@««§ï²-@«««Æ§ïž@««§ï²-@««­w1Å@««§ï²-@««³ àÞÒ@««§ï²-@««¾š@««§ï²-@««µsê³h@««§ï²-@««¸Çâ‚A@§?ñ©ûçm@§?ò-V@§?ñ©ûçm@§?á£n.²@§?ñ©ûçm@§?Ú^5?~@§?ñ©ûçm@§?º¹õY´@§?ñ©ûçm@§?±N;Í6@§?ñ©ûçm@§?ÑÅ@6¥öý!ÿ.@6¡–R½<6@3û Iº^@3û…¸Që@3Ãt¼j~ú@3¹ûçl‹D@3¡:’£S@3’u%F +¦@3¡:’£S@3”g8}À@3¡:’£S@3“×Ûôˆ?‡YÍ_?‘‹PƧ¢$?˜U%ÛÌx?ºgk\0?©¦¥Ò?šúÉ‚X|?€‚ñêã ?”ŸÚ²t©?—+Áèlç?’ü#q\-v?°Ã¾_.ö?§/\¸ Ó?’‡ïõ+üB?‘¼Åâ<{?•@K/Ù{?“¶º Yæ¸?¬àåŸ ?™ þg¿@@@@@&@"?ð?ð?ð?ð?ð?ð?p=^Œ'¿sã§<€?^ùPñ¯~?tÜþ«¨+@««´7 +Ìð@§?Ö&²5?zõ8R‰ ã?‘c6ZGøö?òm6c*4@bÚ[ðôê@Ÿc•³(@Š@¦ÕoŸ¾w@¦ÕnÙ‡+@¦ÕoŸ¾w@¦ÕnËûµ@¦ÕoŸ¾w@¦ÕoiDg7@¦ÕoŸ¾w@¦ÕoŸ¾w@¦ÕoŸ¾w@¦ÕmquŽ@¦ÕoŸ¾w@¦Õl²•éâ@ªÁ¥ãS÷Ï@ªÁ¦ffff@ªÁ¥ãS÷Ï@ªÁ¤÷eý‹@ªÁ¥ãS÷Ï@ªÁ¢œwšj@ªÁ¥ãS÷Ï@ªÁ¡°‰ &@ªÁ¥ãS÷Ï@ªÁ¢\(ö@ªÁ¥ãS÷Ï@ªÁ¡|ÚQ@5:qÞi­C@59Çy¦µ @35ãS÷ÎÙ@35µsê³h@34“t¼j@33œ¾ß¤@2Åœàu÷@2Å¡ÊÀƒ@2Åœàu÷@2ÄFs×Ü@2Åœàu÷@2Ã÷ÎÙ‡?1·†Æjñ?‘6 '8?“a#mU?‹ÝÉ!ë#?“´<×?”K¬Ò&?|¬Çëý ?’áÄïÃõ?“1Ú©! ?’ÁÛ/’:?“Æ×q„nð?“.½þ¹Š?‚ù…žÄ`w?Ž`ŸÝïöF?„A'Š_^?†ú#ѧ?’3¨£„È?<ש‹äN@@@@@*@(?ð?ð?ð?ð?ð?ð¿5´Í@¿QីD?*¡µ-(·?0nèÛ>4@¦ÕnIõ£*@ªÁ¤zg¼?Ip»Ø/2?P ›,Y?í$ÀÞ?¦•/ru2-@Ÿf'aù¼@‹@§ì¸Qì@§ì·W‘Î@§ì¸Qì@§ìMfÜ*@§ì¸Qì@§ì¢Iò·@§ì¸Qì@§ìTÇ4@§ì¸Qì@§ìtà@§ì¸Qì@§ìÃN1?@•MÀƒn˜@•M¹b÷½•@•MÀƒn˜@•Mº½5L@•MÀƒn˜@•MÀØN‚¸@•MÀƒn˜@•MÀ?‚"Ó@•MÀƒn˜@•MÀ¦GÂ@•MÀƒn˜@•M¿g,qz@7uS&Á¾@7tÜÃn;%@23S÷ÎÙ@23Q·ePå@1H“t¼j@1H6íê3@1ÚQÎ@1ÇÚUÅ‚@1ÚQÎ@1ûµsë@1ÚQÎ@1ZìÂ?™I'%ö«?;"Ò,íÂ?‘y÷Ÿ$?Œ¸LHfX)?‘[p2å×÷?‘;•>zÅ?’Á ˆ|Ί?’Cb°¬?µÈN{BU?‘ňøwž™@«8Rn—P@«8C× +=q@«8Rn—P@«8D¨ÁTË@«8Rn—P@«8LÌÌÌÌ@«8Rn—P@«8M(Œç@©@£S÷ÎÙ@©@¥`A‰7@©@£S÷ÎÙ@©@¤ŽŠqÞ@©@£S÷ÎÙ@©@ ÞÒˆÏ@©@£S÷ÎÙ@©@ 6âë@©@£S÷ÎÙ@©@¢e+Õ@©@£S÷ÎÙ@©@ N¤¨Â@7`ØDЩ@7`|„µÜÆ@2’ Iº^5@2Œ"h Ô•@1q‰7Kƨ@1lú¬Ùè>@0ÑÞi­BÄ@0ÌL˜_@0ÑÞi­BÄ@0ÌC,¥zy@0ÑÞi­BÄ@0Ìí‘hr°?„F/·ÿP5? )™È.‡ +?•ï9aýô?—^tø -a?”NtyÞ"§?”m\¶WqÓ?€‚ñêã ?”ï©ÛÉ?‘Ûcu%ç+?”€ø§¼û3?”V ìi!¾?”6ð a@B?’C߯K?ŒöOÿÝ?ƒ<Õp?ƒ¦$H?‡v>ª¸ ?‰_uñšó@@@@@,@,?ð?ð?ð?ð?ð?ð¿O…]b¿Q}V%?Q žé¢Aþ?4÷×e§1@«8MU ±v@©@¢ß¶hÐ?q¯QÒ?U¤½ì º?âÉ‘üÉš˜?°{’ip +@Ÿg= –2@@­ŒÍOß;dÁ.„€@­ŒÍOß;d@­ŒäB “‘@­ŒÍOß;d@­`NJçÀ@­ŒÍOß;d@­ŒÔÄ +‚@­ŒÍOß;d@­Œíwq_“@­ŒÍOß;d@­Œïi(ш@›:wÎÙ‡Á.„€@›:wÎÙ‡@›9óøŒMW@›:wÎÙ‡@›9å 4¾ý@›:wÎÙ‡@›:` í À@›:wÎÙ‡@›:Áïâ_ë@›:wÎÙ‡@›:™±âöÈ@9µS&Á¾Á.„>¤µÜÆ@5{ Iº^@5b!]4>@51‰7Kƨ@5’3y¬6@3ÔmÅÖ8†@3ÍëvEÉÉ@3ÔmÅÖ8†@3ÐO$‚@3ÔmÅÖ8†@3ÕVWàé@8J¨?˜©ë¡•²ã?°ÿ›Éò^?–Ö³ ¯?œióꚆ?š†bC3Û@8J¨?–„̹мÜ?²-êΦn‰?š¦nØíÌX?¢}B›°HÀ?‘ˆò–Ò–P@8p÷?˜â¢0UF?©#¤ò!¾å?—êÄÅQŒ?–NåA¸. ?–÷u€Ë¾@@(@(@2@,?ð?ð?ð?ð?ðøøøøøøøøøøøøŽ@ª´¼j~ú@ª¸Që…@ª´¼j~ú@ª¹JåØ@ª´¼j~ú@ª¸Õ,Ê*@ª´¼j~ú@ª¶¸zL^@ª´¼j~ú@ª²õd©ä@ª´¼j~ú@ª·hÀÝ@˜ô)ûçl‹@˜ô(r° Æ@˜ô)ûçl‹@˜ô(Þà@˜ô)ûçl‹@˜ôŠ&™$@˜ô)ûçl‹@˜ô!ÎtrJ@˜ô)ûçl‹@˜ô#;ZVÎ@˜ô)ûçl‹@˜ô!Ì‘e@7 ]cˆe”@7Nî—ûœ@3k¥ãS÷Ï@3m\ûÊ@3Ú~ùÛ"Ñ@3äú=(,ï@2Ê0U2a|@2Ï å¯Ö@2Ê0U2a|@2Î\^ðu—@2Ê0U2a|@2Îâp߃?’èþt?WB~±&ð?”À6z/ä?„Ê_\ƒ?“Kêé-\?‘‚ÜïŠ=ù?|Ñb×¶@?’¦y¼?š×i"Òá4?y?Ž <@¯@?½öÍ?…4ü²ƒ4]?‰mýãÖ©¯?‰®‚ZÕnÀ@@ @*@$@9@7?ð?ð?ð?ð?ð?ð¿@–í¿HsN‹È?CêLïç?(²mnló@ª¶ªÔì@˜ô$kcbv?bOUD‰ã?Kr%W+@8Iç@8Ù?³·÷ù—e@8Î÷@8i§@8Å@8S@8û—?¤yíœØAd@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@¥äãS÷ÎÙ@¥äýó¶F@¥äãS÷ÎÙ@¥äã¼ÓZ†@¥äãS÷ÎÙ@¥äíBÃÉî@¥äãS÷ÎÙ@¥äÕÜÆ?@¥äãS÷ÎÙ@¥å1uŽ!–@¥äãS÷ÎÙ@¥å°ò{³@¥Šñ&éxÕ@¥‰€Ä›¥ã@¥Šñ&éxÕ@¥ŠòþÅm^@¥Šñ&éxÕ@¥‹ \ú¬Ú@¥Šñ&éxÕ@¥ŠýVlô@¥Šñ&éxÕ@¥‹#n.±Ä@¥Šñ&éxÕ@¥‹#n—@6ëµsê´@6]p£× +>@4R Iº^5@4W_oÒó@46§ï²-@4?iDg8@4TmÅÖ8†@4AÄ2ÊW¨@4TmÅÖ8†@4-ÈK]Ì@4TmÅÖ8†@4O·éùs?é‰w®Vzñ?—oN„Q?°70tæ_c?³n×È­?µý„¼N£?³_…]ÿ¸?öår5]v?•‡S‰Óü?²|ØèÍ?«ù Jy ?µ›Ì%v[Ÿ?³Ó½±bÈ·?ñ>Ò-‹µ?¤rI©‹×s?­ÌfÓ8‚º?´ÿB½À?¤åNka8?Óâlb% @@@@@@*@,?ð?ð?ð?ð?ð?ð?À(4ù´?“Zí•‚à?“šãã†.É?€°ݽa‹@¥åI~î…@¥‹~¹õœ?£S"‰Xò?]sC˜ ?õı=.G?Ô[Æç@ŸrÜżEf@‘@§ §ï²-Á.„€@§ §ï²-Á.„€@§ §ï²-Á.„€@§ §ï²-Á.„€@§ §ï²-Á.„€@§ §ï²-Á.„€@˜%¼j~ùÛÁ.„€@˜%¼j~ùÛÁ.„€@˜%¼j~ùÛÁ.„€@˜%¼j~ùÛÁ.„€@˜%¼j~ùÛÁ.„€@˜%¼j~ùÛÁ.„€@9%öý!ÿ.Á.„>¤µÜÆ@4™º^5?}Á.„M‰ûçm@3ÒÐå`A‰Á.„QnÙ‡@3:Ô,<žíÁ.„NÜC,¥@3:Ô,<žíÁ.„NÜC,¥@3:Ô,<žíÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø’@®N’ñ©ûç@®NªÍž„@®N’ñ©ûç@®N„w*äó@®N’ñ©ûç@®N…Qÿ“?@®N’ñ©ûç@®N“ÀÀÞ@®N’ñ©ûç@®NЏt¥@®N’ñ©ûç@®N‹'èOG@˜ë…¸R@˜èr° Å@˜ë…¸R@˜ëVÛåì@˜ë…¸R@˜ü[.æt@˜ë…¸R@˜ÍquŽ@˜ë…¸R@˜Ò—íº@˜ë…¸R@˜Òߤæ¼@7ÖšÔ,<Ÿ@7×Uí¡v@3À Ä›¥ã@3·©uÐ@2‹"Ðå`B@2‡V¤@2=cˆe”°@270…+hP@2=cˆe”°@25JWú7@2=cˆe”°@25ÇmÄ’ô?|çµB &€?“÷©ukBª?’ aMP?–.ÜbsÓ?”@‹sýÇM?”§QâèŒ?¢t Ø]Ù ?•Þðiß_?”?ðRÉ?š‰ÓÍ¡þ?•âôNï?”㾉´®Ú?Šv'GÛ?ŽúÞfP6…?†ð¦’½¶L?‡—jêAr?‹™t1ê«Ö? éT€O£@@*@*@,@8@7?ð?ð?ð?ð?ð?ð¿I..¸Ð¿ZkÊùŠ?G¦7Ô¸·?V̆œo@®N‹\N@˜Õ XŃ?oÝÃü¶?q6£²b‰Ú?Õ°¹¤%¿@?Ìr~žØH³@Ÿmí£èO@“@¦Æ$Ý/@¦Ä“t¼@¦Æ$Ý/@¦¿Ë’:*@¦Æ$Ý/@¦´mÅÖ9@¦Æ$Ý/@¦Í„M<@¦Æ$Ý/@¦Åm\ú­@¦Æ$Ý/@¦À6âë@¢ÐbMÒò@¢Ê~ùÛ#@¢ÐbMÒò@¢É­BÃË@¢ÐbMÒò@¢Ã9Àëî@¢ÐbMÒò@¢¹JôðØ@¢ÐbMÒò@¢Ç_oÒ @¢ÐbMÒò@¢Æ +¦L0@8(†YJôñ@8ü¹#¢œ@5c÷ÎÙ‡@5g +=p£×@4¶§ï²-@4Â\(õÃ@4QÞi­BÄ@4ˆºÇË*@4QÞi­BÄ@4[P°ò{³@4QÞi­BÄ@4Z…‡“ݘ?¡ÅꯨŠT?©o£þ„5’?±€ÐŸœï?·%W§Íþ$?þ"y?Žª?¦» VŒÂ¹?žŒÝÙ›P?¦wô›¦·?°Œ“ ¹‡?§×#Vz?Ÿ!ÞkDð?¥Ù6hC]?™{Tä=û?¥ð¡T³÷ñ?ªƒõêzÙ?¼¤5 +: £?™Øl›¹?˜ÒF€§ç@@@@@*@*?ð?ð?ð?ð?ð?ð¿1u®”¿MrR?Pò67?^ÊèØvl@¦Ä]Œ*ê@¢Æ±³­?oP'ÁLfƒ?}õë¯]`?³¡ÞT?Õµá¯Æ @ŸkÀ!f|Æ@”@¦ô@¦ô@¦ô@¦ôÞÒˆÎ@¦ô@¦ôªdÂø@¦ô@¦ôÞÒˆÎ@¦ô@¦óÿb¶®}@¦ô@¦óÿ¤?åÉ@¨Ã1©ûçm@¨Ã1©ûçm@¨Ã1©ûçm@¨Ã1ø .@¨Ã1©ûçm@¨Ã1N;Í7@¨Ã1©ûçm@¨Ã2¼£@¨Ã1©ûçm@¨Ã1ÑN;Í@¨Ã1©ûçm@¨Ã2¼£@0–šÔ,<Ÿ@0–šÔ,<Ÿ@,ëÆ§ï²@,ëÆ§ï²@,‘&éxÔþ@,‘‚©“ á@+ëjçÕfÐ@+ëxFÜ_@+ëjçÕfÐ@+ëC,¥{@+ëjçÕfÐ@+ëC•$?É^žQ5P‚?Òç{íj?‘$Cê¡@í?‹½XQê>æ?íOþtà?¼‚Ë¡K?ÐbMçê_x?’ ,øÕC©?Œqç©Fü?Hª¦ºón?Ø¥²À<(?Sñƒ´V.?€bMÕky?Œ¯þuõí?‚† SFò?‚ìxqC?†l&þ?†žóB» “@@@@@(@(?ð?ð?ð?ð?ð?ð¿Bú†€¾Ø½Ë€?1+žÀ˜ð£?u½›¥b@¦ôFOB@¨Ã1õòÎ?@‚'±=ƒH?!vȸN¯(?z¹%Ýrd³?:žKxf8@Ÿs +bû£@•@®‰öE¡ÊÁ@®‰ö“v@®‰öE¡ÊÁ@®‰ú¬1@®‰öE¡ÊÁ@®‰ùÎ_p@®‰öE¡ÊÁ@®‰þ¸Që…@®‰öE¡ÊÁ@®‰úÔ,<Ÿ@®‰öE¡ÊÁ@®‰ú’£S@§ÞÜ(õÂ@§ÞÛçl‹E@§ÞÜ(õÂ@§ÞÓ¶E¡Ë@§ÞÜ(õÂ@§ÞÒn—P@§ÞÜ(õÂ@§ÞËíúCÿ@§ÞÜ(õÂ@§ÞÊJŒM@§ÞÜ(õÂ@§ÞÉk¹Œ}@5ò䎊@5©ûçlŒ@2½‘hr° @2¹xÔýó¶@2'KƧïž@2"GE8ï5@1Ç ù kº@1Á-w1Æ@1Ç ù kº@1ÀU2a|@1Ç ù kº@1À©*0V?|öOÿÝ?¦Ì '?‘`×›mÏ?ŽwX/8?‘à2F0µÔ?’—ØPö«?|öOÿÝ?’0nà=Q“?“Ú%¿»8?‘èÒ§ˆ„Æ?’…4Ü.?–†F5Æ?…ÑTë0Ó?ŒÛÏ·+?ƒ´],m=?„À"aËô??‡´*žZ}Õ?ˆ”Tj«›ª@@@@@,@,?ð?ð?ð?ð?ð?ð?V½;Ï<¿qì‚=€?IB¡HÒ?F7õ~‚p@®‰ùOÞÅh@§ÞÒ£K Z?hÞJ‡PÍ‚?e«ýõ­[?ß`d>‰íD?Ó罜ÃÔ@ŸeíG"¯ã@–@ªT²-V@ªT²-V@ªT²-V@ªT´êJŒ@ªT²-V@ªT´ðØDÐ@ªT²-V@ªT´9Xb@ªT²-V@ªT± ²•ê@ªT²-V@ªT±œàu÷@¤ó‹C•@¤ó‹C•@¤ó‹C•@¤ó‹xFÝ@¤ó‹C•@¤ó‹’:)Ç@¤ó‹C•@¤óŠçÕfÐ@¤ó‹C•@¤ó‹’:)Ç@¤ó‹C•@¤óŠ~ùÛ#@3ÞHè§æ@3ÞcŠ @/ö“t¼@/óÝ—ö+j@.éxÔýô@.m\ú¬Ú@-­úCþ\’@-­V”@-­úCþ\’@-­„M:“@-­úCþ\’@-­„M:“?€‚ñêã ?jÝ‚È?‘WßÈDö@?‹ËØ|*(?ùª¨?À­Õß}º?|¬Çëý ?’,ö´´Ï#?Å)Ì_“?Hª¦ºón?ë,YÁ?{L Õ¢D?‚oÁÆÜ§ö?ŒË›Í‡Çq?‚§W®ê ?‚ð'ã:ÂÝ?†µ°jÆÃ?†špk Y@@@@@&@&?ð?ð?ð?ð?ð?ð¿ +‡+ +¿õE,@?7tw¤'6ù?RœÉ—M@ªT²RVPx@¤ó‹̃V?W@›êµ´?9ŒÓÉí¾?ºÌ2®L?á—Ñ~[@Ÿgv!ŸpÇ@—@¯ )xÔýô@¯ $¡àd@¯ )xÔýô@¯ (×*R@¯ )xÔýô@¯ 2¤Î@¯ )xÔýô@¯ %Éæ@¯ )xÔýô@¯ !>Ô^S@¯ )xÔýô@¯ äÕ×@›…\(õÃ@›…Š=p£×@›…\(õÃ@›…›Ýl…@›…\(õÃ@›…É;@@›…\(õÃ@›…Œ»È™@›…\(õÃ@›…œwß½@›…\(õÃ@›…œKpà@8‚ò䎊@8ƒ@Þ@3³S÷ÎÙ@3¶ú“¨$0@3“t¼@3 +G’v½z@2s&Á½¥@2wd"6É@2s&Á½¥@2uPyõ/–@2s&Á½¥@2qMò5–?Ĺó¥p?” ÆÄPˆ?’/b ?ÉV黀?‘€D”. +r?Ò°(=°Ï?…nDyB Ã?’þáOîö3?‘6'@ ?‘î!2Ã?Úz·O”«?W¼ÇX.ð?¶d¤vG݃?ÓI_°Sì?ƒzb¯˜êâ?ƒbcú»ê°?ÎN^@pá?‡—¥5Ÿ*[@@"@"@"@,@,?ð?ð?ð?ð?ð?ð¿U[&–à?_Ç>`?JYA¨b,?C”ºBÙÔ@¯ "Æ¢Ó@›…“ÈÒ2ß?g<=é,€?cÞÞÙ¥”z?ЕUqÆ?Ì.Ö€*@Ÿknò3@˜@°ç+ JÁ.„€@°ç+ J@°çÛô‡ý@°ç+ J@°æéxÔþ@°ç+ J@°ç´¢3@°ç+ J@°渺Ç@°ç+ J@°æ”Fs‚@«H!ÊÀƒÁ.„€@«H!ÊÀƒ@«H ù kº@«H!ÊÀƒ@«H Ä›¥ã@«H!ÊÀƒ@«H!ò×s@«H!ÊÀƒ@«H uöý!@«H!ÊÀƒ@«H!ò×t@5`ØDЩÁ.„>¤µÜÆ@1ÜIº^5?@1ÜÌÌÌÌÌ@0±‰7Kƨ@0±£n.±Ä@0#ÉîËû@0#× +=p¤@0#ÉîËû@0$?åÉ@0#ÉîËû@0#©*0U2@8J¨?¾‰máÚ?‘"žæÆó¡?ŒªèkÜ?ëÎ@ A2?ý‰w'¬@8J¨?’‡Iš÷?“û#ÆGf?e”[|ú(?Ö§­îQD?±—'¶Ü+@8p÷?3I¶#i?‚¸“Îè ø?ƒE 8?†¼Š˜L¥÷?†Óß +tõ@@@@ @*?ð?ð?ð?ð?ðøøøøøøøøøøøø™@¨ âMÒñª@¨ ãS÷ÎÙ@¨ âMÒñª@¨ æ¸ºÇ@¨ âMÒñª@¨ èe”¯O@¨ âMÒñª@¨ áG®{@¨ âMÒñª@¨ á:’£@¨ âMÒñª@¨ âø7´£@¡Ç+ J@¡Ç+ J@¡Ç+ J@¡ĵܯ?@¡Ç+ J@¡À4mÅ×@¡Ç+ J@¡Àƒn˜@¡Ç+ J@¡Â@·€4@¡Ç+ J@¡¿¤?åÉ@5Ì]cˆe”@5ÍBÃÉîÌ@2”›¥ãSø@2“t¼j~ú@1ö§ï²-@1öR½<6@1¨è§æ›@1§éùrG@1¨è§æ›@1©k¹Œ~(@1¨è§æ›@1§Á½¥?}Ñ¿ž,?’@k=[?”Uy*@1Åœàu÷@1ÅL˜_÷@1Åœàu÷@1ĵܯ?@1Åœàu÷@1Ä“t¼k?ˆÿÀ)T¿Æ?Æ4ÓLè?‘jh¨qã9?î®)„àµ?‘×´<î¯j?‘îƒÔ1a?}Ñ¿ž,?’CòO…?ß‹…&?Ë{4æk?‘Jâ”âj?“å¡jÚ?‚ù…žÄ`w?µœ7}?ˆAᆽÃí?ƒE 8?‡v>ª¸ ?‰_uñšó@@@@@(@,?ð?ð?ð?ð?ð?ð?H> €¾áž‚?#uw#–×Ñ·Y@2ƒt¼j~ú@2uŽ!–R½@1™Œ~($ @1ìVÕÏ«@1™Œ~($ @1”`ªdÂø@1™Œ~($ @1”ŽŠqÞj?„F/·ÿP5?¦@%:Èæ!?™ûР'®?–àa¦vfÚµÕ?‰6‰õË?ˆëÅoë@@@@@*@*?ð?ð?ð?ð?ð?ð?S<­L.?uˆB‰)?C3}ºÑ†?ZUǵ2@©WÃCL\@ž°ü?dËxŸ€Î ?z±GÃv>b?ʉGl¯~?ñkÖêBJa@ŸiÕêßl@œ@¤  Iº^@¤ þú??@¤  Iº^@¤ õ¢Ûñ@¤  Iº^@¤ ¼ñ}¹@¤  Iº^@¤ þžHá4@¤  Iº^@¤ ª=p£Ö@¤  Iº^@¤ ‡h§Àä@œQXbMÓ@œQc¤ °q@œQXbMÓ@œQ+øô@œQXbMÓ@œSªÐéùT@œQXbMÓ@œQ‡ø@œQXbMÓ@œQxQë…@œQXbMÓ@œP)~×ð@6Q|ÚQ@6SÿÚJ,§@3ahr° Ä@3Cj‡‰— @2¤¼j~ùÛ@2=Ëc;$L@2Þi­BÄ@1ÍáD|@2Þi­BÄ@1Õ¼£n/@2Þi­BÄ@1«=€üã?|¬Æ Væ?”Y@ðãT?¡Wˆ%ÞW?Ÿ§VWD^„?§¡«[q)?–2}‘hJ?¿pÉÃV?–¹ÐÑÎn?•óäƒK°”?£ô ä#ÿ?§œZ.žÈJ?¦"4M©?Љ ¯Ó1Ð?¦-œºš?œÞl½o?£{iÚO½Â?†ˆ#.÷?ˆþë]èÆ@@@ @$@@.?ð?ð?ð?ð?ð?ð¿Ž\a­¿“¶Mâ¹€?ÀÿCÞXÀ?†Ž^¼•p@¤ ì kŒ @œQ-óRx?¬k²³ŽÂ?¡#ÿçÆí@]r¬{0æ4@53é[½æ@Ÿaÿoçs@@¨| A‰7L@¨|ÎÙ†@¨| A‰7L@¨|$Ý/ @¨| A‰7L@¨|žš@¨| A‰7L@¨|" Iº^@¨| A‰7L@¨|]cˆg@¨| A‰7L@¨|U›=@¯ ÿ|í‘h@¯ +éxÔþ@¯ ÿ|í‘h@¯ ýVlô @¯ ÿ|í‘h@¯ ÿ—$tT@¯ ÿ|í‘h@¯ +MÒñª@¯ ÿ|í‘h@¯ +4mÅÖ@¯ ÿ|í‘h@¯ +Ä›¥ã@7Î쿱[X@7Ë=ÈK^@3pÄ›¥ãT@3s{J#9Á@2ö§ï²-@2ør° Äœ@2J0U2a|@2Fö”Fs‚@2J0U2a|@2KC•%@2J0U2a|@2Iº^5?}?гá‡}?‘è™è;?–•Kù̃æ?‹¯eU5?’êÔÒ?“lP {“›?|öOÿÝ?” Á lŸž?’üüšë‚J?1ð'7éÃ?”°XÍï#Ë?•åÖuÍa?…~ÆÎÇ$†?•¾Ä6Ü?šˆøQû±?‡¯½.SM?ˆ‹”âó?Š*ÊÔQãú@@@@@@?ð?ð?ð?ð?ð?ð?Y‰V8¿XSî\?Sl¨äD?)¥ºq,sl@¨|¯W¢@¯ +LeL?q îÔûõ?KP2s?ä•Yº6¡?™º +|@Ÿh5¿½`@ž@ªJ Oß;d@ªJ-#¯å@ªJ Oß;d@ªJ +î|#÷@ªJ Oß;d@ªJ¿ß¦¢@ªJ Oß;d@ªJì%%ì@ªJ Oß;d@ªJ[a™J@ªJ Oß;d@ªJ SøßS@œï²-@œèÁTɇ@œï²-@œí¯‘;@œï²-@œQÓóž@œï²-@œïË©½}@œï²-@œì:…µ@œï²-@œöMкß@8G>«6z@8=\E$õÅ@3Ô›¥ãSø@3Ù¢ÙâtÆ@36§ï²-@3;·Çóãj@2œÚQÎ@2ž6'Š­ @2œÚQÎ@2žÌ÷gëÄ@2œÚQÎ@2œvJßø#?Ĺó¥p?’åƒçµ?’­a0{"Y?}ñoð‡#?‘ ªÊë×?‘ å>µÇ¤?|ï"<¶~~?”„Xžq?”‚Z5_Ü?‘Ÿx¾¼Cþ?‘U—’Z"—?§zS!Ń?±‹ F÷?Ž%€$ ß?‡— ‹þUr?…»š¤Gtµ?wOH]Ý?‡8ÏœŒæf@@(@$@&@$@.?ð?ð?ð?ð?ð?ð¿H·Tó?Qœ¾­Æ?3„µm<?8H˜ƒŽ¶™@ªJïó¾@œîq[N¢?,‚!bG`?[ÊÎ[±¡?X9JÕØ*z?¾ÁòúÖ.¨@ŸjÖ<K@Ÿ@­‡:^5?}@­‡8bMÓ@­‡:^5?}@­‡;/ìVÖ@­‡:^5?}@­‡4¼@­‡:^5?}@­‡5Ž!–T@­‡:^5?}@­‡.ŠqÞk@­‡:^5?}@­‡.;Í5¨@¨(õÂ\@¨$Z¬@¨(õÂ\@¨Ÿ¾vÉ@¨(õÂ\@¨“t¼j@¨(õÂ\@¨ë…·@¨(õÂ\@¨Ë’:*@¨(õÂ\@¨ -à @6 Î_oÒ@6ÏAòØ@3|í‘hr@3‰ k¹Œ~@2þV“u@2õŽ!–R½@2£ÉîËû@2˜r° Äœ@2£ÉîËû@2›íúCþ\@2£ÉîËû@2›jçÕfÐ?„F/·ÿP5?—.‰†5¸?•ÝFê˜}é?”ø”gt>?—‰ QQ0¯?”›(¯“?“Æ×q„nï?i½ÆÝCv?ïCbŸNy?™Ücãgp?žFl}ÖÑì?™6Œ%ß6?–EÑ}?Ž`ŸÝïöF?ƒM¬Öe—_?Œ¶š?$Ìj½BÙ?‹ú èNÆö@@@@@,@*?ð?ð?ð?ð?ð?ð¿`R䑼¿QÑÅ?:û†ùË?c¹¸Tí@­‡37¡Læ@¨uÎ&p?]LOB½‹?‚ó¯áž½¥?¶e:é?ó2¦!Á@ŸiÂŒy@ @¯o²-@¯oß;dZ@¯o²-@¯p©*/@¯o²-@¯np:û~@¯o²-@¯q&éxÔ@¯o²-@¯næ1ø¡@¯o²-@¯nÙ‡*@¬KƧïž@¬LÌÌÌÎ@¬KƧïž@¬KíúCþ@¬KƧïž@¬KíúCý@¬KƧïž@¬MquŽ@¬KƧïž@¬L¿±[W@¬KƧïž@¬L<žìÁ@5kµsê´@5k’:)Çz@0‡ÎÙ‡+@0‰Î_oÒ@/íOß;dZ@/îV“t@-ÑÑN;Í6@-Ó33334@-ÑÑN;Í6@-ÒþÅm\ú@-ÑÑN;Í6@-ÒþÅm\ú?žˆ2}?ZÁ».œ?‘šÕU#?Œݶ\ñr?÷6r In?ÍàÊaùX?€‚ñêã ?’`5žña?ˆ9²0?‡@Cvì×?ÐFf$?–’+¸¢d?‚íWçé„?ŒË›Í‡Çq?‚ÂÌ]æ?ƒ3¸Î{Z?†Óß +tõ?†µ°jÆÃ@@@@@&@*?ð?ð?ð?ð?ð?ð¿!ës>€¿>&?1Trïsoÿ?A<.í¹@¯oÆù{h@¬L·»?QA°Ú¡X­?3å­Î&1?«¤}¡ôH‚?qþ˜–ãj@Ÿh&•‰Ü@¡@¥k…¸R@¥k Iº@¥k…¸R@¥l"h Ö@¥k…¸R@¥l1&é@¥k…¸R@¥lL˜_@¥k…¸R@¥k Iº@¥k…¸R@¥kC•@£È»çl‹D@£È¼(õÂ@£È»çl‹D@£È¼¾ß¤@£È»çl‹D@£È»quŽ"@£È»çl‹D@£È»quŽ#@£È»çl‹D@£È»À6ã@£È»çl‹D@£È»²þÅm@4„¯O „M@4„ohÜ@,`A‰7K@,S&Á½@) 1&éy@) íúCþ]@&æL/ƒ{K@&æ?¼@&æL/ƒ{K@&æ?¼@&æL/ƒ{K@&æL/ƒ{K?‚á²Olºü?°çR;?‘"žæÆó¡?‹µ™eU!µ?íOþtà?¶*WFÑ?|öOÿÝ?’˜‰%F²?ˆ9²0?1ð'7éÃ?Ó%y*£=?NÂò‚Ì`?‚2Y0â³?Œ°¶.Ä+Æ?‚q6tNø7?‚ãaÎúvh?†ˆ#.÷?†ˆ#.÷@@@@@,@*?ð?ð?ð?ð?ð?ð?‚~€¿a‘p ?#CT^Óß7? dw@ Ž@¥kP£8™@£È»Û¾Ò?BéØõtM¶?-·õÖªÉ?'cà<3d?eÔFX% ¹@Ÿh² 16@¢@¢ŒµÂ\)@¢Œ¶°_¯@¢ŒµÂ\)@¢Œ¹°d5ë@¢ŒµÂ\)@¢Œºƒ¹hç@¢ŒµÂ\)@¢Œ·~Ñ•@¢ŒµÂ\)@¢ŒÉù.@¢ŒµÂ\)@¢ŒÑ…®D@–\S÷ÎÙ@–\S,øü"@–\S÷ÎÙ@–\M@ÖA@–\S÷ÎÙ@–\JØ¡òK@–\S÷ÎÙ@–\lÝŠ@U@–\S÷ÎÙ@–\€Ã‚¿w@–\S÷ÎÙ@–\ªLËŒ@6–»˜È@6Uæâø2@3¡hr° Ä@3¨xìê×@3îùÛ"Ðå@3쌜q +¶@3…œàu÷@3‚ Ž£é,@3…œàu÷@3Švº‚@3…œàu÷@3Št' fµ?~Ov_Ø­«?–Hk«7®?µ„9­Ä /?ª8†®3šÀ?¦\þǵ"5?¤/…J§ÄÙ?„ÜNó7·å?•Ûq'æä?¶…X‹›A¦?¨jKfùŽ?£„\è³s?ªfõL®O?Š¥þ}¿t7?Ž~†^O0?¡Ï`¿xbò?«-Å Ûô?©FRv–.?¦6é`×%@@&@,@*@:@7?ð?ð?ð?ð?ð?ð?sËú½é?|<%@?Q©ˆÖÈ?SÌPÈGBf@¢Œ¼ööKe@–\f³îN +?kQÎ)±dç?o…̶¤?Ëîô‚½]Þ?ÌšrZÊðS@Ÿa3i® q@£@¬„ +=p¤@¬„KƧï@¬„ +=p¤@¬„éá°Š@¬„ +=p¤@¬„È´9Y@¬„ +=p¤@¬„$Ý@¬„ +=p¤@¬„_Ø­­@¬„ +=p¤@¬„ +=p¤@®¨ž¸Që…@®¨š^5?}@®¨ž¸Që…@®¨ŸØ­«Ÿ@®¨ž¸Që…@®¨ž5?|ï@®¨ž¸Që…@®¨ž\‘ÑO@®¨ž¸Që…@®¨IQ‚ª@®¨ž¸Që…@®¨¡–R½<@7ÖšÔ,<Ÿ@7Ñ‚©“ á@3J^5?|í@3KC,¥z@2—ï²-@2—ÎÙ‡+@2a:’£S@2a|ÚQ@2a:’£S@2aN;Í5¨@2a:’£S@2a:’£T?§Q,Äš¤?:LÓá +í?‘ŸÇSñ?Œ9‚Ù.?’¥.Kn Í?‘É=¦þï?Ž=fA:?“-N•I`(?»Þ‹"è?‘.}áµ$?”*v7¹¿?lINõÕ„?FpÉ'Ý?)‰€Zw?‚á²Olºý?…®×__C?ˆk! ¨l?†¼Š˜L¥÷@@@@@@?ð?ð?ð?ð?ð?ð?4ÏG,è?U/ŽX?5£ËÇ[ÌX?8–­â˜ˆ@¬„%§Ç¤@®¨ž=6?IÝœ¬&?Xùø#_Â?M}Þg‰K?¯b»]šÔ@ŸozaØ^@¤@­q7ÎÙ‡@­q/²- @­q7ÎÙ‡@­qO–»™@­q7ÎÙ‡@­qTêJŒ@­q7ÎÙ‡@­qLIº^4@­q7ÎÙ‡@­qHŒç°@­q7ÎÙ‡@­qG†Â&@ªF›¥ãT@ªF+ J@ªF›¥ãT@ªEü¹#¢›@ªF›¥ãT@ªEÿØ­« @ªF›¥ãT@ªFN¤¨À@ªF›¥ãT@ªFÉä@ªF›¥ãT@ªF *0U3@7¨†YJôñ@7«àÞÒˆÎ@2ý‘hr° @2úÀƒn—@2²-V@2‡1Å‚@1Ê0U2a|@1Äg8}¿@1Ê0U2a|@1Â@·€4n@1Ê0U2a|@1Áò×s?—¤o„C?“à‘û?¢µ‰Š’b?’ {½4?”‰Wïÿ·?–À¬‡$?‚á²Olºü?šÒ’](¼+?™”uÀdª?’RÖò?™Ÿ»6“?–ª ã*Ã?ŒÊ­#г^?îŠõ ?Цÿßë?¤?‡•ó¨–ˆ?>LR_5?‹Ûx§Þ@@@@@$@$?ð?ð?ð?ð?ð?ð?sžf<€¿3²z?g‰Ö‘é1?P£žüæé©@­qCƒy>ˆ@ªF³‡GÎ?ƒ‹°ÔZI?r¼m°Ç9À?ûg¦zOJ>?àîw¯`@Ÿkré @¥@¤s¶E¡Ë@¤‡ï²-@¤s¶E¡Ë@¤jrºaû@¤s¶E¡Ë@¤k/Š1l@¤s¶E¡Ë@¤kB«þ[@¤s¶E¡Ë@¤kÌ>ÒQ@¤s¶E¡Ë@¤k”ÝUæ@–ðE¡ÊÀƒ@–ð8Ôýó¶@–ðE¡ÊÀƒ@–ð30 @–ðE¡ÊÀƒ@–ð>eíH‚@–ðE¡ÊÀƒ@–ðD¦ê9@–ðE¡ÊÀƒ@–ðIÑ2­ª@–ðE¡ÊÀƒ@–ðGENO@8`ØDЩ@8XN¤¨ÁU@2?|í‘h@1ý>ŒâY@1å`A‰7@0ýKTkþŽ@0}cˆe”°@0z—~ýo¿@0}cˆe”°@0|c‹œ*@0}cˆe”°@0jâíDö?æ ç«Z–?”¬1ÅÊQ?‘–[Ze6?‹ÀG&ÁÌ®?’Žºù“H?‘4ލ«,X?æ ç«Z–?”òÌ¡ZùÞ?„š6?5‘Êß) ?’+Ñ2®?øŸ4Vå¡?æ¡‚á¾A?P¬êÝñ?‚€Ü‡Rçá?ƒ9†ò??ˆ¤¦­¤(¹?ŠuRZIòr@@,@$@$@:@2?ð?ð?ð?ð?ð?ð?#€L]¸?E|Á7§?2îìàHQ?Có´öµþ@¤kƒ#è#@–ðFÿ}–9?BdC;ö²š?Rô P”šh?~ªëÆet?”~H +@ŸsXñlšb@¦@¨–Iº^5?@¨–IxÔýõ@¨–Iº^5?@¨–IÔ•+@¨–Iº^5?@¨–IÇy¦µ@¨–Iº^5?@¨–IÇy¦µ@¨–Iº^5?@¨–I 'RS@¨–Iº^5?@¨–IxÔýô@«–“u@«–E¡ÊÂ@«–“u@«–Ov`@«–“u@«–R½<6@«–“u@«–‡+ @«–“u@«–z—@«–“u@«–“u@/Ñ ²•éâ@/Ñ ²•éâ@*©7KƧï@*©7KƧï@*E¡ÊÀƒ@*R½<6@)`ªdÂù@)SŽóMk@)`ªdÂù@)SŽóMk@)`ªdÂù@)`ªdÂù?É^³Dw'?Á+gÅß¶?‘ŸÇSñ?‹½XQê>æ?îú/´`?¶*WFÑ?ÐbV‡,?’ +‰¸Ì?ŠA)Nîá?3.Ylî?Ö§­îQD?Sñƒ´V.?€b¡´ñ@?Œ¬Çëý ?‚s@ˆaÛ?‚ãaÎúvh?†‰Oú|q?†‰Oú|q@@@@@,@*?ð?ð?ð?ð?ð?ð¿ ¡ˆëp¿+P*¹´>öÓÀ4ÇZ?0,ô–‚å@¨–I£ÙÀI@«–\€E¯?ô'ðú;&?$ÿÈYâš?¦KOþ˜?CTõêd5r@Ÿs¾ù¢¿@§@¦‹áÊÀƒÁ.„€@¦‹áÊÀƒÁ.„€@¦‹áÊÀƒÁ.„€@¦‹áÊÀƒÁ.„€@¦‹áÊÀƒÁ.„€@¦‹áÊÀƒÁ.„€@§3‡®záÁ.„€@§3‡®záÁ.„€@§3‡®záÁ.„€@§3‡®záÁ.„€@§3‡®záÁ.„€@§3‡®záÁ.„€@8õS&Á¾Á.„>¤µÜÆ@48r° ÄœÁ.„M‰ûçm@3'KƧïžÁ.„QnÙ‡@2¿ò䎊rÁ.„NÜC,¥@2¿ò䎊rÁ.„NÜC,¥@2¿ò䎊rÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø¨@¦’}p£× +@¦’ŠÀƒo@¦’}p£× +@¦“ qv@¦’}p£× +@¦’ÔFs×@¦’}p£× +@¦‘á½¥@¦’}p£× +@¦‘HK]Ìc@¦’}p£× +@¦‘€-à @ªAݲ-V@ªAƧï²@ªAݲ-V@ªA íúCÿ@ªAݲ-V@ªA]/Ÿ½@ªAݲ-V@ªBD%®æ2@ªAݲ-V@ªA¼¹#¢œ@ªAݲ-V@ªAí„M;@8[¹Œ~($@80–»˜Çâ@3…?|í‘h@3„`ªdÂø@2v§ï²-@2i k¹Œ~@1øDЩ*@0óÉîËû@1øDЩ*@1aä÷eþ@1øDЩ*@1}¿H€?¬å'[ V÷?È”SÂëãî?Æ€v€Fd­?ÃTù Ö?ÓìôC€ò«7@¡þOß;@¡þXâe@¡þOß;@¡þlô!@8wâ‚@·€@8o·éùr@3µãS÷ÎÙ@3´ýó¶E¢@2¢-V@2 @1a:’£S@1bñ©ûçm@1a:’£S@1c¼ÓZ…ˆ@1a:’£S@1cn—P?гá‡}?”û#T©È?“=P™Ê?$¿ÀºÍ?“ £Ê­?’ß5¤µÜÆ@4£÷ÎÙ‡@4¨SÌ)¤@4b-V@4n¤èÙ +@35µsê³h@37庭ά@35µsê³h@35óf¹âÔ@35µsê³h@3ªn<Øà@8J¨?“ŸÈÖ?1?£œoðM¦"?ŽöW–}ä8?”pðÈ­°v?˜!žk$_@8J¨?˜œóÜš?šˆg^}®?ãGŒ%<â?”æÞ¡Ú_Z?•@ô¤,@8p÷?“I–ÏtþM?š6釯¤†?‹³¥vd‹ó?Žl_N?—Q"1Ú@*@*@$@:@8?ð?ð?ð?ð?ðøøøøøøøøøøøø¬@¯Bs3333@¯Bst¼j@¯Bs3333@¯Bs3334@¯Bs3333@¯Buµsê²@¯Bs3333@¯Bt9Xb@¯Bs3333@¯Bra|Ú@¯Bs3333@¯Bqë…¸@¦–¾vÈ´9@¦–¿|í‘h@¦–¾vÈ´9@¦–½ó¶E¢@¦–¾vÈ´9@¦–¿¤?åÉ@¦–¾vÈ´9@¦–¿|í‘i@¦–¾vÈ´9@¦–¿oÒô@¦–¾vÈ´9@¦–¾ƒä%¯@6VšÔ,<Ÿ@6TêJŒ@25ãS÷ÎÙ@26E¡ÊÀƒ@1;Ƨï²@1<"h Ô•@0³&Á½¥@0³¶E¡ÊÁ@0³&Á½¥@0³S÷ÎÙ@0³&Á½¥@0³Z…‡“Þ?|öOÿÝ?ï1ïºÅ?’ +·>á ?Œ9‚Ù.?‘˜¯ +`É?‘PÊÑ<Ýl?|¬Çëý ?’5CàQ?ð{¥âdú?‘*Uešß?‘\{3>Ôa?ÐnçK/?‚ù…žÄ`w?Å9–o?ƒúʳ_Ä?ƒ ?ÿ½?‡?®\Âä?†ïRÉv‘Ñ@@@@@(@,?ð?ð?ð?ð?ð?ð¿+A‡U ¿ã5€?*ÖkõË4?÷»ˆ?kJ@¯Bs#A•Â@¦–¿E+x?Jx—uÄ?5Yhâ5‡?¢ˆ-Óí§?vì_®Ã¡°@Ÿf»{’Î@­@¥Q'l‹C–@¥Q'l‹C–@¥Q'l‹C–@¥QFYJôñ@¥Q'l‹C–@¥Q-„M;@¥Q'l‹C–@¥Q#¯·é@¥Q'l‹C–@¥Q&ö”Ft@¥Q'l‹C–@¥Q*Ú¹õZ@©Iº^5?@©K…¸S@©Iº^5?@©JÍžƒä@©Iº^5?@©V+jçÕ@©Iº^5?@©LÌÌÌÌ@©Iº^5?@©QÞi­C@©Iº^5?@©P Ä›¦@7[¹Œ~($@7^ÿ—$t@2ÞÙ‡+@2Êu%F +@24“t¼j@2#&Á½¥@1B‚@·€5@1:Ú¹õY´@1B‚@·€5@19³Ð|„¶@1B‚@·€5@16µ '¼?ˆÿÀ)T¿Æ?©V½jnè¶?˜/×T•£ð?“zRÈUÄ?•BPbC¡©?™ÞW4»²—?–ªÎ­¡?¦;ûTM¿n?±ˆµZ7?—,àÐÑž?›Hدâ[Â?¢’©)u%?…™ï ufÝ?vùv“?‰6~„æAÕ?…<ò N ?Ž•w “w„?屘Úã@@@@@,@*?ð?ð?ð?ð?ð?ð?Lj…`?S–⛤?H7Äg?A"FSÈ@¥Q',¹¢@©N)ôLf?hL´‰² d?^m°…zlj?ÊlN· D7?¥‹†ûèÌÓ@Ÿi½=H/`@®@®ÐH´9X@®ÐBMÒñ©@®ÐH´9X@®ÐJŒL˜@®ÐH´9X@®ÐIá°‰ @®ÐH´9X@®ÐGRT`©@®ÐH´9X@®ÐF¸ºÇ@®ÐH´9X@®ÐHè§ç@¦¹Û"Ðå@¦¿;dZ@¦¹Û"Ðå@¦·€4mÆ@¦¹Û"Ðå@¦¹Û"Ðå@¦¹Û"Ðå@¦¹ k¹Œ@¦¹Û"Ðå@¦¶ð¹@¦¹Û"Ðå@¦¸ -à@87â‚@·€@823œ¾à@3pÄ›¥ãT@3r&€IQ@2´“t¼j@2·¯·é@2n_oÒ @2ohÛ‹­@2n_oÒ @2p6âë@2n_oÒ @2q4êJŒ?‡YÍ_?“…­tµH?“ï~í"?ŒR‹w#z?“r {#¥&?“Q´Î`°€?¥K¶{Oÿ?“£PuòN?–ˆkCünL?“^œW.‡?“ÀVâŸì?”Æ*%>g?¬¼•§&Œˆ?·ïö)h?† + Ðló]?„À"aËô??Š|)-}í(?‹¼`’ i2@@@@@*@,?ð?ð?ð?ð?ð?ð?U£»¥l¿R>]Ä2?4ds!—Â?G}‘[É­õ@®ÐF¢™@¦¹=ZÀ?UƇ"åçþ?_vz®ò?©Ÿ +gÎÐ1?­œ3Œw>@Ÿn‹úªoô@¯@§q&éxÕ@§o ‰ª@§q&éxÕ@§E9g@§q&éxÕ@§kHƾ@§q&éxÕ@§‘ˆ÷îk@§q&éxÕ@§cÈÑrÊ@§q&éxÕ@§zÿØú?@™.wÎÙ‡@™.vª@Ñ@™.wÎÙ‡@™.]Ø«˜7@™.wÎÙ‡@™-•Ølÿ]@™.wÎÙ‡@™-êé‰î@™.wÎÙ‡@™.gíF¶d@™.wÎÙ‡@™.háŸ@7D¯O „M@7@JK;æ˜@3; Iº^@3.„üc5u@2ù7KƧð@2æŠÇt@2zÔ,<ží@23‚õ]–@2zÔ,<ží@2Sß2û0@2zÔ,<ží@2UÍíà ­?e™”XWø?”áê ?•|i=÷ñ¾?ª ¦õc“?£¤Éí¢?¦Þ}‘çþ?“Ëî(Ù_]?’3ÿï¥Ç?¯üC#]Â?·Ñ©éµ.Ý?¦lŠ­É3Ç?¡l–ðf|?ŽÚ–ÙŽ¿¨?œ ÖHŒ3?‹y¸–æ?•yyȧÚ?¡*«niCÆ? ÙWƒœÕ@@$@@(@;@8?ð?ð?ð?ð?ð?ð?U¤4«¿^c4~"?l†–;ì?lÊÎë´Jˆ@§qlj&@™.lW+O+?‹€}l[:?ŽÖXl¨ê@g¯ Ë?ýsr¸(Î@Ÿe7çÅ@°@¦@oŸ¾w@¦@wKƧð@¦@oŸ¾w@¦@oDG/P@¦@oŸ¾w@¦@qäFÝ—@¦@oŸ¾w@¦@pŠÈÍÄ@¦@oŸ¾w@¦@mùF…W@¦@oŸ¾w@¦@ml½§–@–4V“@–4"MÒñª@–4V“@–4"†èu¯@–4V“@–4ô–›“@–4V“@–4 øª¦@–4V“@–4 ?;ÿ @–4V“@–4oJÓ@804mÅÖ8@8=Â\(ö@3…?|í‘h@3ŠTâ¯@2Ͳ-V@2ÑÖä|¶@23&Á½¥@26æûæÄ÷@23&Á½¥@2:Y»–Î@23&Á½¥@2;”„óç˜?æ ç«Z–?’PÕâ 6ö?–N²Â6ì?‹ÏOÁO;V?’ÇÅ—-?“±ÄÌÔ?æ ç«Z–?•hÎ)ý-?‘¥ÙïÉ¡%?–3¼9M?“ÅâÆ³?“ùà€Þ?æ¡‚á¾A?Ž-dʦí?®Õ>JM?‰t66ËÈò?‰[!.…×?Vçúm3Y@@(@,@@<@:?ð?ð?ð?ð?ð?ð¿W»ýc†?]®â&B?0¾D¡9\ä?L*zƒ5S±@¦@nÞÓvè@–4äðé??Çã[ý8 ?Z–3¼ ×þ?tÖ}*¸>d?¨—žåÍBt@Ÿrî8ð“ƒ@±@¬S Iº^5@¬S Òñ©ü@¬S Iº^5@¬S 5¨Xy@¬S Iº^5@¬S žƒä&@¬S Iº^5@¬S «ŸUš@¬S Iº^5@¬S ¹Œ~)@¬S Iº^5@¬S ÓÃa@®„“t¼@®‚\(ö@®„“t¼@®…ãS÷Î@®„“t¼@®„?åÉ@®„“t¼@®ƒ¯·é@®„“t¼@®„µÜÆ?@®„“t¼@®„%®æ2@5°4mÅÖ8@5°uöý!ÿ@1n5?|í‘@1nšu@0]V”@0]quŽ"@/™b¶®~@/™Û"Ðåa@/™b¶®~@/™¦µ (@/™b¶®~@/š6âëD?|¬Çëý ?%¼ÇÆÃ±?‘e +!ßC?ŒArUã@?‘2A¥Ø?âé¨ë7F?|¬Çëý ?’0nà=Q“?œõLÁE?Y‡…—Ø?‘=d¦^™?Éöm/w+@8Iç@8Ù?§Ò¸ùBz3@8Î÷@8i§@8Å@8S@8û—?ˆAᆽÃì@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø´@¯Ž1&éy@¯Ž1&éy@¯Ž1&éy@¯Ž´9X@¯Ž1&éy@¯Ž ÞÒ@¯Ž1&éy@¯Ž 7Kƨ@¯Ž1&éy@¯Ž“Ý—ö@¯Ž1&éy@¯Ž“Ý—÷@­0ÔzáG®@­0ÔzáG®@­0ÔzáG®@­0ÔÉ…ðo@­0ÔzáG®@­0ÔmÅÖ9@­0ÔzáG®@­0Ô¼j~ú@­0ÔzáG®@­0ÔðØDÐ@­0ÔzáG®@­0Ôã¼Ó[@0Î쿱[X@0Îæ1ø @,\j~ùÛ"@,\j~ùÛ"@*|¬1&ê@*|Æ?@*\¾ß¤@@*\ÚQÎ@*\¾ß¤@@*\ÚQÎ@*\¾ß¤@@*\(õÂ]?É^žQ5P‚?Úþþ³?‘(¥¿á?‹¦ ŸYÔ?îú/´`?·t¤¢‚J?ÐbMçê_x?’ +‰¸Ì?ˆ9²0?0ÜN :s?ÔÒ@úˆ‘?NÂò‚Ì`?€bMÕky?Œ­·Ž~('?‚q6tNø7?‚äÍ“½E'?†ŠúЀ>(?†l&þ@@@@@&@*?ð?ð?ð?ð?ð?ð¿HuG¶¨?Ò4” ?0¥ÕeLÄ?{ƒYâÀ@¯Ž=ˆ@­0ÔØ;Ã¥?>ËWÜMÅ ?ôkMîšh?wRÒóD2?!z›"ûÅ@@ŸsÕUßÖ@µ@§ŠJÀƒo@§ŠJ~ùÛ#@§ŠJÀƒo@§Š<¹#¢œ@§ŠJÀƒo@§Š,ÌÌÌÍ@§ŠJÀƒo@§Š)Çy¦µ@§ŠJÀƒo@§ŠquŽ!@§ŠJÀƒo@§Š xG@¦ï’ñ©ûç@¦ï™XbM@¦ï’ñ©ûç@¦ïàªdÂø@¦ï’ñ©ûç@¦ïØ“t¼j@¦ï’ñ©ûç@¦ðCn—Œ@¦ï’ñ©ûç@¦ðP£× +>@¦ï’ñ©ûç@¦ð)º^5?@6ºqÞi­C@6®ß¤?åÉ@2|í‘hr@1ÞÑ·Y@1b-V@1)ûçl‹D@1Þi­BÄ@0Åm\ú¬Ú@1Þi­BÄ@0Çy¦µ @1Þi­BÄ@0È>BZîc?žŒÝÙ›P? ³Q–“˜Ô?ŸÑF ðÿ.?© Êºd9.?«qÐS=²Ý?³y¥ÒØ?‡YÍ_?¡1™•ÿˆQ?¡c2M?ÍA„ÉÇÔ?Å,Q‰0åb?¿³r +?ÉÏt +j?‘a÷nñ?ÜÒƒN%?<±-ëÃV?’&Á¯»?’Oûh´6c@@@@@,@*?ð?ð?ð?ð?ð?ð¿Šp' Ì?¢'ÕÓl`?O¦Žªúw?}åEûxw@§Š8ª†Ç@¦ïˇ¬„©?mb'PNµ?•'|Ž a?ª!ʶb‘º?íyAåĈÿ@Ÿ`÷ê"­"@¶@¤á§l‹C–@¤á§ï²-@¤á§l‹C–@¤á¨Ë’9@¤á§l‹C–@¤á¨šu%@¤á§l‹C–@¤á¨ÁTɆ@¤á§l‹C–@¤á¦YJôñ@¤á§l‹C–@¤á¦YJôñ@¤ÍTýó¶F@¤ÍU?|í‘@¤ÍTýó¶F@¤ÍTÉ…ðo@¤ÍTýó¶F@¤ÍU*™1@¤ÍTýó¶F@¤ÍT¯O „@¤ÍTýó¶F@¤ÍU?|í‘@¤ÍTýó¶F@¤ÍU%F +¦@+¨ð¸@+¨ð¸@&kƧï²@&kƧï²@$÷Oß;d@$÷Oß;d@$¸7´¢3œ@$¸7´¢3œ@$¸7´¢3œ@$¸7´¢3œ@$¸7´¢3œ@$¸DЩ+?É^žQ5P‚?ÖÈ ¼?‘½ümüñ?‹ª½¨ª8v?éDEâ©×?·t¤¢‚J?ÐbV‡,?’ +‰¸Ì?¹º–Èj?/ò×ÈZø?Í(ÀT >?NÂò‚Ì`?€b¡´ñ@?Œ¬Çëý ?‚nâwg?‚â‡~ûÉ\?†‡hÉÈÓ?†ˆ#.÷@@@@@(@,?ð?ð?ð?ð?ð?ð¿R ¦ ‰?+t?7 +®¤9n4?òNÆá@¤á§Rí@¤ÍTÿ^÷¬?F'ß>Ž\?*pÆ®·‘?ˆ&CÊLAA?NºaËýJ†@Ÿs*)v@·@¡¢ƒn—@¡¢;dZ@¡¢ƒn—@¡¡·Xâe@¡¢ƒn—@¡¡]æšÔ,@¡¢ƒn—@¡¢æ¸ºÇ@¡¢ƒn—@¡¢8DЩ@¡¢ƒn—@¡¢be+Ô@ž;ÌÌÌÌÍ@ž;¸Që… @ž;ÌÌÌÌÍ@žë¢Ã`u? ¯2§ðci?ÒjÉ8¥´n?Ð1'hË +ç?¿N†Ï¸?¼(›Æ´?Ç ”\d?ÇÜà÷Í?µo Þøµ?Ö¾cÓ[†@@@@@,@(?ð?ð?ð?ð?ð?ð?¢Øœ±€¿¥DGKx ?‡¾‰¹[‹µ?{ÌE[úa@¡¢ÄÄ“1u@ž;H??¬?Ÿ:2*³Y¦?‘zòZæ@ªƒúyâ?êÀщ3@Ÿd|EgL@¸@ zNÙ‡+Á.„€@ zNÙ‡+@ zPP ?9@ zNÙ‡+@ zOß2Ô!@ zNÙ‡+@ zPù˜®@ zNÙ‡+@ zMéÈŠw@ zNÙ‡+@ zMÓ¾q@œ\V“uÁ.„€@œ\V“u@œ\V©‚‹@œ\V“u@œ\Y¯×*@œ\V“u@œ\V:ž¥¨@œ\V“u@œ\UîzO@œ\V“u@œ\U˜\;¡@/A°‰ 'RÁ.„>¤µÜÆ@*$“t¼j@*$}Êï‰@(´ýó¶E¢@(´®4·À@( +#9Àëî@( 8—ï‘@( +#9Àëî@( *žR%@( +#9Àëî@(.])—‡@8 +Näy?¾ŸÌVÏù?‘ÛΣ1?‹¬.ÎmA+?ëéû+?µ\ÖXV@82rê?’Î?ž£=?|™v«*å?3FN¡c$?Ü~Õ@#Z?O¦ZQûE@8L?Œ¬²ž–TÈ?‚qŒÊÒÕ?‚懒n°W?†Ò•@ì?†i= ç@(@,@2@=@9?ð?ð?ð?ð?ðøøøøøøøøøøøø¹@®áÿ|í‘h@®â·ïÂ$K@®áÿ|í‘h@®áþöá ‚@®áÿ|í‘h@®áëfL<3@®áÿ|í‘h@®â +ºZÀ(@®áÿ|í‘h@®áþàîf~@®áÿ|í‘h@®áùn©@—øk…¸R@—÷Æ$M{‹@—øk…¸R@—øRN«:@—øk…¸R@—øu.МS@—øk…¸R@—øvI‹@—øk…¸R@—øo«oµ@—øk…¸R@—øt| =Ú@8‰Î_oÒ@7¶‡)s£î@5+¥ãS÷Ï@539í¯I’@4A‰7KÇ@4˜á‹Å/³@4uµsê³h@4„"#á*@4uµsê³h@4†&®ö˜7@4uµsê³h@4‡"&ž?ß@l÷#?©×® Œ?’ß±äãÂ?œ¡Ðyçÿ? \l5wÈ? ë±jÎ×?Õ#{ñ¢W?”­+»21?“(w•ÆÔ?¡=#›o°?£MZèЮí?›Ìbº4?òKŸ:q¾Õ?‘0ÐÙm +i?•fÀ?R]Ñ?”¤.:›ÆN?•‰eæq+k?œ¨>÷â”…@@$@$@,@<@8?ð?ð?ð?ð?ð?ð¿Gæ.o ?IÊx ?nØ|N•W?l7¯yž]¬@®â¡ûP@—ørì¼7Ð?}Ùjð:¬Í?|^Áʲ ?Ø*7]Ò?Ñj@5§)Á@ŸsŽü-5@º@¨+1©ûçm@¨+2-V@¨+1©ûçm@¨+5Ž!–S@¨+1©ûçm@¨+1Þi­C@¨+1©ûçm@¨+/Åo@¨+1©ûçm@¨+1ë…¸@¨+1©ûçm@¨+4SŽóM@©Í8Ôýó¶@©Í9‡+@©Í8Ôýó¶@©Í8ï4Ö¡@©Í8Ôýó¶@©Í<í‘hs@©Í8Ôýó¶@©Í9Î_p@©Í8Ôýó¶@©Í8bMÓ@©Í8Ôýó¶@©Í9Œ~($@4úqÞi­C@4úû~ÿ—@3‡ÎÙ‡+@3‰…ðoiD@2Ct¼j~ú@2Cˆe”¯O@20–»˜Çã@21ë…¸R@20–»˜Çã@223œ¾à@20–»˜Çã@22{²þÅn?}Ñ¿ž,?‘<tc«6z@8ôM:’£@4@ Ä›¥ã@4F“t¼@41‰7Kƨ@4>5?|í‘@3ý!ÿ.I@3"T`ªdÃ@3ý!ÿ.I@3Ëûµt@3ý!ÿ.I@3¤?åÉ?«_$Øï†?%¼ÇÆÃ±?Ç ¾3з&? À߯K?žØ3Ä;5?”éëÀÍ?‘â%ì˜ ä?’uß¿çÒ?¹ £qÅõ)? ZÁ».œ?žÍhÿŒ?”'q²TrQ?°*?Ú±P?œûìôpØ?®'ºwò?‰®ðúcåZ?“KÌ&¨Í?“ÌUõÎs¼@@@@@,@&?ð?ð?ð?ð?ð?ð?]‰‰)T?bI•¯?vjCURÏ?OBzWOËÈ@©'³uj@¤³^õƒ1o?lÐYŽ™?qÈø–4µœ@¡:ãË?Ñ·Å»ú @ŸoÀݪz@½@¥Ëp Ä›¦Á.„€@¥Ëp Ä›¦Á.„€@¥Ëp Ä›¦Á.„€@¥Ëp Ä›¦Á.„€@¥Ëp Ä›¦Á.„€@¥Ëp Ä›¦Á.„€@§Ôýó¶FÁ.„€@§Ôýó¶FÁ.„€@§Ôýó¶FÁ.„€@§Ôýó¶FÁ.„€@§Ôýó¶FÁ.„€@§Ôýó¶FÁ.„€@7°4mÅÖ8Á.„>¤µÜÆ@3³S÷ÎÙÁ.„M‰ûçm@3 "Ðå`BÁ.„QnÙ‡@1ó&Á½¥Á.„NÜC,¥@1ó&Á½¥Á.„NÜC,¥@1ó&Á½¥Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø¾@£üÄ›¥ãT@£üÄ›¥ãT@£üÄ›¥ãT@£üÅ¡ÊÀƒ@£üÄ›¥ãT@£üÄêJŒ@£üÄ›¥ãT@£üÅo@£üÄ›¥ãT@£üÃS÷ÎÚ@£üÄ›¥ãT@£üÃn.±Ä@ &éxÔþ@ &éxÔþ@ &éxÔþ@ &ffff@ &éxÔþ@ %8ï4×@ &éxÔþ@ %ýŠÚº@ &éxÔþ@ %F +¦L@ &éxÔþ@ %¼£n@3Û¹Œ~($@3Ü1&éy@0!hr° Ä@0!£n.±Ä@/mOß;dZ@/mÒñ©ûè@.½Vlô"@.»"Ðå`B@.½Vlô"@.¼wškP±@.½Vlô"@.¼C,¥zy?ð°–Ž]?Úþþ³?‘K]Ã4?‹²MÿAÿ8?ôê÷º»â?æöæ×t?ð°–Ž]?’NÛˆV(?ÔCXsò?3.Ylî?ÝIMÎ?oÌ‘'ýT?ð*wjs—?Œ¾»•lŽ?‚Ö˜>µDá?ƒžÂâk,?†ÃÛSPã?†¯Mž684?ð@@@@&@&?ð?ð?ð?ð?ð?ð¿H´+A–¿!§3¸?0Ïßݕ1?)Ïë0^j@£üÃÿ°¼Ñ@ %®¶!€?@4^3‘´?87‹·,‘?x»ùx¤?iˆUaÄ@Ÿs„BÚÇä@¿@®§s¶E¡Ë@®§v‡+@®§s¶E¡Ë@®§£{J#;@®§s¶E¡Ë@®§l"h Õ@®§s¶E¡Ë@®§tmÅÖ:@®§s¶E¡ËÁ.„€@®§s¶E¡ËÁ.„€@œpÓ÷ÎÙ@œpÔú ³@œpÓ÷ÎÙ@œp­V@œpÓ÷ÎÙ@œpÁ×Ûôˆ@œpÓ÷ÎÙ@œp—>«6y@œpÓ÷ÎÙÁ.„€@œpÓ÷ÎÙÁ.„€@8šÔ,<Ÿ@8ýIÑø@5‡ÎÙ‡+@5€ÞÒˆÎp@4Ͳ-V@4À-à r@3úÔ,<ží@3®($ x@3úÔ,<žíÁ.„NÜC,¥@3úÔ,<žíÁ.„NÜC,¥?”$úÀÁ’?¯"O.áÚ—?¦’޾ÕE?Ày‘Fµc@8Iç@8Ù?|¬Æ Væ?©á,ÌZ?§i©†˜s?Áƒ*¥o’Ü@8S@8û—?š5`‚b?Ÿ°À×þ‚î?«E©åý?¦Ñ"²ÔšÌ@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøøÀ@«¦¬1&é@«¦¨´9X@«¦¬1&é@«¦–¡aä÷@«¦¬1&é@«¦ˆË’:@«¦¬1&é@«¦gæšÔ@«¦¬1&é@«¦lÙè>B@«¦¬1&é@«¦usê³h@§³»dZ¬@§³»¥ãSø@§³»dZ¬@§³¶¡aä÷@§³»dZ¬@§³®¾ß¤A@§³»dZ¬@§³«¹Œ~'@§³»dZ¬@§³¯v_د@§³»dZ¬@§³¥`A‰7@7>«6z@7eýŠÚº@3Ìí‘hr°@3¶Ü]cˆe@36§ï²-@3qÞi­C@2¡:’£S@2|ÚQÎ@2¡:’£S@2z)Çy¦µ@2¡:’£S@2|ô!-x?’Óusÿ\Ã?œPîñ°¦?¦br !?¢~ +]zýØ?´HàÙM¨?²¬}Ÿ}ã?1·†Æjñ?œK2ô6Ä?¤(Éõ •?™vEËõB?©>΀mù?¤ÚÄ^Uâô?ƒúʳ_Ã?5¿êÜ?ŒÊ­#г_?†O.ce?Ü×þë¿?£õ¹OONS@@@@@,@,?ð?ð?ð?ð?ð?ð¿‘R6£k¿sTÖ5–?u§ò¹ƒ.‚?JH<²Ž@«¦‰ó·i:@§³³Ž +?’nÙ¤¡;?f(ÜÒâd?ÿ³ÅÄZæ\?ÁêªQ± Ë@Ÿc&Ѓ@Á@ª9íV@ª9Ü(õÂ@ª9íV@ª9`[À8@ª9íV@ª9ŸË’:*@ª9íV@ª9ÎV“@ª9íV@ª9¹e+ÓÃ@ª9íV@ª9½ó¶E¢@ª6¬1'@ª6"MÒñ«@ª6¬1'@ª6ˆð@ª6¬1'@ª7Á½¥@ª6¬1'@ª7 +Àƒo@ª6¬1'@ª6[/ìVÕ@ª6¬1'@ª6ŸU›=@8 ]cˆe”@8Â\(ö@3£÷ÎÙ‡@3i k¹Œ~@3 ²-V@2Æ”FsØ@2 ù kº@1аò{²ÿ@2 ù kº@1ϾvÈ´:@2 ù kº@1ÏoÒòå?›’qvš°•?Ç©2‡?Ä(“ßbðµ?”oý]Þ‡&?«£·æì?¬ptí#°??§Ò¸ùBz3?à ÙÂW~·?Ñ%øiû|?¹·ѹ[0?¥<Õ–—EI?½ßI”2}Ú?¶P€¼@ø”?”!?; Õ?’ã0eʪv?ˆÝíá‰?%üdêË?‹aÊ•TI@@@@@ @*?ð?ð?ð?ð?ð?ð¿zcæ Ü?’Ü÷ß0?Y1/ï~|ù?”7ïDÇ@ª9ÍÜ ’h@ª6X-¥u?s$etŒgü?²ßÿL ¶›?ȋǧ©"7@*o \#j@Ÿh¹Žh +@Â@©–»dZ¬@©–½0æ0@©–»dZ¬@©–¸Øü§ò@©–»dZ¬@©–ÀNë!/@©–»dZ¬@©–¶o¾5™@©–»dZ¬@©–¸Ù§ú@©–»dZ¬@©–·ÆçbÝ@“K¾vÈ´9@“K·3É$@“K¾vÈ´9@“KÁDÃÈ@“K¾vÈ´9@“K§­£¼´@“K¾vÈ´9@“K±\yL@“K¾vÈ´9@“K·$šúP@“K¾vÈ´9@“K¼ªg^@8åöý!ÿ.@8êŒ È @4|í‘hr@4$wMp@2¾V“u@2½öp([”@2–ý!ÿ.I@2—ïoÒè@2–ý!ÿ.I@2™’Õ‰qm@2–ý!ÿ.I@2˜Ucñ¾?ª©ÑÉëÊ2?‘3ªº±°Í?‘›YsNÆ?ñV¢-TL?‘=î…é?óõ±{?ŸáŽJ\m?’­%Ž£‹™?þÛ0{rw?“²€m?”¢$ï,3ú?Èž]Ã?._?È-ìû ?…bsøÂ?…Ï4YQ¤?Šàå&N–?ˆ†–mt +û@@@"@&@3@*?ð?ð?ð?ð?ð?ð¿1Ù`?>&8Ùp?K¹x~Ò?Eeã©Ê“@©–·Ðüî@“K·ûÒãØ?`5E¦rx?e3]é]ð¨?µ°e{N±‹?ÄZjµ6ç4@Ÿp*Ü€ò@Ã@Ÿ³ Iº^5Á.„€@Ÿ³ Iº^5Á.„€@Ÿ³ Iº^5Á.„€@Ÿ³ Iº^5Á.„€@Ÿ³ Iº^5Á.„€@Ÿ³ Iº^5Á.„€@“’n—PÁ.„€@“’n—PÁ.„€@“’n—PÁ.„€@“’n—PÁ.„€@“’n—PÁ.„€@“’n—PÁ.„€@6-¥œàvÁ.„>¤µÜÆ@2Š^5?|íÁ.„M‰ûçm@1nùÛ"ÐæÁ.„QnÙ‡@0‚@·€5Á.„NÜC,¥@0‚@·€5Á.„NÜC,¥@0‚@·€5Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøÄ@­p£× +=@­VE¡ÊÁ@­p£× +=@­†L/ƒ|@­p£× +=@­8*™0¿@­p£× +=@­S&Â@­p£× +=@­lÌÌÌÍ@­p£× +=@­lcñA@©áG®{@©Ôýó¶F@©áG®{@©¢3œ@©áG®{@©5fÏAò@©áG®{@©\(ö@©áG®{@©’° Ä›@©áG®{@©™‡+@8–šÔ,<Ÿ@8 uöý!ÿ@5®5?|í‘@5Ÿ\(õÂ@4ûƧï²@4ÎcŠ @4YŒ~($ @42½<64@4YŒ~($ @4JîcŠ @4YŒ~($ @4MVlô"?¥K¶{Oÿ?”·'‚5â–?¦†np½Ý?Àº¿]\ë?§|Qæý S?£6|Obœ?¦Ï±úQm‡?•%!{‚A? Z«42³?ºÇ`ؤ?´Mí¼#£?¤Â¤n°,i?²†N²N7?«…Éšûñ»?©uÃÇ?§¸'ôÔD[?¡xfrÂû?ªi‰o+p@@@@@*@"?ð?ð?ð?ð?ð?ð?thiD¿Š+Ÿç?vœÁÿšh}?z¢GÖWÊ@­ae…$€@©µ ²­õ?—ªßž  ?h6E-Åy?þû³tÄ;@ø™B#@ŸlæÛ ù@Å@©3¶E¡Ë@©3¶E¡Ë@©3¶E¡Ë@©4,<ží@©3¶E¡Ë@©4¢3œ@©3¶E¡Ë@©4FsØ@©3¶E¡Ë@©3ŽóMi@©3¶E¡Ë@©3Z…‡”@¢ÑQhr°!@¢ÑQhr°!@¢ÑQhr°!@¢ÑPØDÐ@¢ÑQhr°!@¢ÑP|„µÝ@¢ÑQhr°!@¢ÑQÎ_@¢ÑQhr°!@¢ÑQ4êK@¢ÑQhr°!@¢ÑPØDÐ@05S&Á¾@05S&Á¾@*ÍV“@*ÍV”@*:¬1'@*9õY³Ð}@(ÿåÉä@(ÿ¾vÈ´:@(ÿåÉä@(ÿ±[W>­@(ÿåÉä@(ÿË’:)È?É^žQ5P‚?Úþþ³?‘&Øç?‘?‹µ™eU!µ?îú/´`?¼‚Ë¡K?ÐbMçê_x?’¼  g¶?ŽËÜ¿€?6) }’ë?ÚÌA B{?PS2K¯™?€b¡´ñ@?Œ­·Ž~('?‚q6tNø7?‚äÍ“½E'?†‰Oú|q?†ŠúЀ>(@@@@@,@*?ð?ð?ð?ð?ð?ð¿:s¾Çð¿¢"« ?Ñ—;ï?x¶éÍå@©3È튰@¢ÑQíYŸ?$Hjòö?$é»à¡¾>?D/-ÎÌÑ’?C(aŠp@Ÿs_«pü@Æ@¦xG+ J@¦xH1&éy@¦xG+ J@¦xI“ àß@¦xG+ J@¦x)ûçl‹@¦xG+ J@¦xHK]Ìd@¦xG+ J@¦x7Ûô‡ü@¦xG+ J@¦x=—ö+k@¥í2° Äœ@¥í2-V@¥í2° Äœ@¥í1ÑN;Í@¥í2° Äœ@¥í0ÿ—$u@¥í2° Äœ@¥í>Åm\û@¥í2° Äœ@¥íiÇy¦¶@¥í2° Äœ@¥ídŽŠqÝ@6šÔ,<Ÿ@68†YJõ@3µãS÷ÎÙ@3¹0¾ í(@2îùÛ"Ðæ@2ô!-w2@2¦YJôðØ@2§_oÒó@2¦YJôðØ@2ÅÖ8†Z@2¦YJôðØ@2˜e”¯O?‚á²Olºü?/³)sšÌ?“ÔÃÆWž?’gh·T°?œ=òÙUä?¡î®ðÎ`~?|¬Çëý ?’uß¿çÒ?‘å†36åG?•%ôµh©F?°X‚O?ªl©N«½?‚q6tNø6?”É…ðoiE?•Wí+ Æ?‡W·ŽA:Þ?•XðküÏ?•XðküÏ@@@@@,@(?ð?ð?ð?ð?ð?ð¿aá-þÌ?ôM+o?W^ó«Å©?eq´ËTÄæ@¦xEW26d@¥í=°0è?sI1Uƒpƒ?€5áèÍË?åìóFa†Ö?õÈ¿ïû@ŸaÑ÷lh@Ç@ªD…¡ÊÀƒ@ªD‰ Ës@ªD…¡ÊÀƒ@ªDŠ’êc½@ªD…¡ÊÀƒ@ªD† ¤Vc@ªD…¡ÊÀƒ@ªDŠÊ˜4Ô@ªD…¡ÊÀƒ@ªD†#à'Ï@ªD…¡ÊÀƒ@ªD‚|…jt@›õÂ\)@›øÔýóµ@›õÂ\)@›ú¦ñ·@›õÂ\)@›úñLÎ @›õÂ\)@›ùÎ5@›õÂ\)@›ôŸï5g@›õÂ\)@›÷H’H@7VšÔ,<Ÿ@7Y’t²–@2—+ Iº@2—"P ™‡@1Ú~ùÛ"Ñ@1ÚŠÚÌå@1–ý!ÿ.I@1•@OÁ%à@1–ý!ÿ.I@1—4&£†³@1–ý!ÿ.I@1”nâ» ²?e™”XWø?<âï„?‘«* rÞ‹?wó™™+?‘2UÜç¶Á?Јæ«Vi?ˆÔ§xöß?’8~¿Ý#?ü‚„®Ö‹?’`]ŽY-?‘0œ3I?LúüÛ?_Ùwwo¸?–ö¹0,i?ƒp±>ÜÖ?„ úA¼?‡ÔÆsCÂa?†ˆHã‘@@"@$@(@0@,?ð?ð?ð?ð?ð?ð¿QBlô¿0ùîXè?CdÆÛ]Œ•?0u¤ÄÖz|@ªD‡iß1@›÷½Ž‹—?d±¡‹Õ=ì?P‡§²¤U;?Ò¬ªñ~ûÝ?¢!‰ +„Ve@Ÿiyh ÷@È@¯NW +=p¤@¯N^ùÛ"Ñ@¯NW +=p¤@¯Mßv Äð@¯NW +=p¤@¯MÖu@¯NW +=p¤@¯NHÅeU0@¯NW +=p¤@¯N—íZb@¯NW +=p¤@¯NÒ{ö$#@šÇó¶E¡Ë@šÈ1\L]„@šÇó¶E¡Ë@šÈr±+@šÇó¶E¡Ë@šÈyì +!@šÇó¶E¡Ë@šÈ”ÿ?”„ߦÑ?›ïkÓM¤µÜÆ@4 í‘hr°@4˜­«ŸU›@3V”@3\ú¬Ùè>@2fYJôðØ@2¡½¥œá@2fYJôðØ@2…ðoiDh@2fYJôðØÁ.„NÜC,¥@8J¨?ÆÇìÝ ý\?ÇD²Ú°*?´>5’cª?»i…Å +¼´@8Ù@8J¨?ǛȦBSÓ?Å€&®Õ—?¬Ã«S?¶Ê@û¤¤@8û—@8p÷?ÀÝÓ>UP?¯ÒÉUq(?£yD¼· ?¸MòÙƒNØ@8 Ø@@@@,?ð?ð?ð?ðøøøøøøøøøøøøÊ@¢.›¥ãSø@¢.žùÛ"Ñ@¢.›¥ãSø@¢.Ùb·@¢.›¥ãSø@¢.Ÿ¾vȳ@¢.›¥ãSø@¢.šxl"h@¢.›¥ãSø@¢.— +=p¤@¢.›¥ãSø@¢.™Àëíù@­[$Ý/@­[G®{@­[$Ý/@­[{šv@­[$Ý/@­[~Ov_Ù@­[$Ý/@­[~«6z@­[$Ý/@­[o4Ö¡c@­[$Ý/@­[r×sû@6 ]cˆe”@6 ~($ x@1é‡+ @1宿1ø @1A‰7KÇ@1 ÚQÎ@/Öð¸»@/Ð Ä›¥ä@/Öð¸»@/Ë…¸Qì@/Öð¸»@/̲•éá±?|öOÿÝ?äm°û0Ž?‘œÁùãJC?Uÿyu”#?“êôÉøX?’¯-! )m?|öOÿÝ?”Iõ`ÆÓ›?‘½ÀèÑmK?’„÷ò¸?˜hüÁ¯Y?”V.·H?‡z"2Úù(?Œèsq‡#?„ò—TËÄ?ƒGϵ¨í'?†å·ÑfWà?†Ü‘ °Ô@@@@@,@*?ð?ð?ð?ð?ð?ð¿WgÞÜ¿hº+¶?7¥š”:;H?O† ?£þö@¢.œ:ad@­[{€k?WTžfUI?nØa%\g¨?¹7É4ó2?âÆg^Óò@Ÿe‹(¯ŠV@Ë@¬Ì]/Ÿ¾@¬ÌXJ„@¬Ì]/Ÿ¾@¬ÌXNù@¬Ì]/Ÿ¾@¬ÌW\ðr.@¬Ì]/Ÿ¾@¬ÌWÔèiÐ@¬Ì]/Ÿ¾@¬ÌSž +˜²@¬Ì]/Ÿ¾@¬ÌTåöÂ@•ô$Ý/@•ôv¨p«è@•ô$Ý/@•ôP«³Þ@•ô$Ý/@•ô>ä0X¹@•ô$Ý/@•ô;ŠR&ç@•ô$Ý/@•ôVX­˜ã@•ô$Ý/@•ôBŸ÷µŒ@7ò䎊@7niši@2pÄ›¥ãT@2hѪÑG@2t¼j~ú@1÷Å`,ÇÛ@1TmÅÖ8†@1H±¨!ç@1TmÅÖ8†@1IÞíÀú@1TmÅÖ8†@1HÔÛL?}x—™?‘µ2uÌHA?’·3')Ö„?‚Cš æI?•©ÄSwñ–?Ÿ!m× +K€?š½CƒQl?–ö§;®l?²·bÓý?‚ï»°Wsþ?ŒÿÜÒÀrÝ?„r¨ún—Ž?ƒ€iÇ‘?ˆj³ïäLÊ?†äúußE@@(@(@(@8@:?ð?ð?ð?ð?ð?ð¿MK™@¿vY÷€?4RÏ:Køp?_Œ›¸Mè³@¬ÌVÖ¹Þ@•ô_ƒ¼ Õ?S|*Ëô¯?~àfCâ?_?³½Ÿ~èš?÷³S,Š2)@Ÿe¦í¬0@Ì@¥á)xÔýô@¥á)º^5@@¥á)xÔýô@¥á2n—P@¥á)xÔýô@¥á'l‹C–@¥á)xÔýô@¥á&Â&€@¥á)xÔýô@¥á%¸Qì@¥á)xÔýô@¥á&µ (@ªö©xÔýô@ªö§ï²-@ªö©xÔýô@ªö³Ð|„¶@ªö©xÔýô@ªö´9Xb@ªö©xÔýô@ªö±Å@ªö©xÔýô@ªö°bMÒò@ªö©xÔýô@ªö¬¥zxk@7÷â‚@·€@7úOv`@3”›¥ãSø@3•Ϫ͞„@2Wï²-@2W´¢3œ@2Œ~($ @2‘ÑN;Î@2Œ~($ @2«6z‘@2Œ~($ @2ü¹#¢?žŒÝÙ›P?“³ß )}o?‘RsÈW?”6Wé=t?“êôÉøX?”‹ÂØ*þ›?‘â%ì˜ ä?•¤-'Ä,?„¦Ô•]I?—êöªDH?“NM–8/?‘êey°úà?±A\ÿŸ#?‘pØ-Ÿt?„+£QKù?Šc^î½)Ô?%üdêË?8Ï£§@@@@@$@&?ð?ð?ð?ð?ð?ð¿E¢à_ˆ?SÃŒíÜ?;Ôå±åE2?P}îË…xî@¥á&Ð-ó&@ªö­A:Æ?Uc~™.›?p"Æ]S¶?Ôà”äB|?ÖùŸÉ@ŸmñI‰“@Í@® t9Xb@® xQë…@® t9Xb@® xüPH@® t9Xb@® rn—P@® t9Xb@® sê³g¡@® t9Xb@® }Ìcñ@@® t9Xb@® t,<žì@­]áÊÀƒ@­]ð Ä›¦@­]áÊÀƒ@­]ÑÅ€@­]áÊÀƒ@­]ÍOß;d@­]áÊÀƒ@­]µ '»@­]áÊÀƒ@­]ǯ·è@­]áÊÀƒ@­]¼„µÜÅ@8쿱[X@8?¼@3™º^5?}@3”÷eýŠÚ@3“t¼@3@N¤¨Á@2Vý!ÿ.I@2JÚ¹õY´@2Vý!ÿ.I@2IÞÑ·@2Vý!ÿ.I@2F_Ø­« ?¡ÅꯨŠT?Čۨ1A?” +Ÿ”îtI?‹©(ÓDÊ?¢Ì|(‘¾?«Á=)Jn?™™™™™™š?“oÆ †ä?’ÉÓDý?ªå9 ?¥þ–ÓOß?ªÜü˜á?¢ÀB§š7?œ]ŸFV”?ëýK|æ?ŒÅÐ7N³¬?^²®':Ì?—ÂÔèÄè@@@@@&@(?ð?ð?ð?ð?ð?ð?(褠п‡[\sÚ?[H\‰°?n˜>·@® wzpžô@­]о‘ÌÝ?vi}Ø@:?/‡'`?ÇÚÄO\ñ?ó§/‚Ï8@Ÿi´§ ¦þ@Î@£9Ä›¥ãT@£9ŸQí@£9Ä›¥ãT@£9Åo@£9Ä›¥ãT@£9È Ô•@£9Ä›¥ãT@£9ǯ·é@£9Ä›¥ãT@£9œwšk@£9Ä›¥ãT@£9ÂMÒñª@¤ó¬1'@¤ó/Ÿ¾@¤ó¬1'@¤ó"Ðå`@¤ó¬1'@¤ó}¿H€@¤ó¬1'@¤óŸ¾vÉ@¤ó¬1'@¤ó í(@¤ó¬1'@¤óˆÎp;@5£g ù l@5¢GE8ï5@2º^5?}@2l‹C•@0´“t¼j@0´µÜÆ?@0á:’£S@0à4mÅÖ9@0á:’£S@0âGE8ï5@0á:’£S@0Ýó¶E¡Ë?}Ñ¿ž,?*£|3Né?‘©ŠÕ ·Ñ?Wø0 ¥?’yÊêºq?‘Iãd©ì«6z@7 ²-V@2œIº^5?Á.„M‰ûçm@21‰7KƨÁ.„QnÙ‡@1½cˆe”°Á.„NÜC,¥@1½cˆe”°Á.„NÜC,¥@1½cˆe”°Á.„NÜC,¥?ˆÿÀ)T¿Æ@8#˜@8¾:@8 >+@8Iç@8Ù?›’qvš°•@8Î÷@8i§@8Å@8S@8û—?—­¦¾z£—@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøÑ@­Uº^5?}@­U¥æ5o@­Uº^5?}@­U¾\AÇŽ@­Uº^5?}@­U¶ÐY¤Õ@­Uº^5?}@­Uº@­Uº^5?}@­Uº[|‡@­Uº^5?}@­Uµ¢Š“¨@šEH´9X@šEz@ŸföÜñ^m@Ó@¡w^5?|î@¡w^vÈ´9@¡w^5?|î@¡w^i­BÄ@¡w^5?|î@¡w^5?|î@¡w^5?|î@¡w^Åm\û@¡w^5?|î@¡w]<64@¡w^5?|î@¡w^Ov_Ù@¦ÏÄ“t¼@¦ÏÄ“t¼@¦ÏÄ“t¼@¦ÏÄ xF@¦ÏÄ“t¼@¦ÏÄoi@¦ÏÄ“t¼@¦ÏÄ›¥ãT@¦ÏÄ“t¼@¦ÏÄg8~@¦ÏÄ“t¼@¦ÏÄ“t¼@1Î쿱[X@1Îæ1ø @. +~ùÛ"Ð@. +³g ù @-–E¡ÊÀƒ@-–+jçÕg@,a-w1Å@,a-w1Å@,a-w1Å@,aohÛŒ@,a-w1Å@,a½¥œá?É^³Dw'?ï1ïºÅ?‘&Øç?‘?‹ÑqÔ@vÿ?üEÙáõ{?ºª$Ð?ÐbMçê_x?’&u÷E»@?†[‘'Í?K·‘d]?â2„&ÿh?X78›š?€b¡´ñ@?Œ¯þuõí?‚|׿pZ?‚ôhBì^?†špk Y?†©b/bJö@@@@@,@*?ð?ð?ð?ð?ð?ð¿3=9o¿+ï°ˆL?:µ7xH?¯¤R;sÐ@¡w^0)…@¦ÏÄdy?I²{ƒ‘9‚?† bON¶?èY1ù ?"UûÙÇPâ@Ÿs +ü~Ãi@Ô@¥—o²-@¥—f§ï²@¥—o²-@¥—C¹üi@¥—o²-@¥—Ž_<ý@¥—o²-@¥—–]Dy@¥—o²-@¥—‰T~j.@¥—o²-@¥—¹’Ç@–JQë…¸@–J\PeȦ@–JQë…¸@–J8”“¼=@–JQë…¸@–JG¾DÛ8@–JQë…¸@–Jgx.'@–JQë…¸@–J@·™”V@–JQë…¸@–JXÍ»-6@7zqÞi­C@7†d¼„Nž@3|í‘hr@3ÉNÉn›@2F“t¼@28£¸Š@1î_oÒ @1ß`X¦ÈŽ@1î_oÒ @1àh¹Ÿ%@1î_oÒ @1Þ´“Gí?”Òž“¸8A?£™@ EÕ?¤ K­‡ÿM?©Ó¾»Æÿ?šóÝ @õ?¥H_Ià($ x@§SKƧïž@§Q×´¢3œ@§SKƧïž@§S`uöý"@§SKƧïž@§S…‡“ݘ@©•ØbMÓ@©•áÊÀƒ@©•ØbMÓ@©•Ï4Ö¡b@©•ØbMÓ@©•âœwš@©•ØbMÓ@©•á£n.²@©•ØbMÓ@©•Ù#¢œx@©•ØbMÓ@©•Ê~ùÛ$@8–šÔ,<Ÿ@8V”@4!hr° Ä@4¾ƒä%®æ@3Õ`A‰7L@4sÉîËû@2ó&Á½¥@3ÀëíúCþ@2ó&Á½¥@2äÉ…ðoj@2ó&Á½¥@2㜾ߤ?¡EÉ@Ú?¨j¸K?ÈYœÖüoÈ?¢òߤºE?¨Š;µŸp‹?³™"ÕPx?îŠõ ?§îV1,¯·?­ ßåG?“{¡7¨Üò?š¹'¤Ò ?—Õàq¶Ù?”⦘¹Ô?¡j`cq?¹eÄk+ã?’èïÅ42ô?“6‰møŸã?“ÌUõÎs¼@@@@@$@(?ð?ð?ð?ð?ð?ð¿“°èk ¿szGü…?²Çƒ Q¶³?dL›G4a#@§RÈ€9M@©•ÜsÇÕ?вÎ3õç?€ñ“…£Í@qè°9u(K?í)lÄí0@Ÿiê¢ÿ«z@×@¡°MÒñ©ü@¡°P£× +<@¡°MÒñ©üÁ.„€@¡°MÒñ©üÁ.„€@¡°MÒñ©üÁ.„€@¡°MÒñ©üÁ.„€@¡°MÒñ©üÁ.„€@ Ú~vÈ´9@ Ú|í‘ht@ Ú~vÈ´9Á.„€@ Ú~vÈ´9Á.„€@ Ú~vÈ´9Á.„€@ Ú~vÈ´9Á.„€@ Ú~vÈ´9Á.„€@704mÅÖ8@7.ÒˆÎp;@4û Iº^Á.„M‰ûçm@4PA‰7KÇÁ.„QnÙ‡@4O „MÁ.„NÜC,¥@4O „MÁ.„NÜC,¥@4O „MÁ.„NÜC,¥?гá‡}@8#˜@8¾:@8 >+@8Iç@8Ù?…ÅBðrç@8Î÷@8i§@8Å@8S@8û—?FpÉ'Ý@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøØ@©w&ffffÁ.„€@©w&ffffÁ.„€@©w&ffffÁ.„€@©w&ffffÁ.„€@©w&ffffÁ.„€@©w&ffffÁ.„€@šÍ1&éxÕÁ.„€@šÍ1&éxÕÁ.„€@šÍ1&éxÕÁ.„€@šÍ1&éxÕÁ.„€@šÍ1&éxÕÁ.„€@šÍ1&éxÕÁ.„€@8–šÔ,<ŸÁ.„>¤µÜÆ@5¦‡+ JÁ.„M‰ûçm@4þV“uÁ.„QnÙ‡@4ž«6z‘Á.„NÜC,¥@4ž«6z‘Á.„NÜC,¥@4ž«6z‘Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøÙ@Ÿ™$Ý@Ÿ™$Ý@Ÿ™$Ý@Ÿ™v[Oà@Ÿ™$Ý@Ÿ™$*V@Ÿ™$Ý@Ÿ™ÅéTx@Ÿ™$Ý@Ÿ™Ý-¦‰@Ÿ™$Ý@Ÿ™+¸, +@ŸFèr° Å@ŸFèr° Å@ŸFèr° Å@ŸF攀M¼@ŸFèr° Å@ŸFå}ûÑÍ@ŸFèr° Å@ŸFå>|@ŸFèr° Å@ŸFç-ì<§@ŸFèr° Å@ŸFæk¤“È@1‘|ÚQ@1‘Çy¦µ @,æ§ï²-@,äÛK–@+ΗOß;@+Î^áôbû@+³üPH@+¬WÙÇß@+³üPH@+®`."R®@+³üPH@+¯8†T?çÞ–L I?Ô®m†¨#?‘!,1 ®þ?ŒIfÇ4)¿?‘ …¡Ç«O?Ô¿<Ž?èŽìr¡-?’øTöÕ·?€Ýörh?r©»i?þ¢w°?gã!_'?æ ýM¹<Ç?ŒÛ4ñ ]??‚vK»oº>?‚ë•ä™ Š?†£¢Ä«?†ŸF½"ªÒ@@*@(@*@9@5?ð?ð?ð?ð?ð?ð¿E…–Š?2*ø ²?9úf/5Œ´?,Å(Üxš&@Ÿ™Ä2€@ŸFæ:šÔ¶?H½$àNûÔ?:ÚîBlÃ?ýu#4Ä?o?Ó/8H@Ÿs†mø‡½@Ú@¨nzáH@¨iº^5?@¨nzáH@¨k…¸R@¨nzáH@¨l"h Õ@¨nzáH@¨kC,¦@¨nzáH@¨m:’¤@¨nzáH@¨jôðØF@ ø^¸Që…@ øa$Ý/@ ø^¸Që…@ ø[Í5¨W@ ø^¸Që…@ ø]ŠÚ¹õ@ ø^¸Që…@ ø^5?|î@ ø^¸Që…@ ø^($ x@ ø^¸Që…@ ø]cˆe•@7p4mÅÖ8@7nHè§æ@2ør° Äœ@2ù#¢œwš@2PA‰7KÇ@2R©“ àß@1Š0U2a|@1‹'»/ì@1Š0U2a|@1ŠÍžƒä&@1Š0U2a|@1Š…‡“ݘ?œä%—ëš?4ë©$è‰?‘Ú¾¯ïé?i²Pƒè?‘\Žýµ€7?‘)]•\¬?гá‡}?’Dê™.x?‘8“‡«G?‘ݤ`Ìh?‘®7Ö=^9?ú`@0k?Œó}?ï?þ,DöP?…ÑTë0Ô?ƒ¼9XNÄu?‡&üòI?‡&üòI@@@@@&@(?ð?ð?ð?ð?ð?ð?5¾§ °¿H=S™Ø?=£ÆÕÂ? Oþµ Ç@¨kU¼Ü@ ø^›Vp^?TÉ,¸ ?@¶¦5šI?¤Î +[ëêT?ÇèH°«‚@ŸmÍ[å@Û@£‡+ @£"Ðå`B@£‡+ Á.„€@£‡+ Á.„€@£‡+ Á.„€@£‡+ Á.„€@£‡+ Á.„€@”)ÊÀƒo@”)Å\å»3@”)ÊÀƒoÁ.„€@”)ÊÀƒoÁ.„€@”)ÊÀƒoÁ.„€@”)ÊÀƒoÁ.„€@”)ÊÀƒoÁ.„€@7ºqÞi­C@7×”8ê@3‡ÎÙ‡+Á.„M‰ûçm@3t¼j~úÁ.„QnÙ‡@2zÔ,<žíÁ.„NÜC,¥@2zÔ,<žíÁ.„NÜC,¥@2zÔ,<žíÁ.„NÜC,¥?|Ñb×¶@@8#˜@8¾:@8 >+@8Iç@8Ù?¥u´GS:@8Î÷@8i§@8Å@8S@8û—?Å,£N²N @8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøÜ@­PNÙ‡+@­P_¾vÈ´@­PNÙ‡+@­PP Ä›§@­PNÙ‡+@­P;quŽ#@­PNÙ‡+@­PY³Ð|„@­PNÙ‡+@­P]¥œà@­PNÙ‡+Á.„€@ªN®—Oß@ªNÊÀƒ@ªN®—Oß@ªNÕÜÆ?@ªN®—Oß@ªNÜÚQ@ªN®—Oß@ªN˜bMÔ@ªN®—Oß@ªN•?|í‘@ªN®—OßÁ.„€@9Y*0U2b@9mVlô!@5ahr° Ä@5ZôðØDÐ@4ƒt¼j~ú@4‰Dg8~@3æYJôðØ@3ælô!.@3æYJôðØ@3ÖÜ]cˆf@3æYJôðØÁ.„NÜC,¥?¡ÅꯨŠT?¯‡¿\Öß?¿ôaBÔÓŒ?­XvŒM?±Ö©¾då@8Ù?ºðŽÄS?²U(˜?ÊÁä«$?•GÝóuS—?´®%ð"5@8û—?Vrÿä€?¯˜TúWÇn?´GLžl?˜<å05ä?¥È©¾ó‚ž@8 Ø@@@@@&?ð?ð?ð?ð?ðøøøøøøøøøøøøÝ@ªÔ§ï²@ªÔ Iº^5@ªÔ§ï²@ªÔ Ô•@ªÔ§ï²@ªÔ ã½@ªÔ§ï²@ªÔ íúCþ@ªÔ§ï²@ªÔ ŸU›>@ªÔ§ï²@ªÔ quŽ@«!½p£× +@«!º¬0@«!½p£× +@«!ºáG®@«!½p£× +@«!¶lô!@«!½p£× +@«!À'RTa@«!½p£× +@«!¾ì¿±[@«!½p£× +@«!»"Ðå`@7‡>«6z@7€Ä›¥ãT@2æ‡+ J@2â‚@·€4@2'KƧïž@2$Fs×Ü@1ÏO „M@1ÍVlô"@1ÏO „M@1ÍÙb¶¯@1ÏO „M@1ÎzáG®?3ßa=„?äm°û0Ž?“‡ƒ×¤?Ž,OêK˜u?”ä+ïè?”OPlðó[?гá‡}?’#maЀ?“h_N’%¾?‘.}áµ$?’êJ>áý?’9ñ9¶ò8?–-¤]î§É?ª‚eûƒ+?„ËD(ºp?†k3`E`-?‘HAõY‚§?IÏáå$@@@@@,@(?ð?ð?ð?ð?ð?ð? )å@?CšÆh?(b¶ý×i­?JZïlâ@ªÔ 3Øß@«!¼ÃƒÃ?EØÖ¢^Bû?j“ÒY;¹?‰kž„Š?ÓqÌêåWì@ŸjÖE¶É@Þ@Ÿw Iº^@Ÿw$Ý/@Ÿw Iº^@Ÿvæ³YÍ”@Ÿw Iº^@Ÿw†™ Å@Ÿw Iº^@ŸwLúP@Ÿw Iº^@ŸvòWé©!@Ÿw Iº^@Ÿw;¯è@¥žŽV“@¥žß;dY@¥žŽV“@¥ž{ÏF†@¥žŽV“@¥žf_>b@¥žŽV“@¥Ë$d³§@¥žŽV“@¥ž¨Pÿ,@¥žŽV“@¥ž©¶¼WI@5­¥œàv@5¬??¬¯X@2óS÷ÎÙ@2ú5e*NÔ@2U`A‰7L@2•*/êƒä@1Ç ù kº@1êÔ#ª:`@1Ç ù kº@1³kûÖfÇ@1Ç ù kº@1°¥¥$ëq?}@T˜ÁÎ¥?¬Æ‡‚s3â?­]>ô ª>?žƒ«6z@4Â&€I@3° Ä›¦@0°Ä›¥ãT@2×ï²-@0íúCþ\@2£ÉîËû@/^($ x@2£ÉîËû@/¬#»Ö(;@2£ÉîËû@/µÂ\(ö?æ ç«Z–?‘j`cq?¨ ƒ3 *??¯ð~aäí?¤Ôr‡³•#?±ùÐ % +?æ ç«Z–?“-N•I`(?¶*ÞºjÎ?¹÷Ø=ëEi?¢¡‰¶Üœ¶?°O­Rh™«?æ¡‚á¾A?Cx}¹x%?¨³Ð(14z?£…üWÅ?¥2§ÅÌþü?«Ý]2°ðƒ@@@@@1@?ð?ð?ð?ð?ð?ð¿—¶9†¹à?rEŸÚá€?yAXØ•?tmeŽîí@¡-òî@žÇÍÝ …¡?ƒòÔDïB?zc_í¬[5?ÈâÒˆŽm;?´éF/¥êý@ŸsçR@à@°¢\(öÁ.„€@°¢\(ö@°t xG@°¢\(ö@°Ä›¥ã@°¢\(ö@°ÎÙ‡@°¢\(ö@°ÈFÜ]@°¢\(öÁ.„€@¡H+…¸RÁ.„€@¡H+…¸R@¡H jçÕg@¡H+…¸R@¡Hå`A‰@¡H+…¸R@¡H#{J#:@¡H+…¸R@¡Gâh Ô•@¡H+…¸RÁ.„€@8£g ù lÁ.„>¤µÜÆ@5ÇÎÙ‡+@5¥zxl"h@5Àå`A‰7@5°ò{²ÿ@5!:’£S@4Ý¿HË’@5!:’£S@4È´9Xc@5!:’£SÁ.„NÜC,¥@8J¨?®££VºÓ‹?ÓK+ûHNÏ?º„Ú¡Ÿ?ÞÐ?”´ö@8Ù@8J¨?š˜‡þCî·?•Ã,X1Ø?¤G›LD3?¾_÷І@8û—@8p÷?­îŠõ ?¸Ü¸I½U,?°p)Õ?µ[}†?ö@8 Ø@@@@(?ð?ð?ð?ðøøøøøøøøøøøøá@Ÿ­VÁ.„€@Ÿ­VÁ.„€@Ÿ­VÁ.„€@Ÿ­VÁ.„€@Ÿ­VÁ.„€@Ÿ­VÁ.„€@“U-VÁ.„€@“U-VÁ.„€@“U-VÁ.„€@“U-VÁ.„€@“U-VÁ.„€@“U-VÁ.„€@7D¯O „MÁ.„>¤µÜÆ@3Œí‘hr°Á.„M‰ûçm@3Ct¼j~úÁ.„QnÙ‡@2ºÔ,<žíÁ.„NÜC,¥@2ºÔ,<žíÁ.„NÜC,¥@2ºÔ,<žíÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøâ@§³¢Ðå`B@§³•Â\(@§³¢Ðå`B@§³ŒøT2@§³¢Ðå`B@§³€÷KP@§³¢Ðå`B@§³–©@§³¢Ðå`B@§³˜Üå¶@§³¢Ðå`B@§³Ž<ä›þ@˜^÷ÎÙ‡@˜^Øv¯!@˜^÷ÎÙ‡@˜^äYR1}@˜^÷ÎÙ‡@˜^Ì-†#@˜^÷ÎÙ‡@˜_{K•|@˜^÷ÎÙ‡@˜^ð°µÄV@˜^÷ÎÙ‡@˜_ÝÐé@8G>«6z@8^ˆ6o@5E?|í‘h@5Qj§Ö˜@4¹7KƧð@4Þ3üèœ1@4=cˆe”°@4P›‡aºŠ@4=cˆe”°@4RÑfçá@4=cˆe”°@4[çÜûû¼?¤·V¶ Á?š•¹Š(¸a? ÍËÛÄõ?›äG>,)ç?§Ë÷úÜÇä?¢É æç·?ƒ6ð]g™ä?˜¨ŽóxSV?¡pCäëmï?›W²·w„?¡šä¿ë?®OaÕùü'?Á·ZÌYØ? )N!?¬ +¶±µÆÖ?ª|X¸.‚é?ž°ÿhk?šis^zaò@@&@*@$@8@9?ð?ð?ð?ð?ð?ð¿U’¥p?ˆž?ML?Fí'=á*?„ïœ:†b{@§³“Ð Yè@˜_rtÔ?e +óà¸?¢YîQ^Y?¶“ Ûù8”@4@‡bßT@Ÿd +P>Õ5@ã@¥+›¥ãTÁ.„€@¥+›¥ãT@¥/„M ¶®@¥+›¥ãT@¥/d©/9™@¥+›¥ãT@¥/‚w•â§@¥+›¥ãT@¥/o_p6Ä@¥+›¥ãT@¥/Rs*@”¦2-VÁ.„€@”¦2-V@”¬Œ¨îàÊ@”¦2-V@”¬·õ=>,@”¦2-V@”¬pÅ/¸Ÿ@”¦2-V@”¬pð Ø@”¦2-V@”¬²ÃŒ>Â@9N쿱[WÁ.„>¤µÜÆ@3û Iº^@1ݸ¢Z@3¢-V@1D=óp?@2–ý!ÿ.I@0Áškuß@2–ý!ÿ.I@0¿” W„@2–ý!ÿ.I@0°Ë¼U÷@8J¨?“)ÂkÙE5?›7ö.ÈC?¢—¢©¯?°vWW›£?¬eÍ+–ø@8J¨?šSáçþlÿ?³uCcCîO?¤@ú;+?°c¼Á‡Q?¥“"Ó8Ÿ@8p÷?t¢dÿÖ?ž'Ö+”Må?¦¶ùà÷v?™ÿ š'S³?¦[‚LÁ @$@*@&@:@1?ð?ð?ð?ð?ðøøøøøøøøøøøøä@ª-Ñhr°!@ª-Ê;~NŽ@ª-Ñhr°!@ª-%`A‰6@ª-Ñhr°!@ª,¤Ý/ @ª-Ñhr°!@ª,q©ûçm@ª-Ñhr°!@ª,¶‡+ @ª-Ñhr°!@ª-1Ä2ÊW@œã¦éxÔþ@œã»dZ¬@œã¦éxÔþ@œäè§æ›@œã¦éxÔþ@œåN¤¨Á@œã¦éxÔþ@œåáG®|@œã¦éxÔþ@œäÚîc‹@œã¦éxÔþ@œã€@7}:’£@7o”ØK¬=@4^Ù‡+@4 Ä›¥ã@3éÛ"Ðå`@3†§ï²-@3^«6z‘@3£× +=q@3^«6z‘@2ùŒ~($ @3^«6z‘@2àªdÂø8?|¬Æ Væ?´b0BiÅ‹?«/b²›?¡‹÷;Ïœ(?ÓÖ ‡ +ŽQ?Ìéí'iÙ?€‘gQÚÃ?³ŒW¦"°?²N…i?¨[3.ù?ÉWl4t ;?Ôë· ={2?ƒöä.)¨w?àìÚJ>?º6¤¨weN?“ûæÛØs?£‘6èYkC?Ê©D·P2@@@@@*@*?ð?ð?ð?ð?ð?ð¿¿¿åÀ?¶ï¥=ð?“ÿËðñ?—Â÷ÿ·Ú6@ª-ƒdo.´@œä$$è?œiùÁã¡?Ÿ­C¼é@2m¯ó>2±@-OÄc!â@ŸZxÝ;ßH@å@«|Rn—P@«|7KƧñ@«|Rn—P@«|TêJ@«|Rn—P@«|TÖ¡aå@«|Rn—P@«|S àÞÓ@«|Rn—P@«|QÅ@«|Rn—P@«|QuŽ!–@©<n—@©6@®ƒÐå`A‰@®ƒÑD=¶@®ƒÐå`A‰@®ƒÐÔ@®ƒÐå`A‰@®ƒÐ¥*Z¿@®ƒÐå`A‰@®ƒÐïÅ2@7Ç>«6z@7Æâú!Ÿ@1T›¥ãSø@1T¿±[W>@0t“t¼j@0tò›öŒ6@/QÑN;Í6@/RrÕ"õè@/QÑN;Í6@/Q~ô¥ô@/QÑN;Í6@/Qã!¢ç÷?( ˜?Úeqa†?‘Ûƒ{ÜÂ?‹²ô´úMŒ?ê4sFž ?ÌKšK$Þ?•w«ogŸl?’Îÿ@Í{?ƒ&Dd?2âÿ…6H?Íäwh??iåDbƒy?Œ‚°—‡Â[?ŒÃõßî;?‚s*ùÕ¦?ƒA&¡?†°"ŠõíŽ?†“‚I—²@@"@@(@1@1?ð?ð?ð?ð?ð?ð¿4Ô¸pˆ¿.Ó\ÿà?/‘ß1cû?/l·{áqö@ »4™x?IÑÓfx*³?—’¾û?çí?‘IØÅue@Ÿmò»ò!@è@¬ØÆ$Ý/@¬ØÐå`A‰@¬ØÆ$Ý/@¬ØÂ\(ö@¬ØÆ$Ý/@¬ØÉº^5@@¬ØÆ$Ý/@¬ØÈr° Å@¬ØÆ$Ý/@¬ØÏß;dZ@¬ØÆ$Ý/@¬Ø¹XbN@¯%ÿ|í‘h@¯& xÔýó@¯%ÿ|í‘h@¯&´9X@¯%ÿ|í‘h@¯& V@¯%ÿ|í‘h@¯%û¥ãSù@¯%ÿ|í‘h@¯%þ5?|î@¯%ÿ|í‘h@¯%ö‡+ @8–»˜È@8†È´9X@4#÷ÎÙ‡@4%`A‰7L@3€å`A‰7@3ƒþ\‘ÑN@2î_oÒ @2ñ4êJŒ@2î_oÒ @2ñ@N¤©@2î_oÒ @2òœwškQ?3ßa=„?’ÕOäª9ô?—go]Þ?i²Pƒè?‘#6‰¥_?ïˆ6ÏJ?­g;+³ût?’?Á• ñ:?‘½ÀèÑmK?ð{¥âdû?•¯ÃþƒR?—Q,Äš¤?‘c‚ׯ?Å{¿Ž<º?‡š¿]b?‚æÊ¬vã?‘¬xÆ×S?†¯Mž684@@@@@@?ð?ð?ð?ð?ð?ð¿l)°%¿cë¡ï§?d²®¸×a>?Zþ ‘$@¬ØÇžëb@¯%üÆ-æ?ƒ\{ò’Ü?nÒ:x·Ä @ëeQN?ÌÅÆôè@Ÿoq¸r@é@ª$Ý/@ªƒ\ªß?@ª$Ý/@ª’×s@ª$Ý/@ªt‡ü¹#@ª$Ý/@ª‹Æ§ïž@ª$Ý/Á.„€@ª$Ý/Á.„€@•BÙ‡+@•BÚ³ÊQ|@•BÙ‡+@•BÝcˆe”@•BÙ‡+@•Bï²-@•BÙ‡+@•BÑœàu÷@•BÙ‡+Á.„€@•BÙ‡+Á.„€@8 Î_oÒ@8 kãƒ@5’ Iº^5@5¡ÑN;Í6@4®ùÛ"Ðå@4´g8}¿@4–ý!ÿ.I@4¢ÊW§†Â@4–ý!ÿ.IÁ.„NÜC,¥@4–ý!ÿ.IÁ.„NÜC,¥?‰çõ×eµM?­¦¾iî7?™%LÑ”Ô?¬¸O#¶A@8Iç@8Ù?“ý)©>}?¤ÖãUá«?­Jæ;”.ñ?¦°!§ÆV@8S@8û—?-Iÿz?¥™þñt‹ ?¡7‡V/Žr?¦·}­2;¹@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøøê@¦`Ÿ¾vÉ@¦`^5?}@¦`Ÿ¾vÉ@¦`šu@¦`Ÿ¾vÉ@¦`¾ß¤@¦`Ÿ¾vÉ@¦`¾ß£@¦`Ÿ¾vÉ@¦`³Ð|„@¦`Ÿ¾vÉ@¦`W>«6@¬õE¸Qì@¬õE¸Qí@¬õE¸Qì@¬õG“Ý—ö@¬õE¸Qì@¬õF$Ý/@¬õE¸Qì@¬õFYJôñ@¬õE¸Qì@¬õF$Ý/@¬õE¸Qì@¬õGl‹C–@2²ÃÉîËû@2±ò×s@1E?|í‘h@1DŽŠqÞj@0¢-V@0 ëíúCþ@/Ǔݗö,@/Åoi@/Ǔݗö,@/Ä xFÝ@/Ǔݗö,@/Å8ï4Ö¢?É^³Dw'?ÿ﯒?‘,fŸCô6?Œ'õ‚$5ñ?‘ƒZ)Àˆ?‘‚ÊŸû©?Ðbn—l‹…?’`5žña?‘N÷J’?Hª¦ºón?‘&”T¦mÂ?低NëV?„ ©¢¤þ?lío>÷?…cü›Š×Õ?„ªÎZ´?‰]³ß’Ý?‰6‰õË@@@@@*@*?ð?ð?ð?ð?ð?ð¿=×ÃL?<•°?DOÆ­·û?2$H~ v?@¦`,½zÖ@¬õF—ïŸ?SžôÒý\?A'©Ï4í¬?¢ò©ÿö?xëäx=lF@Ÿr÷û›f@ë@ gï²-@ nÙ‡+@ gï²-@ '_´­@ gï²-@ Ö—È0B@ gï²-@ iÐÞ Æ@ gï²-@ d71†@ gï²-@ i£[·%@¢ê0£× +=@¢ê4Ás%@¢ê0£× +=@¢ê=ðÓ@¢ê0£× +=@¢ê¥-/n@¢ê0£× +=@¢éø¶C*{@¢ê0£× +=@¢é¹Å††@¢ê0£× +=@¢éÆ?ׂc@8-¥œàv@89õY³Ð}@4Ìí‘hr°@4žE3O«p@497KƧð@3ó4+Ö’‚@3zÔ,<ží@3[ÃþQKN@3zÔ,<ží@3=›ä¤Ç@3zÔ,<ží@3I¸Ã‹õ2?’ÌRû ã?˜àYëÀ?ŸÛùJƒVX?˜Ÿ!?¬L³;G£?°Îè…”Œ?”þÐGžP?™õF¨üù?žé\]Ž®?šVˆk™‰G?¶ì“W¶·-?³H—樑¼?˜ +Àaóä?œ¡·¨KЧ?­ñ'*E?•¥b(Ù‚?¡×§{ç? SÛDâ2@@"@(@(@9@5?ð?ð?ð?ð?ð?ð¿]¼ÇÆ¿˜@Ð'(?A*–7ý°?d;y[ü„;@ kDÄtô@¢êÈŒûò?\·]x5?€™·Üu¸?¥QpR­Í?ÞµOéL®@ŸdâÓœp@ì@«‰;çl‹D@«‰5?|í‘@«‰;çl‹D@«‰Hj(ün@«‰;çl‹D@«‰?_Œ¿=@«‰;çl‹D@«‰K. Q@«‰;çl‹D@«‰<Ë<й@«‰;çl‹D@«‰?’ ɶ_£ ?}@T˜ÁÎ¥?’TÀ§!,ô?’ºMºw @7ÞHè§æ@7Û)å详@4À Ä›¥ã@4½JÙ‘ƒ@3ñ‰7Kƨ@3ïD=²:@3Þi­BÄ@3<'`@3Þi­BÄ@3ø§D|æ@3Þi­BÄ@3A;xvº?•'Z]Ô&?•Ü8Ï w·?’ +.Ý` Ì?’]ªýxõá?’Ù‘›ùlq?“ÅÓ/€ZÊ?‚Á¤õ“²&?š?ÇP¼Y?‘—Á=µRÀ?’Méå¿ái?‘±¨\/ÒÙ?”'ûˆ5êb?œwX '¯Ö?˜R+r7ùÈ?—™uª²êk?Œe;Ƶ?…§á¡1?¼­T(U@@&@&@,@:@:?ð?ð?ð?ð?ð?ð¿W×s8¿TSÕ2ì?S\½1L.å?>-tCX@¬ÙQê´ùÎ@˜“¦¶éQ?pÆê/¡$l?`↵R?×f•VŽ?Á2Öì6"@Ÿk}÷¦5t@ï@©§ï²-@©¦§ï²@©§ï²-@©¢\(÷@©§ï²-@©¨>BZî@©§ï²-@©¥`A‰7@©§ï²-@©¥¡ÊÀ‚@©§ï²-@©¤ŽŠqß@ž4ËÆ§ïž@ž4ÌIº^5@ž4ËÆ§ïž@ž4Þi­BÃ@ž4ËÆ§ïž@ž4ߤ?åÉ@ž4ËÆ§ïž@ž4Þƒä%¯@ž4ËÆ§ïž@ž4Ò£S'@ž4ËÆ§ïž@ž4Ñ·Xã@6^Hè§æ@6`Ë)^ž@1Ê^5?|í@1ļ£@1iÛ"Ðå`@1a ²•éâ@0hè§æ›@0cS&Â@0hè§æ›@0hÇâ‚@¸@0hè§æ›@0hK]Ìcñ?„F/·ÿP5?‘¸ü"ù€2?–QaéQR?’(æ„+Zk?‘¾%î +ã?‘ ê$4Ÿ?žˆ2}?•wi¢‚*?“èËôy?’.p»Cþ?‘–=û.e1?äqÅYÈ?— —‰Ò‡?“ü”òÖÂ?•o•ó}ó?Ž;­B·?‡gϵ’õ?Š|)-}í(@@@@@*@"?ð?ð?ð?ð?ð?ð¿8‘uKÀ?LFÌj´?ËD´ ?Lc þw@©¥¿Zib@ž4ѳ€d?6˜ß]ÇËÁ?mÜÔ £æ?s,çŠÁXf?âÓ5#@Ÿh¶{݆Ë@ð@¥–@1õµsê³hÁ.„NÜC,¥@1õµsê³h@1¯.Hè§?1·†Æjñ?±‡º`¸ú ?³ÿE Ü+?£à•ÒnÁ@8Iç?¾=Ä =ÐF?´M ó¬^õ?°M\³Ù“@?Â0ÒW) [?¬já{X@8S?·% mèc?Ö=¶Ñ!?¸Â ƒÌà?™Jz¬Uf?'ã{>ô‘@8 Ø?ÄLióA›@@@@@,?ð?ð?ð?ð?ðøøøøøøøøøøøøò@«¨üj~ùÛ@«©¸Qí@«¨üj~ùÛ@«¨ýcˆe•@«¨üj~ùÛ@«¨þš@«¨üj~ùÛ@«¨ü¾ß¤@«¨üj~ùÛ@«¨úQZå@«¨üj~ùÛ@«¨û"ÒL@œšyÛ"Ðå@œšp¢ŠÑb@œšyÛ"Ðå@œšxl"h +@œšyÛ"Ðå@œšw€4mÇ@œšyÛ"Ðå@œšy#¢œy@œšyÛ"Ðå@œšwé©'@œšyÛ"Ðå@œšv®‚ÐH@7eöý!ÿ.@7gãׯ··@0ÞÙ‡+@0ß;dZ¬@0•`A‰7L@0•`A‰7L@0TmÅÖ8†@0T¼j~ùÜ@0TmÅÖ8†@0Um]aÄ@0TmÅÖ8†@0U`B&à?~ì“?ÕÒJ?4ë©$è‰?‘,fŸCô6?ŒR‹w#z?‘22ªÓ$?ý‰G¿~´?|¬Æ Væ?’uß¿çÒ?œõLÁE?|Ø}Õ…?‘=úAq|?Éõç6ß?…ò¤ãŠ?Œ¾»•lŽ?„›‹ÖO?ƒE 8?†Üù¡™´?‡gÏ*¿6ð@@@@@.@,?ð?ð?ð?ð?ð?ð¿cò_ì?JïÌSÄ??ðÎŒgÜ%?3g(@l€±@«¨ÿl¾Éµ@œšt˜%VP?_»?°”¯w?SÖ®W™Gð?ÉÄük†r«?³Ì£ ‘7@Ÿg¬Rlj@ó@ ¢m‘hr°@ ¢pmÞ‚Y@ ¢m‘hr°@ ¢qïg@ ¢m‘hr°@ ¢p–8fù@ ¢m‘hr°@ ¢q*ðõ@ ¢m‘hr°@ ¢wâ6B@ ¢m‘hr°@ ¢xõÑ\©@£3¾vÈ´9@£3¹n¼dÔ@£3¾vÈ´9@£3¹Lo¦@£3¾vÈ´9@£3¹Àëíù@£3¾vÈ´9@£3»+éoŒ@£3¾vÈ´9@£3»¢k@£3¾vÈ´9@£3ºø4J@7cg ù l@7iR§ëÊ@2žÙ‡+@2™~Ý®@1îùÛ"Ðæ@1î92„Ð@1kxFÜ^@1gLsáð@1kxFÜ^@1dWXnQ@1kxFÜ^@1d_©‰p™?|ò0p‰J?còÈúª?‘%`Bë`?Œ‘ä¥@h?“½1Çâ©Ò?•›×±ƒ4?ƒ…†r÷šâ?’Ôœ-4´•?ŸÕË\0.?‘*4Ýf¡?”vQ¾8¬?”0C¤³¡?‹´©šù'i?ÙHñâŒä?ƒ6Ýž}%?‰:r.¶;?š0Áòëe?N ˆÒå@@*@"@,@7@6?ð?ð?ð?ð?ð?ð?W³²j?<;3 +Ð?CkÈ u?!kGÏœ!\@ ¢sC°˜@£3ºuÐ>x?c&å8`+?A3-—k\ú?Ï^ž›Àb„?„P=í$@ŸfܲáZw@ô@ž¹›¥ãSø@ž¹š¬1@ž¹›¥ãSø@ž¹žYòºž@ž¹›¥ãSø@ž¹œ[¿§ @ž¹›¥ãSø@ž¹™ŽC˜W@ž¹›¥ãSø@ž¹˜ž¼Ë/@ž¹›¥ãSø@ž¹™Zw½ø@¥i"Ðå`B@¥i#× +=r@¥i"Ðå`B@¥i&›ÆÍ@¥i"Ðå`B@¥i/¾$åÁ@¥i"Ðå`B@¥i& ˆÇ +@¥i"Ðå`B@¥i%?*Å@¥i"Ðå`B@¥i#ú¬®@5`ØDЩ@5a–R½<6@0Ìí‘hr°@0Ëþ$ñ5¸@0’Ðå`A‰@0‘qÒÉB@/¸7´¢3œ@/´ “ïV¸@/¸7´¢3œ@/¶”†ê~ù@/¸7´¢3œ@/¶uÞ÷;?ŽÕQp Î?Øðù÷?‘SžÕºk²?‹ÂÂisåi?‘RyUq?‘>Õ/dŸò?~ì“?ÕÒJ?’´†LÓN?‘b̼Ýh?4ÁéVr?‘1Á‘{f«?jÛ»BF&?‚À%?56ëÀ#?„â¿Ë$?‰tª+<Ñ?‡²>®$ìŒ?‡p°Ý(Ö @@ @"@@5@4?ð?ð?ð?ð?ð?ð¿[J?/Õ"À?Tµg°G"?4žÁ =@ž¹™‘§²@¥i$™¦öø?(òžÓ­@?UP²ÅÕ J?Z¥ç&¿?µ³ÛÄ R@ŸgÙT¬Ï@õ@®Œ8Ôýó¶@®Œ+pôí@®Œ8Ôýó¶@®‹ç ù l@®Œ8Ôýó¶@®‹¢MÒñ«@®Œ8Ôýó¶@®‹ñÄ2ÊY@®Œ8Ôýó¶@®ŒÒˆÎp@®Œ8Ôýó¶@®Œ!‰7KÇ@œ³ˆ1&éy@œ³Öеâr@œ³ˆ1&éy@œ³!ÊÀƒ@œ³ˆ1&éy@œ²õ%F +¦@œ³ˆ1&éy@œ²á|ÚQ@œ³ˆ1&éy@œ³aG®{@œ³ˆ1&éy@œ³N¤¨ÁV@9-¥œàv@90–:Š’"@3Å?|í‘h@3œ£n.±@3F“t¼@3a|ÚQ@2³&Á½¥@2~ƒä%®æ@2³&Á½¥@2¡hr° Å@2³&Á½¥@2›W>«6z?›ÀM:±?ÅS²«ZŠ?Ò~³4âF…?ÀÁD ±·?£ ^&Â.?§Aù:Âü?|ôŒ<~%>?Â!“ZŠÑ?ÃOn{-Æ?¶;Á`ªÎ•?¡ºøò¤âÍ?«¾-ùOü?‚¡ïSÔÉ?£ÓM'-ç? ß2Wô?­5ªW®áù?Ž .0åv?•*†*Zû@@@@@*@*?ð?ð?ð?ð?ð?ð¿gž‰¿rÆI ?_”Ï’´Ÿà?sþ–M‚ó@®Œ'³NŸO@œ³®œ;?w‰"i”?Š_Ê|ƒÀ?ãó|/ @ ÈÌÛl@Ÿ_ÆÚ˜È@ö@ ¨r° ÅÁ.„€@ ¨r° ÅÁ.„€@ ¨r° ÅÁ.„€@ ¨r° ÅÁ.„€@ ¨r° ÅÁ.„€@ ¨r° ÅÁ.„€@ £/²-Á.„€@ £/²-Á.„€@ £/²-Á.„€@ £/²-Á.„€@ £/²-Á.„€@ £/²-Á.„€@8·â‚@·€Á.„>¤µÜÆ@3ý‘hr° Á.„M‰ûçm@3×ï²-Á.„QnÙ‡@3Eœàu÷Á.„NÜC,¥@3Eœàu÷Á.„NÜC,¥@3Eœàu÷Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø÷@¤ñ™™™š@¤ññ©ûç@¤ñ™™™š@¤ððB‹•@¤ñ™™™š@¤ñ&¯eá@¤ñ™™™š@¤ñÒ˜@@¤ñ™™™š@¤ñ Ñ¡å-@¤ñ™™™š@¤ñ=fí@™™\(õÃ@™™<,¢tÑ@™™\(õÃ@™™73E…@™™\(õÃ@™™5Ò„@™™\(õÃ@™™©“Üû@™™\(õÃ@™™ýœ]Á@™™\(õÃ@™™{hÆ@8VšÔ,<Ÿ@8?˜Œ¿°@2.5?|í‘@1é<"LR@1b-V@14‚‚q7@0YŒ~($ @0=èOMÑÝ@0YŒ~($ @0BxXd>@0YŒ~($ @0CüÁ ?”Òž“¸8A?“›2±Ì_?¬³ü“B?¡c'ï`Åò? BDr²“?œ Øvk‚c?£²Âýž?X× ç^‘?©uíž+«?¢p‹ÐÇÇ?¤7kM‘=;? lõ1èe?õ–Ž ï¨?Q…²<(?•]í× ´?ŠòýÛÒIÏ?(Â!My?’n›î\V@@ @*@*@9@8?ð?ð?ð?ð?ð?ð¿I¨àƨ¿pãÛáÀ?D~E.NTw?J»-<–£Æ@¤ñéÛª÷@™™!÷Ž—¯f?‹¦ ŸYÔ?çR`^?²œ>ÉÐ?ÐbMÝn½?’Ï>`Ï?ŠA)Nîá?-õI¸`K?Ía´ï?Jö²U4?€bMÕ]f?Œ¬2aå?‚oÁÆÜ§÷?‚â‡~ûÉ\?†‡[ÐJ³“?†‡¥âè@@@@@0@.?ð?ð?ð?ð?ð?ð¿S¹X÷?$mœ÷ô?0x”j|ä?,~{†ÆÊÏ@¢ãaW®³è@œÁŠ?ÇéÀ??¬ÅÇE&Ä?:öß§`P÷?x·MP•h?oüÿ¦[@Ÿs“ d @ù@¢Ö©xÔýô@¢Ö©ûçl‹@¢Ö©xÔýô@¢ÖªÍžƒä@¢Ö©xÔýô@¢Öª™0¾ @¢Ö©xÔýô@¢Ö« Iº@¢Ö©xÔýô@¢Ö¨>BZí@¢Ö©xÔýô@¢Ö¨ÁTɇ@§iJ=p£×@§iJ~ùÛ#@§iJ=p£×@§iJdÂø9@§iJ=p£×@§iJ=p£×@§iJ=p£×@§iK)^ž@§iJ=p£×@§iJÚ¹õZ@§iJ=p£×@§iJ³g ù@2Ç>«6z@2Ç>«6z@.a‰7Kƨ@.a‰7Kƨ@-º¬1'@-ºCþ\‘Ò@,ܾߤ@@,Ü£n.²@,ܾߤ@@,ÛÍ5¨Xz@,ܾߤ@@,Ûçl‹C–?É^žQ5P‚?Úþþ³?‘&Øç?‘?‹¯eU5?‘õbÐ\?Êëüâi{?ÐbV‡,?’ ,øÕC©?ŠA)Nîá?3.Ylî?äú’B[@¬£Y‡+@¬£Zxl"h@¬£Y‡+@¬£W§†Â&@¬£Y‡+@¬£Wéùq@¤\(õÂ@¤\*Aûk@¤\(õÂ@¤[šu@¤\(õÂ@¤[ô‡ü¹@¤\(õÂ@¤["Ðå`@¤\(õÂ@¤[W>«5@¤\(õÂ@¤\¾ß¤@/j¦L/ƒ|@/j¦L…g„@).V“t@).V“t@(&éxÔþ@(&éxÔþ@'Š#9Àëî@'ŠOv`@'Š#9Àëî@'‰ûçl‹D@'Š#9Àëî@'Š ÞÒ?É^¨¯Âj?ÉGãA­÷?‘½ümüñ?‹½XQê>æ?îú/´`?³×OÓ+y?ÐbMçµ7§?’¼  g¶?¹º–Èj?3.Ylî?ÔÒ@úˆ‘?J&d„?k?€bMÕ]f?Œ¬Çëý ?‚oÁÆÜ§÷?‚â‡~ûÉ\?†ˆ#.÷?†‡hÉÈÓ@@@@@,@*?ð?ð?ð?ð?ð?ð¿Sz†A¼?(¯û X?=Æ]QqX¤?ñ$ø¬Í˜@¬£XßZD@¤[y±?L£‚Ñh?=;Åj¶?” áý=‡ê?4Ó°³:@Ÿs ßùë…@û@£7'l‹C–Á.„€@£7'l‹C–@£7#S÷ÎÙ@£7'l‹C–@£7'H Zw@£7'l‹C–@£7Aé°@£7'l‹C–@£7*\ù¢@£7'l‹C–@£7$ +0§ @–¾­VÁ.„€@–¾­V@–¾¯WÀ@–¾­V@–¾¥bs¶¿@–¾­V@–¾ÉÞ]»ê@–¾­V@–¾«b¶L@–¾­V@–¾£VÄK@7-¥œàvÁ.„>¤µÜÆ@2À Ä›¥ã@2Ë€ÁV @1ô“t¼j@1úÃG&à@1ò䎊r@1‡úawéª@1ò䎊r@1}éŽWð@1ò䎊r@1ò5b@8J¨?™<õyŸÓû?”4=ø?’½°a&?‘ï~ºÝµ&?”ü¹ ¨õ@8J¨?˜ª7”&j…?—?ª«£Ãu?”^¢Ò˜5¹?’Ò`Ìùx\?‘µ§’Cƒ@8p÷?” .וå?‘?=“ðw{?š( Èß„?‘;Ö&-¹¥?˜¹E{‚ƒ@&@(@$@8@8?ð?ð?ð?ð?ðøøøøøøøøøøøøü@¥¼k Iº@¥¼g®zá@¥¼k Iº@¥¼k…¸R@¥¼k Iº@¥¼l/ƒ{J@¥¼k Iº@¥¼k’:)Ç@¥¼k Iº@¥¼j³g ù@¥¼k Iº@¥¼jqÞi­@¬<’ñ©ûç@¬<‘ë…¸@¬<’ñ©ûç@¬<”FsØ@¬<’ñ©ûç@¬<’ñ©ûç@¬<’ñ©ûç@¬<“g ù @¬<’ñ©ûç@¬<“ê³g¡@¬<’ñ©ûç@¬<“3333@6Ñ|ÚQ@6Í‘hr°"@0×+ Iº@0×Á½¥œ@0H“t¼j@0HüPHð@.Bu%F +§@.BZîc‹@.Bu%F +§@.C9Àëíû@.Bu%F +§@.CŠ Þ?–ªÎ­¡?Qdöÿô¼?‘jh¨qã9?ŒÖ +Äȱ?ùª¨?ÃwZL?3ßa=„?’Q_Ú¸FN?»Þ‹"è?Níú¾?õ<úU?Z˜°,aÝ?‘7#Œ!xv?ŒÆò/¢äÍ?‚¯­Ù¤Á¶?ƒ ?ÿ½?†Ë¢L1Ù?†¯Mž684@@@@@,@(?ð?ð?ð?ð?ð?ð?<€¥?4ó½Oˆ?>WDvÇg?%HŠŒ9øI@¥¼jlP¾,@¬<“"'‡Q?W‰ØË +mA?C”2^íû„?® rÌVoL?†¥ÈN†îÐ@ŸmM=µ˜@ý@¯èŠ=p£×@¯èOß;d@¯èŠ=p£×@¯è‰^ž @¯èŠ=p£×@¯èŠqÞi®@¯èŠ=p£×@¯èŠdÂø8@¯èŠ=p£×@¯è‰­BÃÊ@¯èŠ=p£×@¯è‰ã½@©. +Àƒo@©. …¸R@©. +Àƒo@©.§ï±@©. +Àƒo@©. 7Kƨ@©. +Àƒo@©. +™0¾@©. +Àƒo@©. +0U2a@©. +Àƒo@©.ÕfÏA@4–šÔ,<Ÿ@4’©“ àß@2—+ Iº@2˜âe+Ô@2å`A‰7@2ù k¹Œ@10–»˜Çã@11ÿ.Hè§@10–»˜Çã@10IQ‚ª@10–»˜Çã@1/HË’:?Œs¤DÅÐ?ôÊ_?’ >(lQ ?Œ^:Òf?‘ÇöÃÞ`?‘‚ÊŸû©?1·†Æjñ?’0nà=Q“?’TÖ©E?‘ǧ?D6?‘ýuãá$6?’j“O’I?¡]mZRØ?ŒÖ +ÄȲ?†¼Š˜L¥ø?…ÇóÏ€9"?‡Ä­‹›Ü?‡”_Õ­çW@@@@@,@*?ð?ð?ð?ð?ð?ð¿L›Ë/8¿B| 6l?”Œ–cKs?&Ú}viú@¯èŠæÔR@©. +)Âyð?:2*¾ýM2?IdÅpzt?v­8ïp?—|ÛÂÌ~V@ŸiÆë9Õ+@þ@¦t}p£× +@¦t}p£× +@¦t}p£× +@¦t}ôäÏÝ@¦t}p£× +@¦t~$ŠÆê@¦t}p£× +@¦t~ŒêsÍ@¦t}p£× +@¦t|ªøO@¦t}p£× +@¦t|jcxí@œ<$Ý/@œ<$Ý/@œ<$Ý/@œ<$®æë@œ<$Ý/@œ<ýŠÚº@œ<$Ý/@œ<‹qÿ@œ<$Ý/@œ<J^|@œ<$Ý/@œ<Eµ‡§@.}Vlô @.}Vlô @+ÂÐå`A‰@+»쪸¥@,4ýó¶E¢@,5p +@*³üPH@*³@N¤¨Â@*³üPH@*³Øm$…@*³üPH@*³KÿUõí?É^ž6õP?¾¡¹†ÂÏ?‘YK÷¬6?‹¨ÀœÓI?çZùêj¦?±æZaí?ÐbMÝn½?’Îð•§Œ?~¬@<Ê?/VbªÈ?͈jg¥?Jö²U4?€bMÔŠ»?Œ¬¡“Ò_-?‚rQœÇÕ?‚åáøC¯Ü?†‰Î¢ã‡?†‡f]² @@"@$@@1@0?ð?ð?ð?ð?ð?ð¿OEi/²?%WÈ?/å¼#õ~Â?0$”û5i@¦t}Y”æ¬@œ<þ?>­™–õ?ƒ@¥/{?w. _ ?3'žn}¼Û@ŸsôˆÒ@ÿ@¡? Ä›¥ã@¡?!$Ý/@¡? Ä›¥ã@¡?"©“ á@¡? Ä›¥ã@¡?"ÞÑ·@¡? Ä›¥ã@¡?!aä÷f@¡? Ä›¥ã@¡?¿HË@¡? Ä›¥ã@¡?!½¥@¨;{dZ¬@¨;{dZ¬@¨;{dZ¬@¨;~ž›@¨;{dZ¬@¨;€uöý"@¨;{dZ¬@¨;yXbN@¨;{dZ¬@¨;~ÿ—%@¨;{dZ¬@¨;zÇË)@4T xFÜ@4T`ªdÂø@2+ Iº@2 ù kº@1iÛ"Ðå`@1k6z–@1«6z‘@1U›=È@1«6z‘@1óMj@1«6z‘@1·éùs?|öOÿÝ?“Ãruöò²?‘£Ä›è?Uóú*˜?‘héø†|?‘C!ƒžÈ?|¬Çëý ?“$i «%h?’¤šÜI«?°‹Œ÷€?‘77…Âç?ÐnçK/?‚|׿pY?3XMÊV?”³Ž+k?…{BÕ0Þ?‡&üòI?ˆ +¿„r©Ý@@@@@"@"?ð?ð?ð?ð?ð?ð¿$— ð?Ç`@?9ÍrenœO??+r°¿Þ@¡? ®ÂÐØ@¨;{‚9þl?Y¬OÌ´(I?_„ UÌn®?Á4‹×ZW?ÉC‹bQi@ŸfÅ0á?@@ []/Ÿ¾@ [\¬1'@ []/Ÿ¾@ [O½i*O@ []/Ÿ¾@ [A- Œ@ []/Ÿ¾@ [Hg1#@ []/Ÿ¾@ [AlÁ"[@ []/Ÿ¾@ [@¾Øæ@¦¤½ó¶E¢@¦¤½ô\b@¦¤½ó¶E¢@¦¤½qüz@¦¤½ó¶E¢@¦¤Á»øB@¦¤½ó¶E¢@¦¤µר‘@¦¤½ó¶E¢@¦¤·óvM\@¦¤½ó¶E¢@¦¤·ü±¾@4T xFÜ@4S½vïºÀ@1Œí‘hr°@1…CÑa@1Z~ùÛ"Ñ@1S}!@0Š0U2a|@0ƒœ¢Ç¤Ô@0Š0U2a|@0ys P|@0Š0U2a|@0}d}â ?}@T˜ÁÎ¥?ðš›?‘nǾfü?7»¦X®t?”¦«²&vo?’è…ˆV'Í?|¬Æ Væ?’æÿ‚Ê?µj :O?˜!¼‡ñô?“÷À°B©y?’G县âú?‚«Kµ¶??`Û<·?†L7{™ +?„EëŸå{?‰¤A—ö5?ˆêfµFx@@ @@(@;@6?ð?ð?ð?ð?ð?ð¿z;Ë‚¿[üºíÚ?H–áÅEÌ?D¶›ÉÑ@ [O>/ì@¦¤ºÉÝæ?gàXúk?dŠca©‚?Úÿ¤)š¹ó?ÓÂÙ¤ša@Ÿfßd¨@@­–Ãn—@­–Ì‹C•@­–Ãn—@­–³ê³g¡@­–Ãn—@­–©*0U2@­–Ãn—@­–¢u%F @­–Ãn—@­–¹Û"Ðå@­–Ãn—@­–ÂZîc @¨G¼í‘hs@¨GÀA‰7M@¨G¼í‘hs@¨GÇ+ J@¨G¼í‘hs@¨GÂÞÑ·@¨G¼í‘hs@¨GÍà q@¨G¼í‘hs@¨G½æšÔ,@¨G¼í‘hs@¨G·süP@8 ØDЩ@8|í‘hr@5{ Iº^@5sñA [À@4¹7KƧð@4µF +¦L0@4¿ò䎊r@4µ®æ1ø¡@4¿ò䎊r@4Ì‹C•@4¿ò䎊r@4ÎBZîc ?¢F^ì¼Sð?ò}¥_Z’?—æ'=D´P?±òÛÝ"Ù?§|Qæý S?šèïdË?|öOÿÝ?£kŸ!µ?”Qä\‰Õ?©øpe³­ó?¤”ÈÞg°?¦ÍL ÖŽ?‚‘´…=Ca?™*ŪZÞ[?\ÍÅ“¢?¢ÇrˆG?1 –R¹ù?—Š9÷^Þ@@@@@,@$?ð?ð?ð?ð?ð?ð¿_pcUÄ¿CBW¸?j«XOð\×?XéôŽ(§ù@­–ÂôaÏ‚@¨G¾ãaŠ@«’H´9X@«’Hè§ç@«’H´9X@«’>¸Që…@8·â‚@·€@8Ðò{²þÆ@3ÜIº^5?@3ß¾vÈ´9@3q‰7Kƨ@3w»/ìVÖ@2^«6z‘@2c•$Þ@2^«6z‘@2^Ù‡+@2^«6z‘@2Z¬1'?¤ÊŽaÈ]Ó?•@K/Ùz?žG)ñ†Ü?Aš%ðï?’Þäi]i?“yÄö%Þî?óA[ØïF?•@¼Cк?š!Ïbõ³·?á>G]!?’ºñS©YÖ?“®°ýYè@?¼ÐÁß9&û?ÉGãA­ø?‰¢Ò+ÜÝB\@­ˆûdZ¬@­ˆû¥ãSù@­ˆûdZ¬@­‰@­ˆûdZ¬@­‰tSŽó@­ˆûdZ¬@­‰$Ý.@­ˆûdZ¬@­ˆþž›@­ˆûdZ¬@­ˆýp£× +@4m¥œàv@4mIQ‚©“@2?|í‘h@2g8}¿@2Ðå`A‰@2Ä›¥ãT@1³&Á½¥@1°ÞÒˆÎp@1³&Á½¥@1°-à @1³&Á½¥@1±‚©“ á?|öOÿÝ?‘‘Ç`[?’måGSžq?5~pY5?’[9ƒÍ,?‘£.'É?|öOÿÝ?”A}ý?‘ŽütÅÒ(?’ü#q\-v?’…4Ü.?‘Qïʾ?‚á²Olºü?µœ7}?ƒ´],m=?ƒ¼9XNÄu?ˆ©{2¡Î?Š*ÊÔQãú@@@@@(@ ?ð?ð?ð?ð?ð?ð?@pó ?E 'Àð?MìfMè‘?=Á]D¾Þº@¯šíc¨@­ˆýBZ=Ú?lÞ#ÈÚú—?^‚k=“6Ú?å§#ZNÄÉ?Æ …êÿ¦@Ÿf¢Ê@@@®\(õÃ@®-V@®\(õÃ@® +=p¥@®\(õÃ@®škP°@®\(õÃ@®Ûô‡ü@®\(õÃ@®}Vlô@®\(õÃ@®:)Çy@¥#Ÿ¾vÈ´@¥#¡$Ý/@¥#Ÿ¾vÈ´@¥#²:)Çz@¥#Ÿ¾vÈ´@¥#¦s×Ý@¥#Ÿ¾vÈ´@¥#¼žì¿²@¥#Ÿ¾vÈ´@¥#—süQ@¥#Ÿ¾vÈ´@¥#žÑ·@5‘|ÚQ@5ŒVÕϪÍ@1î5?|í‘@1Ò¶®}Vm@1PA‰7KÇ@14?åÉ@0°–»˜Çã@0¨“t¼j@0°–»˜Çã@0žp:û~‘@0°–»˜Çã@0—škP°ó?|öOÿÝ?¥|»5zÆ?™¬þ.OÀ…?“ׂa†Üü?g;+³ûu?£YîLUñ?|öOÿÝ?«éé¨Íyù?±]×öÂ"?ªå…Þøå?¥Á޾ƒ¢z?¶6‚/÷?‚§W®ê ?•è­¸‡? H6¤„?‘ñZa7Þ?1 –R¹ù?Æa]•o¾è@@@@@,@,?ð?ð?ð?ð?ð?ð?7Ð^à?*>‚à?PŽpö Ÿ?l=3¯Ú³ä@®ÏøìŠ@¥#¡nNl´?gÈ£5b“?Ýu6Λ?Ö…¸Ž6Ä6?óíòœ¿Šˆ@Ÿ_Cw©<%@@­æ§l‹C–@­æ±&éxÔ@­æ§l‹C–@­æ© 'RT@­æ§l‹C–@­æ«xFÜ@­æ§l‹C–@­æ¬L˜^@­æ§l‹C–@­æ©îËû@­æ§l‹C–@­æ§Ë)`@§¼‰7KÇ@§¼nÙ‡,@§¼‰7KÇ@§¼ƒ{J#:@§¼‰7KÇ@§¼€ qv@§¼‰7KÇ@§¼HË’@§¼‰7KÇ@§¼€N¤¨Á@§¼‰7KÇ@§¼€A‰7M@7IÎ_oÒ@7éxÔýô@2 +^5?|í@2 á°‰ '@1©Û"Ðå`@1¨Ë’:*@1 ù kº@1$Ý/@1 ù kº@1ð¸»@1 ù kº@1lô!.?£È‰·akû?:LÓá +í?“u*y?ØTnçE?‘¾%î +ã?‘®¬nÒMê?³Hß_`?’7Îf¬ps?‘†£„Â?°‹Œ÷€?ñ«Ý„ Õ?‘¿¤üî¾Ö?Øà‡›yºã?)‰€Zw?ƒ´],m=?‚þ——³§ø?‡…¤$Ó?ˆCns¥ @@@@@ @,?ð?ð?ð?ð?ð?ð¿`·Ø¬9?U7¯úé?(Çh=B¯?S5X#ˆSó@­æªbïå`@§¼XŽÊî??—~Ø?d)ŽÌÇç£?t½§`ÞjÚ?Àkƒ«@0@ŸqIUêÈò@@¨ž#S÷ÎÙ@¨žùÛ"Ñ@¨ž#S÷ÎÙ@¨ž$Z¬@¨ž#S÷ÎÙ@¨ž#¯·é@¨ž#S÷ÎÙ@¨ž!–R½<@¨ž#S÷ÎÙ@¨ž#þ\‘Ñ@¨ž#S÷ÎÙ@¨ž!G®|@©3›¥ãSø@©3å`A‰@©3›¥ãSø@©3œ¬1'@©3›¥ãSø@©3”mÅÖ9@©3›¥ãSø@©3¤êJŒ@©3›¥ãSø@©3¡‰7KÇ@©3›¥ãSø@©3<64@8žHè§æ@8œL˜_@3µãS÷ÎÙ@3´!-w1@31‰7Kƨ@32 Iº^5@2æYJôðØ@2ãüPH@2æYJôðØ@2åF +¦L0@2æYJôðØ@2åF +¦L0?±>ÏÅósN?’°BÉô-?–ý3¾ZÀ’?—IW`g’?“>û{Ñø~?‘£.'É?µ”Zm?’eCŒO?šJ‘ÍÒÁ?™Š‰nca?–Y:ŸèJ?›ªU3Îp?£ešñS„‰?]ÒivLÿ?‹’Ú[ßõ?¨¡ûðf?qÂ' +Bœ?ŒC ãSG@@@@@*@?ð?ð?ð?ð?ð?ð?Mn9¿WV T?LbFÈBÜ?b„´VÆ@¨ž"'&«¨@©3 h½*Û?_oFË;?t›bÍ3ë?­r´Hï´ý?ÕQ¤%ÄõÉ@Ÿr¢[]à@@¡&7ÎÙ‡@¡&>YÛ–†@¡&7ÎÙ‡@¡&9êçÇ@¡&7ÎÙ‡@¡&8Ñ÷žt@¡&7ÎÙ‡@¡&8Öëæ†@¡&7ÎÙ‡@¡&71Å@¡&7ÎÙ‡@¡&5É%Ëf@«»Ù‡+@«» ×úP@«»Ù‡+@«»©Î;@«»Ù‡+@«»S|]@«»Ù‡+@«»$÷‚@«»Ù‡+@«»¶4‹í@«»Ù‡+@«»¶f@8+µsê´@8/Ò„7Šü@2@ Ä›¥ã@2@YˆB-@0¤¼j~ùÛ@0¤üoìá@/Aò×t@/Žü 3W…@/Aò×t@/†Ÿe¾@/Aò×t@/²-U?‚Ú¡ËG7@¡ÇTýó¶F@¡Ç³Ð|„¶@¡ÇTýó¶FÁ.„€@¡ÇTýó¶FÁ.„€@¦ 7Kƨ@¦õÂ\@¦ 7Kƨ@¦Ð©*@¦ 7Kƨ@¦#ä%®æ@¦ 7Kƨ@¦À@¦ 7KƨÁ.„€@¦ 7KƨÁ.„€@6ÖšÔ,<Ÿ@6Ô‡ü¹#¢@4›¥ãSø@3æs×Ûô@3Ÿ²-V@3c{J#9Á@3p–»˜Çã@3%oi@3p–»˜ÇãÁ.„NÜC,¥@3p–»˜ÇãÁ.„NÜC,¥?}Ñ¿ž,?°UG +?¸Ñ³ÊÕ‚M?¨¸üÍø@8Iç@8Ù?’Óusÿ\Ã?¨€Sn\}?àÀM1#?Èà>½b×@8S@8û—?‚oÁÆÜ§ö?ª0½Uoý(?±¼Ë)–Öõ?¤¾¯S@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøø @®CŸ¾vÉ@®C”Ø×@®CŸ¾vÉ@®C)kvÚ@®CŸ¾vÉ@®C±G@®CŸ¾vÉ@®C––@@®CŸ¾vÉ@®C-°‡Q@®CŸ¾vÉ@®C¢cI@“šŸ¾vÉ@“šŸ¾vÊ@“šŸ¾vÉ@“š …Ì@“šŸ¾vÉ@“—¼w¯@“šŸ¾vÉ@“˜’éãÛ@“šŸ¾vÉ@“—;A@“šŸ¾vÉ@“™uT"\@5­¥œàv@5¬XãR¾v@1° Ä›¦@1Áí_‚Ÿs@0]V”@0\ßNhZ=@0:Ô,<ží@09ÚŽUuö@0:Ô,<ží@09ÖúŒÎî@0:Ô,<ží@09ßÉ'º?|¬Æ Væ?7Ò×8?‘'«¿Wc»?‹¾\?¢­n?êNÕU?‘;%ú¿?}@T˜ÁÎ¥?’  A$¢?ˆ’?h¡?-õ$: Ÿ?éþv¿Sô?q¡Åç®­?‚“LÐÛ|?_è‚ ?‚Íz ¡(î?ƒ,Hýß X?†¹Ì*ýâú?†Ó3NóA@@$@*@@3@5?ð?ð?ð?ð?ð?ð¿ lƒ€¿0 ö—¤?7Gê#î¥>?!–uK«°@®C§r=@“™r-Ñå?WªÖЦ?ALÑ/$?¼Äÿ"?ŽâµbsîÐ@Ÿfñ Hâ@ @®cS÷ÎÙ@®c•%@®cS÷ÎÙ@®f§ï²@®cS÷ÎÙ@®aG®{@®cS÷ÎÙ@®b Iº^@®cS÷ÎÙ@®^ùÛ"Ñ@®cS÷ÎÙ@®[¥ãSø@¯ƒ•%@¯ˆ1&éz@¯ƒ•%@¯…¡ÊÀƒ@¯ƒ•%@¯†$Ý/@¯ƒ•%@¯†éxÔþ@¯ƒ•%@¯~vÈ´8@¯ƒ•%@¯ƒn—@7šÔ,<Ÿ@7µsê³h@2ã÷ÎÙ‡@2ãä%®æ2@1éÛ"Ðå`@1é‡+ @1«xFÜ^@1¬‘ÑN;Î@1«xFÜ^@1«¥ãS÷Ï@1«xFÜ^@1«jçÕfÐ?1·†Æjñ?ZÁ».œ?‘£Ä›è?‹û…†_?’°STðS?‘<ƒÜ_õ?‘â%ì˜ ä?’?Á• ñ:?’±ä?1ð'7éÃ?‘Uç·Býi?‘KÔ#•N ?›˜tgiê?ŒÂ§dß±?„„OW°ó?‚ù8 ±^?æšÔ,<ž?‡ã ËÄž@@@@@@?ð?ð?ð?ð?ð?ð¿U·ö È¿X¬ +Œ?7J nQ?P¦ÏmZ.š@®`C¢|î@¯„‡ÔÙo?Y§×@~¥?m‡²$û?ºF®uH?×b>šì•a@Ÿk +Z³)@@­ð£× +=@­ÚŸ¾vÊ@­ð£× +=@­ ¾BZîc@­ð£× +=@­ yè>B[@­ð£× +=@­ Sœ¾à@­ð£× +=@­ kàÞÒ‰@­ð£× +=@­ s÷ÎÙ@£ÇÒñ©ûç@£Ç×ÎÙ‡@£ÇÒñ©ûç@£Æ Dg8@£ÇÒñ©ûç@£Åæ?@£ÇÒñ©ûç@£Å­¸ºÇ@£ÇÒñ©ûç@£Å´ðØDÐ@£ÇÒñ©ûç@£Å¿—$tT@7àØDЩ@7Ö”FsØ@5n5?|í‘@4oiDg8@5²-V@3p[À6ã@5mÅÖ8†@2üVÕϪÎ@5mÅÖ8†@2÷ +=p£Ø@5mÅÖ8†@2ü£n.²?…ÅBðrç?Ëï¦ß]]©?¹Z{úf?‘öJî¯Ê®?¶‹•V•?²0 ï?š•§q!U?º_*_™'»?ÀHÖö’”?“Ôð,äÁ?©|¥ÔÜI +?¥*Ÿê?aäŽ +Ø? ÿ"èœM*?¡*æª\ù?”ûÅìÆÅ?š‘ÝÒcô? ¯Ýù5@@@@@,@*?ð?ð?ð?ð?ð?ð¿Øº±Å+è¿Á\N<à?±!su-?ªâÀ\‰ô@­ ŸKj1û@£Æebd¡?ÏWd~¯Ým?ÅFÆ ÛV@‡î¯`vÌé@q˜fyEå@ŸfHîÓ}@@¢õz›ð¨@¢õ?‘![ì$?‘«†PP]Ë?|Ñb×¶@?’:ø³ØÙl?‘¤¨Ä\þá?‘:GŽò ?‘B{ $Ñ?‘_ÒÈrd+?‚ˆóºRÉ?6¸¼ì?…ÊF³?„g—3#?ˆì͆å?ˆõ S¾Ë@@&@,@,@9@:?ð?ð?ð?ð?ð?ð¿I É¿K\?4œéd!L??12éð[>Ñ@¢õ;&¬™ê@”Ü€›%"?Ty¾èÇQ?Qnœ?µ«]eÔ?­ûýD ¹"@ŸfªZ¡‹8@@¡þaÊÀƒÁ.„€@¡þaÊÀƒ@¡þa‰7KÇ@¡þaÊÀƒ@¡þb Iº^@¡þaÊÀƒ@¡þIÔ•+@¡þaÊÀƒ@¡þqë…¸@¡þaÊÀƒÁ.„€@¯V‡+ Á.„€@¯V‡+ @¯Z…‡“Þ@¯V‡+ @¯}p£× @¯V‡+ @¯9õY³Ï@¯V‡+ @¯³t¼j~@¯V‡+ Á.„€@9D¯O „MÁ.„>¤µÜÆ@4”›¥ãSø@4›¬q ²–@3â-V@3ÞzáG®@3½cˆe”°@3Ƶ '¼@3½cˆe”°@3–R½<6@3½cˆe”°Á.„NÜC,¥@8J¨?¢“*Uä?‘ŸÇSñ?¡+ÇÍÑjÝ?•³™»7…@8Ù@8J¨?™3Ÿ9?“Z—H|:?©­Á –¹‹?©K+Gq)Ý@8û—@8p÷?7'în‹K?“>û{Ñø~?®8z™át?›°Ô¤A]@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøø@­Á7KƧð@­Á6“u@­Á7KƧð@­Á64ê@­Á7KƧð@­Á5Ž!–S@­Á7KƧð@­Á8­«ŸU@­Á7KƧð@­Á7Xâ@­Á7KƧð@­Á1Ä2ÊX@£„¯Ÿ¾w@£„­V@£„¯Ÿ¾w@£„¯O „L@£„¯Ÿ¾w@£„¯iDg8@£„¯Ÿ¾w@£„½}¿H@£„¯Ÿ¾w@£„²{²þÅ@£„¯Ÿ¾w@£„·KƧð@82ÃÉîËû@8hÛ‹¬@2ðÄ›¥ãT@2ê¦L/ƒ{@2†“t¼@2}/Ÿ¾w@1®_oÒ @1¢Ðå`AŠ@1®_oÒ @1¢œwškQ@1®_oÒ @1¢×sü?„F/·ÿP5?“ò²nqV?“ï~í"?›î ó4°„?˜ +0˜ggk?—À °Ø§ ?µ”Zm?’áÄïÃõ?– íÇyz?¡çìh±J¼?–%¥ê3–? C˜.NTÃ?¥J´TACG?‘ÌAzÁý?† + Ðló]?…J]j?€=P|?Œ¸ðËb@@@@@$@(?ð?ð?ð?ð?ð?ð¿5’%Öà¿<~Ýå?C Nþ_.­?iÐ4‹@­Á5,|Œ(@£„µÖá³ð?j{άæÀ?{r·_T÷ô?Âݤê¦?Ô~g<‚@ŸpubŠ[Ì@@«7„›¥ãT@«7„›¥ãT@«7„›¥ãT@«7ƒþ\‘Ñ@«7„›¥ãT@«7ˆŒç°@«7„›¥ãT@«7†$Ý/@«7„›¥ãT@«7„›¥ãU@«7„›¥ãT@«7‰7KÇ@®|¼í‘hs@®|ºáG®@®|¼í‘hs@®|¾ùÛ"Ò@®|¼í‘hs@®|¾š@®|¼í‘hs@®|¼í‘ht@®|¼í‘hs@®|½<64@®|¼í‘hs@®|¾«6z@6Œ]cˆe”@6¿HË’@3ÎÙ‡+@31Å@26§ï²-@28K]Ìcñ@2‚@·€5@2?åÉ@2‚@·€5@2œwškQ@2‚@·€5@2{²þÅn?‚á²Olºü?/³)sšÌ?‘K]Ã4?Œj6_?‘¯GàBm?‘‚ÊŸû©?€‚ñêã ?’u¦ieõ–?ŽËÜ¿€?Ùט³ô?’íßš?‘C å;Ã?‚ù…žÄ`w?îŠõ ?‚¸“Îè ø?„À"aËô??€=P|?‰Ü)@Jq«@@@@@@ ?ð?ð?ð?ð?ð?ð¿3À4m ?Gn—?=rLvòù?®5òÛÌ@«7„V­TÙ@®|¼‹àß?]VHâ}?3a·Ã-Aé?ÂZ€OŒ}?oìâΑޘ@Ÿh+!ò£ç@@¬g× +=p¤@¬gÚ^5?}@¬g× +=p¤@¬gÙõY³Ð@¬g× +=p¤@¬gܹ#¢œ@¬g× +=p¤@¬gÖâëC@¬g× +=p¤@¬gÕ?|í@¬g× +=p¤@¬gÖ+jçÕ@ª“%ãS÷Ï@ª“ Ä›¥ã@ª“%ãS÷Ï@ª“1‚©“ @ª“%ãS÷Ï@ª“-quŽ@ª“%ãS÷Ï@ª“,Ùè>B@ª“%ãS÷Ï@ª“-jO@ª“%ãS÷Ï@ª“*#9Àì@6Ô xFÜ@6ÎùÛ"Ðæ@2£÷ÎÙ‡@2(Œç¯@1ñ‰7Kƨ@1ìj~ùÛ#@1B‚@·€5@1@««Ò +î?„Þþï Š?x¡uõ)å¹?ñX’º/?Ó‘ë±íò@Ÿtçé)«o@@¤4oŸ¾w@¤4qI4 s@¤4oŸ¾w@¤4£êÛ[o@¤4oŸ¾w@¤4š39H~@¤4oŸ¾w@¤4`y©x@¤4oŸ¾w@¤4uó}$¾@¤4oŸ¾w@¤4w§Ç c@˜Û¸Që…@˜Û±I¶¾@˜Û¸Që…@˜Ü)G¥&†@˜Û¸Që…@˜Ûõ”œ¡@˜Û¸Që…@˜ÛÊ~³¬@˜Û¸Që…@˜Û“<£{'@˜Û¸Që…@˜Û©þMhÊ@8Î쿱[W@8ÍźÕñê@3Ô›¥ãSø@3ªfo… @36§ï²-@3•ç²]@2YŒ~($ @2l—5œ~@2YŒ~($ @2mþ[auž@2YŒ~($ @2m¯?úx.?§›0µæ[Æ?¤¿±¿º]?ž™b…}ã?—dzé™?—.†¢­€?Ÿá ë&¦? [ó ðP~?¨!˜¨N¿d? VŠwU?”Ê£¥â7?—.¬×®ò3?—i¨§äWõ?»Ðàƒþ;z?Ÿ¬„Îab? ”†›]M-?‡­ù…Õº¨?™gyéá?’¼ÔûþX3@@$@&@*@9@6?ð?ð?ð?ð?ð?ð?móã¨v¿g£#É6€?rלå-;N?r1`ØþÔ@¤4l¤/u”@˜Û°˜Wsê?ŠCÍ‹/ñŽ?‹µ÷&¹?÷ÆÃMˆ}_@WbàF‡@Ÿn9®ü¹Ž@@ ê8Që…@ ê8bMÓ@ ê8Që…@ ê8øyVš@ ê8Që…@ ê8ÝhFW@ ê8Që…@ ê9¾L×I@ ê8Që…@ ê7¶4ÚÓ@ ê8Që…@ ê7eýŠÛ@«wV“u@«wUϪ͟@«wV“u@«wU¾î) @«wV“u@«wT×frH@«wV“u@«wV sÊy@«wV“u@«wU@TZö@«wV“u@«wU" ½@4ÉÎ_oÒ@4É…ðoiD@0)‡+ @0) }µúÐ@/íOß;dZ@/í÷¤ç«u@.(Û‹¬q @.(PÊAõ±@.(Û‹¬q @.(´IôÂ@.(Û‹¬q @.(A µ‹h?|Ñb×¶@?âxú•et?‘9Q&š?‹µgË„ ?ðÌÇßgé?µô£¹u?|çµB &€?’'3 +k?ºÏx†ãŒ?4ñÐkm?ÕB¯Nl?IX§uj?‚póaÏß?ŒèÕƒ¦ÒÐ?‚±uÇØ"7?ƒ +»’¢ïq?†’¸%9§G?†”3ËeBp@@,@,@(@5@3?ð?ð?ð?ð?ð?ð¾à7¿øžq?1S0%þ +?€9\e|@ ê88›:Ì@«wU•L¢?QAg%e\?5m;¦‡ÿ”?°@î5JË?w÷V®‚Ú@Ÿg=Þ‚@@ª/»dZ¬@ª/ºáG®@ª/»dZ¬@ª/¹Û"Ðä@ª/»dZ¬@ª/¿;dZ@ª/»dZ¬@ª/½Ùb¸@ª/»dZ¬@ª/¹XbM@ª/»dZ¬@ª/»¥ãS÷@©tÖ‡+ @©tÖ‡+ @©tÖ‡+ @©tÕY³Ð|@©tÖ‡+ @©tÙrGE9@©tÖ‡+ @©t×$tS@©tÖ‡+ @©tÕöý!þ@©tÖ‡+ @©tÕÂ\)@4įO „M@4ÄêJŒL@2Ê^5?|í@2Éûçl‹D@26§ï²-@26¸ºÇ@1Ì¿±[W?@1ÌVÕϪÎ@1Ì¿±[W?@1Í:’£@1Ì¿±[W?@1̞쿱\?}Ñ¿ž,?‘u:|ñ²¨?‘RsÈW?Ž,OêK˜u?‘èÒ§ˆ„Å?’Æ÷Xê†?|¬Çëý ?”‡r¦5MS?ÔCXsò?‘aYZ†«q?‘ýuãá$6?‘¿¤üî¾Ö?ƒ<Õp?Ž>ž¬ˆ?…™ï ufÞ?…bv{3dZ?‡gϵ’õ?‰w¿˜Í¶ª@@@@@,@*?ð?ð?ð?ð?ð?ð? —sÂ`¿ªýZÀ?>z…¦Z«?—CN*@ª/»X½æÖ@©tÖ].â+?]üëoòb?>ÜüñµZ?ŰT&Rùú?†ííS›óÿ@Ÿfz¼4æ.@@°Ÿ¾wÁ.„€@°Ÿ¾w@°trf@°Ÿ¾w@°MHhÖ@°Ÿ¾w@°•7Â@°Ÿ¾w@°lU/@°Ÿ¾w@°@%; @—FH´9XÁ.„€@—FH´9X@—FIE;s@—FH´9X@—FJÌŠ¹°@—FH´9X@—FH½¸@—FH´9X@—FIvGú@—FH´9X@—FIQ‚©“@3›¹Œ~($Á.„>¤µÜÆ@/ÍV“@/ÌóÒ+~%@/IxÔýó¶@/I¼ÕÒ"k@-#¼ÓZ…ˆ@-#rÐdR@-#¼ÓZ…ˆ@-#n.±Ä3@-#¼ÓZ…ˆ@-#ÉîËû@8J¨?ÂqCÜ ‰?‘((³ Dé?‹¦p¤?íÖéðw?¸«0íN@8J¨?’úC™l?ƒB–Vx?-ôö²-?Ôé.$¨‰?MmUѽ@8p÷?Œ³$-a5[?‚†µ”g¬?‚ãV*ÈÒ?†“D#ã?†ŽÉúª@,@(@ @;@:?ð?ð?ð?ð?ðøøøøøøøøøøøø@¤¡yÛ"Ðå@¤¡|¬1'@¤¡yÛ"Ðå@¤¡ƒ•&@¤¡yÛ"Ðå@¤¡f?@¤¡yÛ"Ðå@¤¡m\ú¬Ú@¤¡yÛ"Ðå@¤¡{dZ¬@¤¡yÛ"Ðå@¤¡t!-x@£)áÊÀƒ@£)·Oß;@£)áÊÀƒ@£)å`A‰6@£)áÊÀƒ@£)ã,¥zx@£)áÊÀƒ@£)æ +¦L0@£)áÊÀƒ@£)ÞùÛ"Ñ@£)áÊÀƒ@£)ÚáG®@9T xFÜ@9iè>BZî@4k¥ãS÷Ï@4t?åÉ@3—ï²-@3™³Ð|„¶@3œàu÷@3 Û"Ðå`@3œàu÷@3ê³g ù@3œàu÷@3Œ~($ ?Ç/q*q:?“”üU§<­?’•íX~4w?¡OÍÉ´Ž?§ö̺Œ ‘?¡AœÏŸ¦?ÀGÚCx4¾?—j2Uíï?‘C\ºÕ¶? Ñ¡b£?¾?Ÿ‹*¾F°?¨)P›?ª¹0ÇåÄ?™Uîœsú?Š[¦Råb?“ÍÁ!÷G?8Ï£§?¢XY-±[®@@@@@*@*?ð?ð?ð?ð?ð?ð?bŒŸö@?zÄà?hùÜb>J?uåÌ[>u@¤¡rjoŸ@£)ßáB°?{‰~vCúP?…ÓJ,_¨?È?v»“L?â >¶Fwv@Ÿq*˜Sn¾@@¨n\(õÂ@¨n\j~ùÛ@¨n\(õÂ@¨n\wškQ@¨n\(õÂ@¨n\¬1'@¨n\(õÂ@¨n\„µÜÆ@¨n\(õÂ@¨n[quŽ"@¨n\(õÂ@¨n\C,¥z@§ìl‹C•@§ìlÌÌÌÍ@§ìl‹C•@§ìm„M<@§ìl‹C•@§ìnzáI@§ìl‹C•@§ìl篷@§ìl‹C•@§ìmV@§ìl‹C•@§ìlcñA@2÷â‚@·€@2÷Ûô‡ü¹@0c÷ÎÙ‡@0d“t¼j@0$¼j~ùÛ@0%m\ú¬Ú@.åÉä@.€[À6â@.åÉä@.€A‰7KÇ@.åÉä@.€[À6ã?É^³Dw'?õ¹Ëh?‘WßÈDö@?‹¬àÌ’Ç?‘Dj?¾ƒìÈÁ?ÐbV‡,?’#maЀ?üÓqÔN‰?0ÜN :s?Ö§­îQD?Sñƒ´V.?€g‹)ØêÀ?ŒÖ +ÄȲ?‚ÂÌ]æ?ƒ=rµE=?†ÃÛSPã?†½ª»—@@@@@*@&?ð?ð?ð?ð?ð?ð¿'Ôe„ð¿*ZÜp?3dYa3ß?#ûºÝ¼h@¨n\" Þ’@§ìlÌäLD?B­ +SÒ¦Ù?2êl‰ÉŽ?Q4#ü?_a9$”;@Ÿs‘š‘u@@¢-‡+ @¢-‡+ @¢-‡+ @¢-‡+ @¢-‡+ @¢-Çâ‚A@¢-‡+ @¢-âëC@¢-‡+ @¢-R½<6@¢-‡+ @¢-Ž!–S@¬8¡G®{@¬8¡‰7KÈ@¬8¡G®{@¬8¡£n.²@¬8¡G®{@¬8¡ò×s@¬8¡G®{@¬8 Ä›¥ã@¬8¡G®{@¬8¢&€J@¬8¡G®{@¬8¢e+Ô@3:qÞi­C@3:W§†Â&@.®V“t@.®}Vlô@.‘&éxÔþ@.ÿ—$tT@--úCþ\’@-.!–R½=@--úCþ\’@-._oÒ @--úCþ\’@--úCþ\’?|¬Çëý ?¾¢`ƒ?‘7[ä­?‹¬àÌ’Ç?ôê÷º»â?×°ë*–w?|öOÿÝ?’j%ÓRa?«'Q™µ?-õI¸`K?â2„&ÿh?e¾DQ„Q?‚q6tNø6?Œ¯þuõí?‚uÞ@>N ?‚â‡~ûÉ\?†’Õaì+’?†l&þ@@@@@*@,?ð?ð?ð?ð?ð?ð¿ß»—à?~0@?'Ñœðõ?!OÙÇ_.@¢-`î ¡@¬8¡¤œß–?<þæøÿ?AžƒÏ†ƒÖ?†ñ$!÷9?#|ßд@Ÿfõß¿@@Ÿ$ Oß;dÁ.„€@Ÿ$ Oß;dÁ.„€@Ÿ$ Oß;dÁ.„€@Ÿ$ Oß;dÁ.„€@Ÿ$ Oß;dÁ.„€@Ÿ$ Oß;dÁ.„€@—m49XbÁ.„€@—m49XbÁ.„€@—m49XbÁ.„€@—m49XbÁ.„€@—m49XbÁ.„€@—m49XbÁ.„€@8D¯O „MÁ.„>¤µÜÆ@3ðÄ›¥ãTÁ.„M‰ûçm@3b-VÁ.„QnÙ‡@2J0U2a|Á.„NÜC,¥@2J0U2a|Á.„NÜC,¥@2J0U2a|Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø@¥.µ?|í‘Á.„€@¥.µ?|í‘@¥.¢\(ö@¥.µ?|í‘@¥.¯iDg8@¥.µ?|í‘@¥.¿ÿÿÿÿ@¥.µ?|í‘Á.„€@¥.µ?|í‘Á.„€@œÑ0 Ä›¦Á.„€@œÑ0 Ä›¦@œÑdŽŠqÞ@œÑ0 Ä›¦@œÑGË)_@œÑ0 Ä›¦@œÑ_ö”F@œÑ0 Ä›¦Á.„€@œÑ0 Ä›¦Á.„€@1àØDЩÁ.„>¤µÜÆ@0.5?|í‘@0Që…¸@/ÄZ¬1@/¯²-V@/ +#9Àëî@.Óg ù l@/ +#9ÀëîÁ.„NÜC,¥@/ +#9ÀëîÁ.„NÜC,¥@8 +Näy?©ˆ3Ú"Š?™çÙô½îé?Hžyq@8Iç@8Ù@82rê? ¬q¶™?˜áâ)(?¡–BÝŽ4@8S@8û—@8L?i-ý-›…?‘¼Åâ<{?P Ž)k@8 Ø@8 Ø@@@?ð?ð?ðøøøøøøøøøøøø@®`“t¼@®`Z¬@®`“t¼@®`Â&€@®`“t¼@®`ñA \@®`“t¼@®`Щ*@®`“t¼@®`S÷ÎÙ@®`“t¼@®`e+Ó@¢á)ûçl‹@¢á)ûçl‹@¢á)ûçl‹@¢á*Ov@¢á)ûçl‹@¢á)Q‚©“@¢á)ûçl‹@¢á,VÕÏ«@¢á)ûçl‹@¢á)7Kƨ@¢á)ûçl‹@¢á-«ŸU›@3uS&Á¾@3u`A‰7L@1^Ù‡+@1_iDg8@1iÛ"Ðå`@1iº^5?}@0£ÉîËû@0£¼ÓZ…ˆ@0£ÉîËû@0¤¢3œ¿@0£ÉîËû@0¢ÞÑ·?|öOÿÝ?é¥3i£ó?‘âTÀÊS“?Œ<…ÓÆÝ?‘ §‡g¾?‘PÊÑ<Ýl?|¬Çëý ?’›ÈÖÝ?‘Ûcu%ç+?‘²)ò@a,?øóéM Ÿ?× ³¸ÑZ?‚q6tNø6?2ô]7?‚¯­Ù¤Á¶?ƒ*|š\/´?‡ã ËÄž?‡YÍ_@@@@@&@&?ð?ð?ð?ð?ð?ð¿3”[¦?=¶^¨ ?+Yƒ›×?9æØt÷|@®`Ø>º@¢á*õWˆ?JÔ¹Ê*j¯?ZxÈ¿h·?£+dRÖ·?Á”ºoQÅ‹@ŸfÊ Ÿ?S@@¨‘o²-@¨‘nzáH@¨‘o²-@¨‘q©ûçl@¨‘o²-@¨‘hÎp:û@¨‘o²-@¨‘h§æœ@¨‘o²-@¨‘eðoiD@¨‘o²-@¨‘f€IR@¢¯E¡ÊÀƒ@¢¯Gï²-@¢¯E¡ÊÀƒ@¢¯B©“ á@¢¯E¡ÊÀƒ@¢¯<„µÜÆ@¢¯E¡ÊÀƒ@¢¯=ó¶E¢@¢¯E¡ÊÀƒ@¢¯Cˆe”¯@¢¯E¡ÊÀƒ@¢¯C9Àëî@6(†YJôñ@6!TÉ…ðo@2ÞÙ‡+@2Ý}¿HË@2¾V“u@2¿ùrGE9@2 ù kº@2 0¾ í)@2 ù kº@2S&Â@2 ù kº@2KƧïž?|¬Çëý ?‘‹PƧ¢$?–ý3¾ZÀ’?Ž,OêK˜u?–¡©ÚåŠ?–EŽù±Ò?„F/·ÿP5?’ñ©ûçlŒ?–¾Oäë ?“ÅÒÏPÉä?—v>ª¸ ?š>[F»h?°#ÃIÓ¨&?“&•Z÷˜#?“„*0x)Æ?“ˆÃúžáÓ?“aÑ#?©œÌ ãPÐ@@@@@,@*?ð?ð?ð?ð?ð?ð¿]ŽÍM$¿XÀá*?,@£Wa¿?Pµak;@¨‘jH.Èg@¢¯DNQ‹d?K*(ø¾ ”?oõŠÔOã?ž¡ðÌô2K?Ú@fpŸÈŸ@Ÿf +Aès•@ @¢™2-VÁ.„€@¢™2-V@¢™*~ùÛ#@¢™2-V@¢™8üPH@¢™2-V@¢™'ÈK]Ì@¢™2-V@¢™(Œç°@¢™2-V@¢™,1&é@¡záG®Á.„€@¡záG®@¡·éù@¡záG®@¡óMj@¡záG®@¡ Ô•@¡záG®@¡ŽŠqÞ@¡záG®@¡ +qÞi­@97â‚@·€Á.„>¤µÜÆ@5 Ä›¥ã@4÷´¢3œ@4A‰7KÇ@3ýquŽ"@3‡ ù kº@3t9XbN@3‡ ù kº@3s× +=p¤@3‡ ù kº@3wÎÙ‡+@8J¨?˜¶ÚæÁ€?©q-*³7?”ÑD²Û? `F§C:?¢ÀÂêVAg@8J¨?–XSüra1?œT¹o¿‹õ?Ò–‚h±n?¡7‚c/ç?¨>/ÀËÄÊ@8p÷?¢ŠÕfÐÏ1?¶j“êÜài?©”!ŽÓâï?žþôרì? ¾Á{þÆ%@@@@*@(?ð?ð?ð?ð?ðøøøøøøøøøøøø!@¥ù‡+ @¥øöªlŸ˜@¥ù‡+ @¥ùºÇË@¥ù‡+ @¥ùÁ½¥@¥ù‡+ @¥ù*™1@¥ù‡+ @¥ùðØDÐ@¥ù‡+ @¥ù‡ü¹$@CzáG®@C˜q^@CzáG®@Cš@CzáG®@COß:@CzáG®@C)ûçlŠ@CzáG®@C:)Çy¦@CzáG®@C$÷eýŒ@8Î쿱[W@8Û&-r»Ø@4#÷ÎÙ‡@4!©ûçl‹@3´“t¼j@3´Ð©*0@2‚@·€5@2Åœàu÷@2‚@·€5@2Ç1Å‚@2‚@·€5@2À:û~‘?z›Mß ?™D•ö¬ˆ? ±ubÊÅ5?{¾“úy6?’õ¡EE?“*“žj±»?¤Œã__`?œ_lWF_‚?¡„æZ;¥?–…%j»a?ŸNg xŸ?’ Óº^?†VÊ´}Þç?›’qvš°“?¢GûBå?ŒžVE’D?“‹Ü‚NÐ.?”"‚Ò#@@@@@,@?ð?ð?ð?ð?ð?ð?s½®8-À?a^ØÈE?hmgÖÐÅ?dþÓWa@¥ùªÃl@C%ýÓ?…‘›ö?€l_w5Ê?ú9&“T`Ä?éfxU¾Ð@Ÿo d˜€¢@"@£daG®{@£db Iº^@£daG®{@£dh´9X@£daG®{@£dj³g ú@£daG®{@£dTýó¶F@£daG®{@£dUŽ!–S@£daG®{@£dZ¬Ùè>@§uÔýó¶F@§uÔ¼j~ú@§uÔýó¶F@§u× +=p¤@§uÔýó¶F@§uǓݗö@§uÔýó¶F@§u¿½@§uÔýó¶F@§uÃ× +=r@§uÔýó¶F@§uÁ–R½<@8¨†YJôñ@8°ØDЩ@3ý‘hr° @4n—P@3“t¼@3쿱[W@2‚@·€5@2ÓñA [À@2‚@·€5@2ÍÈK]Ì@2‚@·€5@2Ƨï².?¯oÝ ÷6}?–:ð»}TÇ?—go]Þ?Hžyq?•õþèüäú?™S:Ъ;5?°:-%šÀ?—¿ºÖ÷?™luì<±È?”J6bº?— {ޏ`z?›vûËSÆÒ?§%XÕ’?’®ã‘\’?=Ÿo +F?–ì k.÷A?Ž•w “w„?šÙ,yf’Y@@@@@*@,?ð?ð?ð?ð?ð?ð?6l[äH¿Q䇔?_$ˆ„Í?dÒo54@£dV¾Žµü@§uÂ,§?q9ü.ç_?w›d™4c|?ÑÂZÖ‘0?Ú +]ò”›°@Ÿoíû¹C@#@¯ƒ9Û"Ðå@¯ƒ¼j~ú@¯ƒ9Û"Ðå@¯ƒ4¢3œ@¯ƒ9Û"Ðå@¯ƒA-w1@¯ƒ9Û"Ðå@¯ƒ4!-w@¯ƒ9Û"Ðå@¯ƒ<ÓZ…‡@¯ƒ9Û"Ðå@¯ƒ>Ov_Ú@­.záH@­E`A‰8@­.záH@­2° Ä›@­.záH@­(Îp:ü@­.záH@­<¬1'@­.záH@­0 Ä›§@­.záH@­+xFÝ@8í¥œàv@8îi­BÃÊ@5Iº^5?@5° Ä›¦@4¬j~ùÛ#@4¤,<žìÀ@4 ¿±[W?@3õµsê³h@4 ¿±[W?@44mÅÖ9@4 ¿±[W?@4T`ªdÄ?¡EÉ@Ú?žK›æ¶'B?“mî–‚Žr?¡Ëæ%ðÇ?£Ï½Át/9?ž C@L(?„F/·ÿP5?“6SÇ{Ó?–ˆkCünL?§×#Vz?¡Í‹>¬?¤†k ßð?«ú—ÇZà?à í¡h„?ŠÌ÷7Õ}?™Ø^FC}?•°QŸ?]Í?°4\ɵ@@@@@*@&?ð?ð?ð?ð?ð?ð?xÛ‚ö€¿tý´e;€?Yö9id•?>øù›¬@¯ƒ.%€tì@­8ñôT?wÃlÄç?bcÏÎö-?Íæ!Þ?§8ôêýÚ@ŸjLÖ–B×@$@¨#‰º^5?Á.„€@¨#‰º^5?Á.„€@¨#‰º^5?Á.„€@¨#‰º^5?Á.„€@¨#‰º^5?Á.„€@¨#‰º^5?@¨$–”Fsƒ@£KC•Á.„€@£KC•Á.„€@£KC•Á.„€@£KC•Á.„€@£KC•Á.„€@£KC•@£f§ï²@9VšÔ,<ŸÁ.„>¤µÜÆ@4óS÷ÎÙÁ.„M‰ûçm@4~ùÛ"ÑÁ.„QnÙ‡@3¦YJôðØÁ.„NÜC,¥@3¦YJôðØÁ.„NÜC,¥@3¦YJôðØ@4­BÃÉï@8J¨@8#˜@8¾:@8 >+@8Iç?Êòµõô‡]@8J¨@8Î÷@8i§@8Å@8S?Ìbû—ê*ç@8p÷@8 * @8p÷@8¶@8 Ø?ÂHucLú@&?ðøøøøøøøøøøøø%@­þ}ó¶E¢Á.„€@­þ}ó¶E¢Á.„€@­þ}ó¶E¢Á.„€@­þ}ó¶E¢Á.„€@­þ}ó¶E¢Á.„€@­þ}ó¶E¢Á.„€@˜Ñë…¸Á.„€@˜Ñë…¸Á.„€@˜Ñë…¸Á.„€@˜Ñë…¸Á.„€@˜Ñë…¸Á.„€@˜Ñë…¸Á.„€@8–šÔ,<ŸÁ.„>¤µÜÆ@3ã÷ÎÙ‡Á.„M‰ûçm@2Õ`A‰7LÁ.„QnÙ‡@2ž«6z‘Á.„NÜC,¥@2ž«6z‘Á.„NÜC,¥@2ž«6z‘Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø&@®Ùz^5?}@®ÙlIº^5@®Ùz^5?}@®ÙÈõÂ[@®Ùz^5?}@®ÙÜj~ùÛ@®Ùz^5?}@®ÙŒL˜_@®Ùz^5?}@®Ù…¸Që@®Ùz^5?}@®ØÔFsØ@ª¢Òñ©ü@ª¢\j~ùÜ@ª¢Òñ©ü@ª¢Å¡ÊÀƒ@ª¢Òñ©ü@ª¢²ÊW§‡@ª¢Òñ©ü@ª¢½¥œà@ª¢Òñ©ü@ª¢¼ÚQ@ª¢Òñ©ü@ª¢lVÕÏ«@9h†YJôñ@9Y#¢œwš@4Ê^5?|í@4ãÝ—ö+k@4“t¼@4 P°ò{³@3…œàu÷@3‚h Ô•@3…œàu÷@3’ÃÉîËû@3…œàu÷@35Â\(ö?Çpíë"¬7?¤÷¢qþó?©3}ÛCºß?© Êºd9.?±ä*í5>?ºD1 `?®k|j“ʨ?²ìÊfä“?³ƒ$G"»ª?lná<9?­I€phùË?Àþ"µ–¥v?£˜Œo7\Ì?­ÀÎJÒfA?µ†wØGò?™Gs#4Iú?¬*fÒdº«?¾C3`ow¥@@@@@(@"?ð?ð?ð?ð?ð?ð¿¡EÄáÐ?•M nò@? œfO¶m?&÷Î@D@®ÙxGG:@ª¢¶E¥?±‹Á”ü0U?£þ\7Y@$úà@ƒòÃŽ¿Ð@Ÿm‚ê[¤@'@¬«6z@8~ƒä%®æ@5 Ä›¥ãÁ.„M‰ûçm@4'KƧïžÁ.„QnÙ‡@3cÉîËûÁ.„NÜC,¥@3cÉîËûÁ.„NÜC,¥@3cÉîËûÁ.„NÜC,¥?ð°–Ž]@8#˜@8¾:@8 >+@8Iç@8Ù?ð°–Ž]@8Î÷@8i§@8Å@8S@8û—?ð*wjs—@8 * @8p÷@8¶@8 Ø@8 Ø?ð?ðøøøøøøøøøøøø)@§Ù1&éxÕ@§Ù1hr°"@§Ù1&éxÕ@§Ù1Å@§Ù1&éxÕ@§Ù2n—P@§Ù1&éxÕ@§Ù1Ä2ÊY@§Ù1&éxÕ@§Ù0–»˜È@§Ù1&éxÕ@§Ù0¾ í)@§¹›¥ãT@§¹Ý/¡@§¹›¥ãT@§¹¸Qì@§¹›¥ãT@§¹8ï4×@§¹›¥ãT@§¹8ï4Ø@§¹›¥ãT@§¹+ÓÃa@§¹›¥ãT@§¹o@2쿱[X@2æ1ø @-\j~ùÛ"@-\wškP±@-]ó¶E¡Ë@-^Ov_Ø®@+̲•éá±@+̲•éá±@+̲•éá±@+Ì¿±[W?@+̲•éá±@+Ì‹C•?É^³Dw'?°çR;?‘=?ùKh?‹¹GüÞõ?÷6r In?À­Õß}º?ÐbV‡,?’ +‰¸Ì?‘N÷J’?6) }’ë?ÚÌA B{?_Ø~tñ?€cPßQª?Œ°¶.Ä+Æ?‚yî8Á$?‚éXëLL÷?†’Õaì+’?†½ª»—@@@@@,@,?ð?ð?ð?ð?ð?ð¿?€ûVœ¿Êû¥À?)ÅÆÿôj>üŽ?ù•"@§Ù1û¯£@§¹%NÇý?8ʘ߯P? ¨·Ñ?n“_H‚?é¿|8­@Ÿsœ32v@*@¨R“t¼@¨RÇ_…@¨R“t¼Á.„€@¨R“t¼Á.„€@¨R“t¼Á.„€@¨R“t¼Á.„€@¨R“t¼Á.„€@šÃí‘hr°@šÃéûçlŠ@šÃí‘hr°Á.„€@šÃí‘hr°Á.„€@šÃí‘hr°Á.„€@šÃí‘hr°Á.„€@šÃí‘hr°Á.„€@8VšÔ,<Ÿ@8[AjZ C@40Ä›¥ãTÁ.„M‰ûçm@3±‰7KƨÁ.„QnÙ‡@2s&Á½¥Á.„NÜC,¥@2s&Á½¥Á.„NÜC,¥@2s&Á½¥Á.„NÜC,¥?¤ïŒ7娠@8#˜@8¾:@8 >+@8Iç@8Ù?‹!»¼ôï@8Î÷@8i§@8Å@8S@8û—?¬æçßÌiâ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø+@¡­Ö“u@¡­× +ã@¡­Ö“uÁ.„€@¡­Ö“uÁ.„€@¡­Ö“uÁ.„€@¡­Ö“uÁ.„€@¡­Ö“uÁ.„€@›¢èr° Å@›¢â€ù[C@›¢èr° ÅÁ.„€@›¢èr° ÅÁ.„€@›¢èr° ÅÁ.„€@›¢èr° ÅÁ.„€@›¢èr° ÅÁ.„€@6ý:’£@6ÿ—I0<¨@3+ IºÁ.„M‰ûçm@2§KƧïžÁ.„QnÙ‡@2 +0U2a|Á.„NÜC,¥@2 +0U2a|Á.„NÜC,¥@2 +0U2a|Á.„NÜC,¥?|¬Æ Væ@8#˜@8¾:@8 >+@8Iç@8Ù?e™”XWø@8Î÷@8i§@8Å@8S@8û—?•ß^$ŒÉû@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø,@§LÍOß;d@§LÐå`A‰@§LÍOß;d@§L× +=p¤@§LÍOß;d@§Lèr° Å@§LÍOß;d@§M Oß;d@§LÍOß;d@§LÒ×s@§LÍOß;d@§LÒ-V@¯u C•@¯uå`A‰@¯u C•@¯u•%@¯u C•@¯u º^5?@¯u C•@¯uß;dZ@¯u C•@¯týp£× +@¯u C•@¯uí‘hs@8p4mÅÖ8@8t,<žìÀ@5!hr° Ä@5=æšÔ,<@4K"Ðå`B@4aN;Í5¨@4p–»˜Çã@4¤µÜÆ?@4p–»˜Çã@4|²•éá±@4p–»˜Çã@4oÒòä?°{QBãï?ð}óßd?ð’FB:?ð_ŒB?¦ ÍÚMý,?“*“žj±»?‚á²Olºü?ð¢dx/?ð‡äR³s?ð‚àÓÁ?¬tPYÓz?L "¾?® 'ð %ö?ðfÁbÂô?ð*wjs—?ð,’Ú|‚?”¦”x£b?†‡+œC@?ð?ð?ð@@?ð?ð?ð?ð?ð?ð?.aö@?a/9š?Bz^öʉ?U™î0f¥±@§LÑæÝ2@¯ug´5Ö?ZóÃÔ?€ØVa?bõ?‹äYS”üÜ?ï±\ùU¸@Ÿrz2÷6\@-@¦/µÂ\)@¦/¶“v@¦/µÂ\)@¦/¶4ê@¦/µÂ\)@¦/¶Ov`@¦/µÂ\)@¦/¶‡+ @¦/µÂ\)@¦/´É…ðo@¦/µÂ\)@¦/³÷ÎÙ@£fX“t¼j@£fXÔýó¶@£fX“t¼j@£fX7´¢4@£fX“t¼j@£fW´¢3œ@£fX“t¼j@£fY‡+@£fX“t¼j@£fXDЩ@£fX“t¼j@£fWškP±@0Ç>«6z@0Ç>«6z@0 Iº^5@0ò×s@.›dZ¬@.›dZ¬@.åÉä@.¾vÈ´:@.åÉä@.Ø­«ŸV@.åÉä@.åÉä?É^³Dw'?é¥3i£ó?‘7[ä­?‹×lÇ…N9?‘Dj?Å{¿Ž<¹?ÐbV‡,?’7Îf¬ps?–ÐO(·Š?7枪y7?õ<úU?sxÙ/T?€bMÕky?ŒÐ¤Âÿê?‚‹¡8*ú?ƒ†+ Å?†špk Y?†©b/bJö@@@@@,@&?ð?ð?ð?ð?ð?ð¿R*Šö°¿DÁgÔF?"ÁÌ[¤þï? |oÐ[XÈ@¦/µ=Ø¢@£fXe…jÙ?2 á¢%­ë?/l#ÁÄ?_µWŸqŒ\?-m‡ŠßNì@Ÿs5ДÉ@.@¡}@ƒn˜@¡}@Ä›¥ã@¡}@ƒn˜@¡}<í‘hs@¡}@ƒn˜@¡};˜Çâ‚@¡}@ƒn˜@¡}B\(ö@¡}@ƒn˜@¡}@Ñ·Y@¡}@ƒn˜@¡}AÊÀƒ@«’« Iº@«’¶‡+ @«’« Iº@«’¯iDg8@«’« Iº@«’ªW§†Â@«’« Iº@«’«]Ìcñ@«’« Iº@«’­w1Å@«’« Iº@«’®—OÞ@7Ù*0U2b@7Ö¸ºÇ@3—+ Iº@3›µsê³@3)Û"Ðå`@3-à qv@2mÅÖ8†@2éá°‰ @2mÅÖ8†@2•*™1@2mÅÖ8†@2›=ÈL?óA[ØïF?•ßóV_Ü^?•|®6zj?$Ìj½BÙ?‘5ø gµÒ?“ d?”¼íÒh??—ò•kÕK2?•¶ÀA½ +;?‘.“¥?‘†óèJL\?’.8 +B?™¬<÷aý?–P¢k"?“„*0x)Æ?†3_¾ˆ?ˆëÅoë?‡Õ˜]–GÄ@@@@@$@*?ð?ð?ð?ð?ð?ð? \J&À¿YPþ’j?3%0Y.Ï?S\ξ‘ß@¡}AŠï—@«’¯&OŠ.?Pã”:…OÀ?p\!ð+Ö4?Ÿ­ƒ +¾2?Ù‰@0x1@Ÿl§!±Å@/@ Z^¸Që…@ `y™™™š@ Z^¸Që…Á.„€@ Z^¸Që…Á.„€@ Z^¸Që…Á.„€@ Z^¸Që…Á.„€@ Z^¸Që…Á.„€@•™õÂ\)@•˜¸Që…@•™õÂ\)Á.„€@•™õÂ\)Á.„€@•™õÂ\)Á.„€@•™õÂ\)Á.„€@•™õÂ\)Á.„€@8Hè§æ@77l‹C•€@5.5?|í‘Á.„M‰ûçm@4d¼j~ùÛÁ.„QnÙ‡@4J0U2a|Á.„NÜC,¥@4J0U2a|Á.„NÜC,¥@4J0U2a|Á.„NÜC,¥?ïT,J(¤r@8#˜@8¾:@8 >+@8Iç@8Ù?ÖFÉ ÿòÞ@8Î÷@8i§@8Å@8S@8û—?ö=ÌÅ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø0@ª?©xÔýô@ª?©xÔýõ@ª?©xÔýô@ª?ªW§†Á@ª?©xÔýô@ª?ª¦L/ƒ@ª?©xÔýô@ª?«C,¥@ª?©xÔýô@ª?©Q‚©“@ª?©xÔýô@ª?©á°‰ @£P° Ä›¦@£P°bMÒó@£P° Ä›¦@£P°U2a|@£P° Ä›¦@£P¯v_Ø®@£P° Ä›¦@£P¯·éù@£P° Ä›¦@£P°‰ 'R@£P° Ä›¦@£P¯–»™@3T xFÜ@3Sþ\‘ÑN@0 Ä›¥ã@/ùè>BZî@.ØÔýó¶F@.Ó&Á½¥@.Aò×t@.ŽËûµt@.Aò×t@. „M;@.Aò×t@.Žæ1ø ‘?}Ñ¿ž,?jú‚<·™?‘:€¾¶ˆ?‹ª½¨ª8v?òǹíT­?âé¨ë7F?|öOÿÝ?’‡Iš÷?ö”iåó¨?/ò×ÈZø?ÔÒ@úˆ‘?hï,ðà?‚uÞ@>N ?ŒöOÿÝ?‚¸“Îè ø?ƒ!Ë *(?†žóB» “?†å·ÑfWà@@@@@$@,?ð?ð?ð?ð?ð?ð? /(@ ¿Ù ?, mŒâ¹ã?Ü;ñ¬@@ª?©ßrƒ@£P°!Ò!?KÛßµÞsq?9am’,p?¤™]ÑÅö?€¥×ñ +€Ý@Ÿg@ÿ0¯@1@«Jz^5?}@«JwKƧñ@«Jz^5?}@«Jx­«ŸV@«Jz^5?}@«JwÎÙˆ@«Jz^5?}@«J|wškQ@«Jz^5?}@«J{çl‹D@«Jz^5?}@«J|¬1'@­ùäÝ/ @­ùæ$Ý/@­ùäÝ/ @­ùäZ¬ @­ùäÝ/ @­ùë…¸Q@­ùäÝ/ @­ùæfffg@­ùäÝ/ @­ùéÞÒ@­ùäÝ/ @­ùè>BZí@7úqÞi­C@7óŠ Þ@3’ Iº^5@3“Ð|„µÜ@3Ct¼j~ú@3DµÜÆ?@2œÚQÎ@2}¿HÌ@2œÚQÎ@2žOv_Ø®@2œÚQÎ@2ŠÚ¹õZ?›’qvš°•?äm°û0Ž?‘RsÈW?“ŒÒ•ÿV{?”§RXFÖf?’?=ÆþÎò?„F/·ÿP5?’5CàQ?‘Jâ”âj?–¼Š˜L¥ø?•’nî …?“ÌUõÎs¼?„+£QKø?Ž`ŸÝïöF?ƒ~¨õ/¥O?ˆW„hðQ?‰ö±«tï?Š`½i=ÓØ@@@@@*@&?ð?ð?ð?ð?ð?ð?N™2_8?@µÝ¸?;V[”lîE?'>w–ä¨@«J{E«3Ê@­ùç‰ ¬`?VhÆCņ?Kz‰àç­Í?¡‚q7V¬Ê?‘„=¯‰£@Ÿl××#Îs@2@ª*ß¾vÈ´@ª*ß¾vÈ´@ª*ß¾vÈ´@ª*àIQƒ@ª*ß¾vÈ´@ª*Üj~ùÛ@ª*ß¾vÈ´@ª*á [À@ª*ß¾vÈ´@ª*äZ¬@ª*ß¾vÈ´@ª*áÊÀƒ@¨ÞbMÒò@¨Þ Ä›¦@¨ÞbMÒò@¨ÞŒ"h Õ@¨ÞbMÒò@¨Þ‰7Kƨ@¨ÞbMÒò@¨Þ|(õÂ@¨ÞbMÒò@¨Þ‘hr°!@¨ÞbMÒò@¨ÞŽ}Vlõ@5µS&Á¾@5µF +¦L0@3ahr° Ä@3_ß;dZ@2ûƧï²@2ùe+ÓÃa@2¦YJôðØ@2 ù k¹@2¦YJôðØ@2«ŸU›>@2¦YJôðØ@2œ¥zxl"?|¬Çëý ?Čۨ1A?”‰oüq u?Hžyq?›ÿËRÈ?•½0 +Žø?„F/·ÿP5?’j%ÓRa?“v@á¿bî?’ äÅ?™=M÷‹¸? J,û¾õ?ƒíÈm½!¾?3ßa=„?¶,1õ'®?ƒžÂâk,?Ü×þë¿?Ž•w “w„@@@@@*@(?ð?ð?ð?ð?ð?ð?C>,Ù`¿^ØšŒ$?/z’ü“?h•¡1©ê@ª*àé(ù@¨ÞŠÎx*£?M›<£—š(?†wnÌÜã?¡Fq|¤ös@ +kâY)@ŸeF’V¦¶@3@¤Ñô¼j~ú@¤Ñõ$Ý@¤Ñô¼j~ú@¤ÑÿÔjž@¤Ñô¼j~ú@¤Ò×.@¤Ñô¼j~ú@¤Ñ÷O9n)@¤Ñô¼j~ú@¤Ñûlgb@¤Ñô¼j~ú@¤ÑúÀ®ŸS@–…¯Ÿ¾w@–…­V@–…¯Ÿ¾w@–…¾óÕž@–…¯Ÿ¾w@–…ßû"¡P@–…¯Ÿ¾w@–…ÏfqŸ¯@–…¯Ÿ¾w@–…ËhXc·@–…¯Ÿ¾w@–…ÜúCÆ@4¿–»˜È@4Àºú£“ò@2; Iº^@23øÒÍž@1ö§ï²-@1ïËaÓÚ@1=cˆe”°@19åâØ‡@1=cˆe”°@14¿w¸5@1=cˆe”°@15N–?|Ñb×¶@?’ò@­9•Ð?›[6.©š7?Ž­Ñºn?“ÿ<$a·?“\¯Û…vŸ?}@T˜ÁÎ¥?’¸«‹Žy?œø)3ÁÐ^?”C\7hv?—3|¯OiÜ?•C⟗áù?„°¼óSôS?Ém±O5?âÔ–o=€?‹Á°üø%A?‘Öl¸h8?‘ÒÅ?ÇÂ@@@&@(@,@9@7?ð?ð?ð?ð?ð?ð?Qú¶ÄÖ?spl?-h^ù]K[?FúÌ;®@¤Ñ÷›¨P@–…ÀnÑk?L$™­q\}?fšÿ6÷?£@üøð“?ÓóƒôÕ¡@ŸereX¯Ý@4@£ÇvE¡ÊÁ@£Çv‡+ @£ÇvE¡ÊÁ@£Çq”¹-Ï@£ÇvE¡ÊÁ@£ÇOì@£ÇvE¡ÊÁ@£ÇpO*Ä@£ÇvE¡ÊÁ@£Çª ÍF@£ÇvE¡ÊÁ@£ÆæMPA@™é¶E¡ÊÁ@™é¶È´9X@™é¶E¡ÊÁ@™é·u @™é¶E¡ÊÁ@™éž=ýl”@™é¶E¡ÊÁ@™éQ(ù@™é¶E¡ÊÁ@™éiñ4£@™é¶E¡ÊÁ@™éØ‘ÑkÎ@3ÞHè§æ@3ÝUhÆ“@0sS÷ÎÙ@0eþRžì@0.ùÛ"Ðæ@0£’påF@0&YJôðØ@/¦Ý̵d@0&YJôðØ@/ªì’J¹S@0&YJôðØ@/¢yUY‘?}õ¬#„­?…þÄž¶?§ÞéÒ‘°Ç?±:7–C1ò?ÀóçWØ?È. |Ý[?|Ñb×¶@?’ý#wgé?§±_m24?¦}å5®,?ÁvÜ.°ø*?¼éEim?‚nÓ3î‰?“KŽå‚U!?ÂeW^¯_?œuÞù<^? ¥a,ŽÄ=?™"­ŒÛ€A@@$@*@$@9@:?ð?ð?ð?ð?ð?𿟋f†Ž^’Ù€?oéóÖTrÆ?}­Óþ†«™@£Çc(E¤;@™é¨:áˆû?v?rå.I-?†oFÚ?×x®%é»A@²Ó¹0 +@ŸZê(ìçP@5@¨F§ï²@¨Gï²,@¨F§ï²@¨@ªdÂ÷@¨F§ï²@¨Aò×r@¨F§ï²@¨G†Â&@¨F§ï²@¨I­BÃÉ@¨F§ï²@¨JÀƒo@£Îæffff@£Îã•%@£Îæffff@£ÎçË)_@£Îæffff@£ÎàA‰7M@£Îæffff@£ÎãFÜ]e@£Îæffff@£ÎåS&Â@£Îæffff@£ÎæL/ƒ|@6è†YJôñ@6éÀëíúD@2Ùº^5?}@2Ö+jçÕf@2,j~ùÛ#@2)ã¼Ô@1³&Á½¥@1¯'»/ìW@1³&Á½¥@1³g ù l@1³&Á½¥@1²° Ä›¦?гá‡}?•Íñ¤Ý q?’,³Zêª?ç\Š2˜?‘˜¯ +`É?‘Iãd©ìGcª# @ªI·i@¤ixm$?C>ìÂÉ?^ÜZ¸P‹¼?’Úg…×+?Ä£fó!˜±@Ÿg¢ÜÏN;@7@¡{å`A‰7Á.„€@¡{å`A‰7@¡{áä÷eþ@¡{å`A‰7@¡{Ö+jçÕ@¡{å`A‰7@¡{ç“Ý—ö@¡{å`A‰7@¡{üÚQ@¡{å`A‰7Á.„€@ªÛ$Ý/Á.„€@ªÛ$Ý/@ªÛ3÷ÎÙ@ªÛ$Ý/@ªÚð¸º@ªÛ$Ý/@ªÚë)^ž@ªÛ$Ý/@ªÛ|ÚR@ªÛ$Ý/Á.„€@3” xFÜÁ.„>¤µÜÆ@08r° Äœ@0M¿HË’@/Ó¶E¡ÊÀ@/ºŸ¾vÈ´@.¸7´¢3œ@.µ '»0@.¸7´¢3œ@.ÅðoiDi@.¸7´¢3œÁ.„NÜC,¥@8J¨?—É·R©Ï? „„³ÉuN?œéû¢­0K?œ=òÙUä@8Ù@8J¨?—® QnS#?ºUŠ"ÄÅ?–sZ -™ø?¬1H9v@8û—@8p÷?—Ö¸¨ú.?¶j“êÜài?Ž«]O8èº?ªƒ&‘n_@8 Ø@@@@&?ð?ð?ð?ðøøøøøøøøøøøø8@Ÿ¾8Që…Á.„€@Ÿ¾8Që…Á.„€@Ÿ¾8Që…Á.„€@Ÿ¾8Që…Á.„€@Ÿ¾8Që…Á.„€@Ÿ¾8Që…Á.„€@œÓs¶E¡ËÁ.„€@œÓs¶E¡ËÁ.„€@œÓs¶E¡ËÁ.„€@œÓs¶E¡ËÁ.„€@œÓs¶E¡ËÁ.„€@œÓs¶E¡ËÁ.„€@7¹Œ~($Á.„>¤µÜÆ@2!hr° ÄÁ.„M‰ûçm@1Ë"Ðå`BÁ.„QnÙ‡@0Åœàu÷Á.„NÜC,¥@0Åœàu÷Á.„NÜC,¥@0Åœàu÷Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø9@¥¦j~ùÛ#@¥¦h1&éy@¥¦j~ùÛ#@¥¦oAò×@¥¦j~ùÛ#@¥¦kÓÃa@¥¦j~ùÛ#@¥¦k¹Œ~(@¥¦j~ùÛ#@¥¦dµÜÆ?@¥¦j~ùÛ#@¥¦f€IQ@¬Ý€@¬Ý‰7KÈ@¬Ý€@¬Ý~5?|î@¬Ý€@¬Ý£n.³@¬Ý€@¬Ý.Hè§@¬Ý€@¬Ý„oi@¬Ý€@¬Ýƒ,¥zy@6è†YJôñ@6èï4Ö¡b@3; Iº^@3;µsê³@2Àå`A‰7@2ˆÎp:ü@2?ò䎊r@2C,¥zxl@2?ò䎊r@2>ߤ?åÉ@2?ò䎊r@2?Åo?„F/·ÿP5?‘¡çL¤?‘ñê&ètä?‘´CF õ?“ £Ê­?šæ5ƒ‹Å‹?}Ñ¿ž,?’š'†­`í?‘¡Kd·´+?‘.}áµ$?“þþ¿=?“‘k–šj?‹v'þ­X?þþoÀM?„ã¼ÓZ…ˆ?„Ö©Ú0?‘„1ôñÂß?ŽÜÂÎÛÖa@@@@@*@*?ð?ð?ð?ð?ð?ð¿4©ëR?2õÄõp?Iv%Òaq?>Ç Ý¤Ã@¥¦göX Æ@¬Ý÷¢Ý?hS,“P?^ÿŸÁO Ä?Ò>tãkà ?ÃìèêC@Ÿf©˜ÝK‡@:@§µ;çl‹D@§µ;dZ¬@§µ;çl‹D@§µhr° Å@§µ;çl‹D@§µ@ qw@§µ;çl‹D@§µX“t¼j@§µ;çl‹D@§µ?oÒó@§µ;çl‹D@§µ ÅÖ8†@¢ƒ£S÷ÎÙ@¢ƒ§ï²-@¢ƒ£S÷ÎÙ@¢ƒÚŸ¾vÉ@¢ƒ£S÷ÎÙ@¢ƒŸö”E@¢ƒ£S÷ÎÙ@¢ƒBÃÉï@¢ƒ£S÷ÎÙ@¢ƒŽËûµ@¢ƒ£S÷ÎÙ@¢ƒÌ¿±[W@8½:’£@8ÄSŽóMj@4Œí‘hr°@4ÀhÛ‹¬q@3©Û"Ðå`@3¿ƒ{J#:@3ý!ÿ.I@3@-à @3ý!ÿ.I@3Q-w1Å@3ý!ÿ.I@3óMj?¯ò5}'Î?¢Ú>¨I ¿?©3}ÛCºß?³•(&V?¬  KüÞ?°»ÂOY‰ò?¢Æ÷Xê†?¬'ø'5?°9›|/ß?¶ãc6; ?¸§e‰B?±€ü@ Ø¤?ÅÃÑ /x/?¡ú-8ûõö?›f°ùr[‚?›ÄAÚ þ ?ªöwóƒY?¸&ä¾±4ý@@@@@,@&?ð?ð?ð?ð?ð?ð¿y5[á6?k‹!_?2§rù¸‚?y|†J¶'¶@§µ9,d‡õ@¢ƒ­%,˜?ŸÝU©fX?ÈŽqŒã?þE½jF(v?÷À>0÷¦õ@Ÿj…ïè¶´@;@¥ÉcS÷ÎÙ@¥ÉcS÷ÎÙ@¥ÉcS÷ÎÙ@¥Éeo@¥ÉcS÷ÎÙ@¥É`-à @¥ÉcS÷ÎÙ@¥Éc{J#:@¥ÉcS÷ÎÙ@¥Éd“t»@¥ÉcS÷ÎÙ@¥Écˆe”®@¡¹dZ¬@¡¹d›¥ãT@¡¹dZ¬@¡¹Z’£S@¡¹dZ¬@¡¹]!ÿ.I@¡¹dZ¬@¡¹gæšÔ@¡¹dZ¬@¡¹e‡“ݘ@¡¹dZ¬@¡¹ezxl"@4įO „M@4Å+ÓÃa@0Ùº^5?|@0×E8ï4Ö@0»Æ§ï²@0¸õÂ\)@0‚@·€4@0ªdÂø8@0‚@·€4@0&€IR@0‚@·€4@0ÿ.Hè¨?|¬Çëý ?‘¸ü"ù€2?•™Þ õ?ޝ“¶¶ÒÍ?‘VšÐ^Ø?‘f]£àG?|öOÿÝ?“¡ƒ[¤45?“èËôy?“3ÏÇF0?‘†óèJL\?Éöm/wE›Æ@¥Éc‡˜c|@¡¹eF¦.p?/ wƒØ›?L¹Õ›Do?i»®«3y?£ ˆ·Uu^@Ÿf©{ʺ@<@¡AÙ™™™š@¡AÙ™™™š@¡AÙ™™™š@¡AÛ˜Çâ‚@¡AÙ™™™š@¡AÚáG®@¡AÙ™™™š@¡A×´¢3œ@¡AÙ™™™š@¡AÙÛ"Ðå@¡AÙ™™™š@¡AØ­«ŸV@®/"MÒñª@®/“t¼i@®/"MÒñª@®/%o@®/"MÒñª@®/(1&éy@®/"MÒñª@®/$Z¬ @®/"MÒñª@®/#{J#:@®/"MÒñª@®/!×Ûô‰@7uS&Á¾@7s àÞÒˆ@3žÙ‡+@3Ÿ.Hè§@3U`A‰7L@3V“t¼@2J0U2a|@2JCþ\‘Ò@2J0U2a|@2L(õÂ\@2J0U2a|@2KÓÃa@?Œs¤DÅÐ?—oN„Q?š^ÇÙ*G?’³Žbtx=?“™p[³ì?—‡XE%:?ˆÿÀ)T¿Æ?œ7»fU‡?’t-Eü?’F—T \*?“'ü#šgâ?“‘k–šj?‡~ ~ã?•<€¥¿ý¢? t€4Ã?„À"aËô??‹ú èNÆö?‹ ˜1 D@@@@@@(@&?ð?ð?ð?ð?ð?ð¿ ²•¾ ?c¤H?3}SñÄ'?MãÙ8Xð@¡AÙ‘1A@®/&E]?R\¤“^y—?míãÈœ? ·£®æ?Ùa¬|ÄÛ@ŸiÓFz3ó@=@¬ðgl‹C–@¬ðbMÒñª@¬ðgl‹C–@¬ðaä÷eþ@¬ðgl‹C–@¬ðezxl"@¬ðgl‹C–@¬ðn}Vlô@¬ðgl‹C–@¬ð\ú¬Ùè@¬ðgl‹C–@¬ð\„µÜÆ@¨ôyXbN@¨ô~¸Që„@¨ôyXbN@¨ô‚Zîc @¨ôyXbN@¨ô.Hè§@¨ôyXbN@¨ôn±Ä2Ê@¨ôyXbN@¨ô–¡aä÷@¨ôyXbN@¨ô Ä›¦@82ÃÉîËû@8%?|í‘h@4+ Iº@4»˜Çâ‚@3M²-V@3M¸ºÇË@2ÜÚQÎ@2Ð@2ÜÚQÎ@2ÛÍ5¨Xz@2ÜÚQÎ@2Ú0U2a|?ªÝ8Ⱥ™J?Æ +×?•Œ–?—;±C??›m¤´¨×¦?”ÙA!Xá¨?¢F^ì¼Sð?’áÄïÃõ?’±ä?ðK^‡?¢€fç½Î?Ÿ…4æµ°?º f +¦?‘pØ-Ÿt?†' +³}÷C?Q§ ç´Í?”èÙ£—?•mCìc¿4@@@@@*@*?ð?ð?ð?ð?ð?ð¿pŽÑÁá?tŸAyù€?jŠ˜êïÝ‹?uªöÚaÞÉ@¬ðd½nä@¨ô„o]ÆÏ?‚‡`þm08?’âø:þ2ú?ì,Ƀ!x4@‹øk.j@ŸnÜó‹·ñ@>@¥†ì‹C•@¥†ìÌÌÌÍ@¥†ì‹C•@¥†ìô!-@¥†ì‹C•@¥†é…ðoi@¥†ì‹C•@¥†ìcñA @¥†ì‹C•@¥†ðHð@¥†ì‹C•@¥†î—OÞ@§•öÈ´9X@§•öÈ´9X@§•öÈ´9X@§•ì1&é@§•öÈ´9X@§•è§æ›@§•öÈ´9X@§•äêJŒ@§•öÈ´9X@§•ö4ê@§•öÈ´9X@§•ò£S%@3|ÚQ@3aä÷eþ@/Û"Ðå`@/U2a|@-òn—Oß@-à·€4mÆ@.žš@-þ í(Œç@.žš@.‡“Ý—÷@.žš@.ÉîËû?|öOÿÝ?òb[±?•Mq —¦?šÞx‚xí¨?˜h†5+P?˜ C®k¯?|¬Çëý ?’¼MÒÀ7F?šˆFy® +?§™sÒ†ŸL? ,¡r×gÁ?£Šï-[w?‚‹¡8*ùÿ?µœ7}?†aÞàI*•?‡¯½.SM?‡”_Õ­çW?‡´*žZ}Õ@@@@@,@,?ð?ð?ð?ð?ð?ð??[‚°0¿Qy4¨ô?1,9˜Qtœ?V7Ð:àg-@¥†í„¼Ÿ@§•ôÿƒ·?N3Èõ V?r:s~\Kš?¡Ï´æ'?Ý#Šœ;@Ÿb™»¹I@?@¯ÚxQë…@¯Úx“t¼j@¯ÚxQë…@¯ÚyXbN@¯ÚxQë…@¯Úye+ÓÂ@¯ÚxQë…@¯Úye+ÓÄ@¯ÚxQë…@¯Úw>«6z@¯ÚxQë…@¯ÚwKƧñ@œ“m‘hr°@œ“nzáI@œ“m‘hr°@œ“lq ²–@œ“m‘hr°@œ“l"h Õ@œ“m‘hr°@œ“l¥zxm@œ“m‘hr°@œ“mÅÖ8†@œ“m‘hr°@œ“mBÃÉî@0÷â‚@·€@0÷â‚@·€@+MV“@+MquŽ!@*ÉxÔýó¶@*É 'RTa@*oi@*÷eýŠÛ@*oi@*oh@*oi@*oi?É^¨¯Âj?ÖÈ ¼?‘&Øç?‘?‹¯eU5?êtÿKÑc?·t¤¢‚J?ÐbQë„›¦?’¼  g¶?¹º–Èj?;ß $Þû?ÐFf$?Sñƒ´V.?€bMÕ]f?Œ¯þuõí?‚uÞ@>N ?‚ãaÎúvh?†l&þ?†½ª»—@@@@@(@,?ð?ð?ð?ð?ð?ð¿O–Z°?"ºªJ?5/•”BÊÇ?!À—63±@¯Úx!J‡€@œ“m.à«,?D_?o´oâ?0ÊP7Ñç?„g7¤‘jß?X²'ÈEc@Ÿs ¸9 @@@¦Àƒn˜@¦³÷ÎÙ@¦Àƒn˜@¦É7Kƨ@¦Àƒn˜@¦®óMj@¦Àƒn˜@¦¸üPH@¦Àƒn˜@¦¢Ðå`B@¦Àƒn˜@¦¢e+Õ@¥$•$Ý@¥$°bMÒò@¥$•$Ý@¥$`hÛ‹«@¥$•$Ý@¥$NV“@¥$•$Ý@¥$Q ²•ê@¥$•$Ý@¥#çy¦µ @¥$•$Ý@¥#ëíúCý@8ý:’£@8Κu@4O|í‘hr@4E '»0@3ÝV”@3ÉîËû¶@3fYJôðØ@3Z¬Ùè>C@3fYJôðØ@3TtSŽóN@3fYJôðØ@3L‘ÑN;Î? Eˆ‡ðó‹?™05¦ ê[?–ý3¾ZÀ’?’9ñ9¶ò8?¯+|ƒº<ó?²Æ ºÔæP?±Á1ÈËŸÓ @Ÿg÷Ï`ã@A@Ÿ³àA‰7L@Ÿ³ð˜°¢Æ@Ÿ³àA‰7LÁ.„€@Ÿ³àA‰7LÁ.„€@Ÿ³àA‰7LÁ.„€@Ÿ³àA‰7L@Ÿ¯B|áöz@Ÿ³àA‰7L@Ÿ¯Õ$Ý@­y¶E¡ÊÁ@­y¹XbL@­y¶E¡ÊÁÁ.„€@­y¶E¡ÊÁÁ.„€@­y¶E¡ÊÁÁ.„€@­y¶E¡ÊÁ@­|åS-@­y¶E¡ÊÁ@­|µY³Ð~@8‡>«6z@8q– +ÌW@3õãS÷ÎÙÁ.„M‰ûçm@2çKƧïžÁ.„QnÙ‡@2Ç ù kºÁ.„NÜC,¥@2Ç ù kº@1¢ú*,¦»@2Ç ù kº@1i0¾ í(?¡`»¢ƒÙÔ@8#˜@8¾:@8 >+?µÒŽ×Óè?Ñ»­, é?‘w×vHf@8Î÷@8i§@8Å?¹ñÒ—#‡?Ú‘ý—L'?š^}\Б@8 * @8p÷@8¶?´óî÷Ôþ?«] óºä@@2@*?ð?ð?ðøøøøøøøøøøøøB@£sèõÂ\@£sé7Kƨ@£sèõÂ\@£sç ù l@£sèõÂ\@£sç“Ý—ö@£sèõÂ\@£sç®zà@£sèõÂ\@£såo@£sèõÂ\@£sâœwšk@® ¹Û"Ðå@® ¹Û"Ðå@® ¹Û"Ðå@® ºu%F@® ¹Û"Ðå@® ¹Û"Ðå@® ¹Û"Ðå@® ¸y=Ù~@® ¹Û"Ðå@® ¸Ôýó¶@® ¹Û"Ðå@® ¸y=Ù@3IÎ_oÒ@3IÇy¦µ @1xr° Äœ@1xl"h Ô@1"-V@1!Î_p@0Åœàu÷@0Â䎊qÞ@0Åœàu÷@0à àÞÒ‰@0Åœàu÷@0Ã@N¤¨Â?žˆ2}?]àÛ‘?‘ê ÷“'? Ìç,Z?‘u×íËÄî?‘·díW‚?|¬Çëý ?’Q_Ú¸FN?‘}7ˆ.Ñ?‘Ò–¬q?‘Uç·Býi?ó‹P=´?‚nâwfÿ?ŒïQ¼º“ã?‚Ö˜>µDá?ƒ¼9XNÄu?‡×7°º?ˆk! ¨l@@@@@&@&?ð?ð?ð?ð?ð?ð¿Ríü®¿3…*‚?0ÿòiÒT?]XØ—&Â@£sæÙ;ž0@® ¹')Ĩ?PÖCÃ\i™?4#ŠÅµAr?©8ù¸(q?s[Pæƒ@ŸgrC 0@C@©¥ãSø@©dZ¬@©¥ãSø@©5?|î@©¥ãSø@©!£n.²@©¥ãSø@©ã¼Ó\@©¥ãSø@© žƒä'@©¥ãSø@©ÊW§‡@©±ñ©ûçm@©±ò° Ä@©±ñ©ûçm@©±éxÔýô@©±ñ©ûçm@©±àhÛ‹¬@©±ñ©ûçm@©±ýó¶E¢@©±ñ©ûçm@©±åãS÷Ï@©±ñ©ûçm@©±ê™0¾@6Hè§æ@6}Vlô@3}‘hr° @3}‘hr° @3{Ƨï²@3|wškP±@3‚@·€5@3œwškQ@3‚@·€5@3䎊qÞ@3‚@·€5@31&éxÕ?1·†Æjñ?*£|3Né?‘ÄÑ ø?•oÕ=\<Â?–~9n4ºÀ?ž»‚>äÚ>?€‚ñêã ?’7Îf¬ps?üÓqÔN‰?”Â1`´? CÚ B÷?Ÿ¥O[õÆ?‚nâwfÿ?pù51íÒ?–EÑ~?ŒžVE’D? ã΋÷ÑN?ŸHF!œ6²@@@@@,@(?ð?ð?ð?ð?ð?ð¿e„Y?n¿Ac]Ðx?D… ¯ÜH~?c’0-©—@©®»ÿ\@©±òz ˜œ?br“cP‰?ZÝÞ£á¯?ÆYÙ±¾@ÎÜfÀÎ@ŸcÌ +°4@D@§ÝG+ J@§ÝFffff@§ÝG+ J@§ÝFÂ&€ž@§ÝG+ J@§ÝGÕfÏB@§ÝG+ J@§ÝCn—@§ÝG+ J@§ÝJ¦L/ƒ@§ÝG+ J@§ÝIîËû@§àÐå`A‰@§àÒ-V@§àÐå`A‰@§àо í*@§àÐå`A‰@§àÎV“@§àÐå`A‰@§àÑhr°!@§àÐå`A‰@§àʦL/„@§àÐå`A‰@§àÏß;dZ@7¥öý!ÿ.@7ªÍžƒä&@3)‡+ @3)0¾ í(@2`A‰7L@21&éxÕ@1î_oÒ @1ï4Ö¡aå@1î_oÒ @1ë’:)Çz@1î_oÒ @1êxl"h +?š•§q!U?‘_¦X ë +?”P"ÒhI?î®)„àµ?”äPÚ=æ?‘ø)±'3?–ªÎ­¡?“H¼k#è?’Qÿc +?iêhAÜ?“ðÐ ?“.½þ¹Š?‡z"2Úù(?7'în‹K?†aÞàI*•?‰®ðúcåZ?Œ¸ðËb?“ )D)@@@@@*@,?ð?ð?ð?ð?ð?ð?UMX=x¿MÕóžô?TFÏIëÿË?PsRž¿“ç@§ÝF° Jl@§àÏÎ|?n 3,Vÿ|?jæV ß*;?ÔÜçé°ÊÁ?Ï…œÆÌž@Ÿm¦üã4@E@¨Å¸Qì@¨Óˆæ¢å@¨Å¸Qì@¨éÂkX@¨Å¸Qì@¨à¯75@¨Å¸Qì@¨Û+ñ¦L@¨Å¸Qì@¨Ïdèål@¨Å¸Qì@¨Õ[~„.@™ct¼j~ú@™cžþö;(@™ct¼j~ú@™c‰DªnÏ@™ct¼j~ú@™cw¨^Æ(@™ct¼j~ú@™cm…*©J@™ct¼j~ú@™ckƒËe@™ct¼j~ú@™cnRãßã@8Î쿱[W@8Ã(õÛ’P@3”›¥ãSø@3‚6=ÐC@2q‰7Kƨ@2f]Ñçùb@1«xFÜ^@1¢ãa+èE@1«xFÜ^@1¢0¸ÙÆL@1«xFÜ^@1£*GQ†ˆ?†Dʯθ?™u‚3ßËv?•E&Ê?£üy?”´äØ÷ô?—Óöœ´%±?œÆæXÆd?•ññì4?‘1Í»?,?·:ÁÌÙ?’2%õ“ô?’Æ8 +$?³ØÇ’}’Ÿ?“(tíl­?… ‘gz?†ÔgKâê?ˆšsÓß ö?‹Fü¶u@@"@(@&@8@5?ð?ð?ð?ð?ð?ð?1ÀK¿q:×ö(À?W€?Ä€»?bÙ¶Þ7^«@¨ÕKî…†@™cvZb¤;?yRÔT˜;?|ˆX¡´ª?îqjZ‡?ðAn]oV@Ÿl Ó1£ä@F@¡v"MÒñª@¡v!ÊÀƒ@¡v"MÒñª@¡v#,¥zw@¡v"MÒñª@¡v"\(ö@¡v"MÒñª@¡v!ÿ.Hé@¡v"MÒñª@¡vË’:*@¡v"MÒñª@¡v" Iº^@­l‹C•@­l1&é@­l‹C•@­m5¨Xx@­l‹C•@­m(Œç@­l‹C•@­lÙè>B@­l‹C•@­l~($ @­l‹C•@­m(Œç@4šÔ,<Ÿ@4lô!.@0R Iº^5@0R×sü@/ØÔýó¶F@/؆YJôñ@/G“Ý—ö,@/F¸ºÇ@/G“Ý—ö,@/FéxÔýô@/G“Ý—ö,@/Gï²-?|¬Çëý ?Čۨ1A?‘"žæÆó¡?Œ:Z2‚b?‘,IÝ Áé?¾ƒìÈÁ?}Ñ¿ž,?’j%ÓRa?ŠA)Nîá?>\‰å‘?çêÑHcÇ?Uÿyu”#?‚‹¡8*ùÿ?)‰€Zw?‚˜YªüÏF?ƒE 8?†Ë¢L1Ù?ˆA0û)n@@@@@*@$?ð?ð?ð?ð?ð?ð¿oqQ?*{:ëÀ?-÷t{ Ћ?±EÙMž@¡v!)L@­l|Øù?Møì¯ø‰?/GîñÎÉ|?¨, Sˆô?hêé¡Ñý@Ÿg¯IzA@G@¤o)xÔýô@¤o)º^5?@¤o)xÔýô@¤o)Dg8@¤o)xÔýô@¤o)ã¼@¤o)xÔýô@¤o.—Oß@¤o)xÔýô@¤o) 'RS@¤o)xÔýô@¤o)îËû@ªëbMÒñª@ªëh´9X@ªëbMÒñª@ªë`·€4n@ªëbMÒñª@ªëem\ú­@ªëbMÒñª@ªëg“Ý—ö@ªëbMÒñª@ªëe”¯O@ªëbMÒñª@ªëhK]Ìc@8–šÔ,<Ÿ@8š’£S&@3ahr° Ä@3`4mÅÖ8@3,j~ùÛ#@3+ŸU›=@2«6z‘@2Ùb¶¯@2«6z‘@2i­BÃÊ@2«6z‘@2ã¼Ó[?’Óusÿ\Ã?’‚€‡d_s?œ +¦ÃDþ?‹ÝÉ!ë#?‘‘n{ÆäK?‘îƒÔ1a?¯oÝ ÷6}?•\´jÒË?– íÇyz?@§[*^?‘c3¸cÜ(?’ ÃCÀ`ú? ânIð?’|׿pZ?“²pÅâ-Ý?†Á{0Ÿà®?‰/ã̽`ª?Œ˜ˆTÙ8ª@@@@@(@(?ð?ð?ð?ð?ð?ð¿# +g ¾Õcú?O»˜™Ö@^?Gæ!1€ÚN@¤o+nП$@ªëg/ iƒ?k—äÿ×?ZªË_IÄš?Ó†qíý¬ ?« ‰oÑ@ŸpHZ£Cº@H@¡p$Ý/@¡pG®{@¡p$Ý/@¡p‚ Iº_@¡p$Ý/@¡pohÜ@¡p$Ý/@¡p–R½<@¡p$Ý/@¡p¤?åÊ@¡p$Ý/@¡pË’:)@ e#S÷ÎÙ@ e#•%@ e#S÷ÎÙ@ e"Ðå`B@ e#S÷ÎÙ@ e!aä÷f@ e#S÷ÎÙ@ e"œwšk@ e#S÷ÎÙ@ e"\(ö@ e#S÷ÎÙ@ e"&€I@2žHè§æ@2ž.±Ä2Ë@-€A‰7KÆ@-€IQ‚©@-¿;dZ¬@-À[À6ã@-fL/ƒ{K@-gÕfÏAò@-fL/ƒ{K@-i*0U2b@-fL/ƒ{K@-hÛ‹¬q?É^³Dw'?Ì&ÏøHÃ?‘(¥¿á?‹ä†€{6è?ÿ £‰¸9?ÍàÊaùX?ÐbV‡,?’j%ÓRa?„¦Ô•]I?e”[|ú(?øóéM Ÿ?r¼Jsž?€‘:9”?Œ°¶.Ä+Æ?‚¯­Ù¤Á¶?‚ôhBì^?†Ë¢L1Ù?†¼Š˜L¥÷@@@@@*@(?ð?ð?ð?ð?ð?ð¿KS½ý¼¿)z@{?4!ÊK×p?þØQ8-@¡p€y̸à@ e"vR·Ú?CQ—‘Zòø?!÷Æ—%?‚!¨÷ñr–?;¸&•bä@ŸsÆ04è@I@­Ç`A‰7L@­Ç`ƒn™@­Ç`A‰7L@­Ça‰7KÆ@­Ç`A‰7L@­Ça‰7KÆ@­Ç`A‰7L@­Çb Iº^@­Ç`A‰7L@­Ç^Åm\ü@­Ç`A‰7L@­Ç_ö”F@¤[° Ä›¦@¤[°bMÒó@¤[° Ä›¦@¤[°‰ 'R@¤[° Ä›¦@¤[°¸»@¤[° Ä›¦@¤[°Ë)^ž@¤[° Ä›¦@¤[°°ò{³@¤[° Ä›¦@¤[°bMÒò@304mÅÖ8@30A‰7KÇ@.ëÆ§ï²@.ë¬q ²”@.éxÔýô@. ù kº@-…oi@-…m\ú¬Ù@-…oi@-…S&Á½@-…oi@-…m\ú¬Ù?|öOÿÝ?ÖÈ ¼?‘=?ùKh?‹×lÇ…N9?‘ ·èf?È2I/?|öOÿÝ?’ ,øÕC©?–ÐO(·Š?Y‡…—Ø?ÝIMÎ?r¼Jsž?‚q6tNø6?Œ».êxóÚ?‚2Y0âµ?‚ù8 ±^?†špk Y?†špk Y@@@@@*@,?ð?ð?ð?ð?ð?ð¿,‹ô ?Ê5€?5Õ”Z]4c? ©Ü½b R@­Ç`>Ð@¤[°€ëò?U»ñÏ$?*&"VÞí?¹‘x%ŽŒµ?a¡ŠK‰@ŸfúÄÙ|@J@¯ß¥ãS÷Ï@¯ß©ûçl‹@¯ß¥ãS÷Ï@¯ß¤Z¬ @¯ß¥ãS÷Ï@¯ß¡G®{@¯ß¥ãS÷Ï@¯ß hÛ‹«@¯ß¥ãS÷Ï@¯ßÙb·@¯ß¥ãS÷Ï@¯ßæšÔ,@¤¼ß;dZ@¤¼àA‰7L@¤¼ß;dZ@¤¼ä2ÊW¨@¤¼ß;dZ@¤¼Û˜Çâ‚@¤¼ß;dZ@¤¼Û~ÿ—@¤¼ß;dZ@¤¼Ú–¼@¤¼ß;dZ@¤¼ÛdZ¬@6ëµsê´@6èbMÒò@2‚° Ä›¦@2}ŠÚ¹õY@1Æ“t¼@1° Ä›¦@1!:’£S@1«ŸU›=@1!:’£S@1îcŠ @1!:’£S@1¾ß¤@?‚á²Olºü?½Ë9ØŠ§?“ýª‘À?‹¬àÌ’Ç?•òJj~u?•Þ©qk#?ˆÿÀ)T¿Æ?’p RN%Î?’¤šÜI«?£û,Ɇ?”Ï#:d ?“t‡o(ÚÊ?†Æ‹™þ?3ßa=„?ˆdÁ +-?ƒÈGó?ˆ0&YÊEd?«e(Os@@@@@,@,?ð?ð?ð?ð?ð?ð¿gŒ3Ö¿SúŒ­?=yþ |%?6ö:@KÏ@¯ß¢ÂìN@¤¼Üø9†š?\Ö˜e®$X?Vc5*iÃ?½æ£)ãÒ?­y°Ù$ @Ÿh”PˆÒ@K@ŸËƧïž@ŸÊ=p£×@ŸËƧïž@ŸÌÌ2cæ@ŸËƧïž@ŸËêeÂ@ŸËƧïž@ŸËÿÏÞ`@ŸËƧïž@Ÿȱ¥AÀ@ŸËƧïž@ŸÇü¹#£@¤H¾vÈ´9@¤H¿hÃY@¤H¾vÈ´9@¤H½2þ³—@¤H¾vÈ´9@¤H½+Ú@¤H¾vÈ´9@¤H¾©R/ @¤H¾vÈ´9@¤H¿&ëÔ@¤H¾vÈ´9@¤H¿/6vY@5 xFÜ@5ÇÉÖÚ@.kƧï²@.lˆKÜk=@-Ó¶E¡ÊÁ@-Ô«¾_KÀ@+£¼ÓZ…ˆ@+¥)_­µ´@+£¼ÓZ…ˆ@+¤ I?’@+£¼ÓZ…ˆ@+¤Ç l?|Ñb×¶@?âÂyßði?‘&°!­R?‹±V­{À?êÃËT^?½6m*wÓ?}x—™?‚òs°n?†y €¤Y?†‘"‘Fùá@@*@(@,@7@9?ð?ð?ð?ð?ð?ð¿!¿_$À¿E4€?)Cñʽ!?-@ŸÉæPÊÏ@¤H¿1ÿž‡?I/ñ#J:?3L$R©ï×?¡Bë Ü ?s"Àªq@Ÿgf`Š„@L@¨w¨r° Å@¨w¨r° Å@¨w¨r° Å@¨w© ªŸ@¨w¨r° Å@¨w©IŸu(@¨w¨r° Å@¨w©2ÂùZ@¨w¨r° Å@¨w§tœ&ñ@¨w¨r° Å@¨w§•fýŠ@– -V@– -‘hr°@– -V@– ,‹C•@– -V@– ,p¥t@– -V@– ,œŽg@– -V@– ,@Ò&R@– -V@– ,Ùè>B@/úu%F +@/úu%F +@)Š~ùÛ"Ð@)Š`º†‰°@(S¶E¡ÊÁ@(SŠ;WÄã@'½Vlô"@'½ÈK]Í@'½Vlô"@'½ÈK]Í@'½Vlô"@'½ã¼Ó[?É^ž6õP?Á±¼Ç l?‘õ?‰?‹®úÄD?èäî‰s&?³Ò4Q™?ÐbQë„›¦?’ªK‹}?€qÀñΪ?2j)Å6e?μšjH0?L5–S€k?€bMÕ]f?Œ¬ŒîP0?‚pDøïRh?‚ãáÞ×N?†ˆŠ_cd?†‡î8‹ž'@@(@,@&@:@9?ð?ð?ð?ð?ð?ð¿H~_â?ªÜð?2#—‚¨?‚íZSÏV@¨w¨3öe@– ,’´.?Apö^‡¤ù?%M'¢»\?}ïâÎó!?CïÏqgJÜ@Ÿs Æûž@M@Ÿe¬1'@Ÿe2ÈÍå@Ÿe¬1'Á.„€@Ÿe¬1'Á.„€@Ÿe¬1'Á.„€@Ÿe¬1'Á.„€@Ÿe¬1'Á.„€@\ñ©ûçm@\û"Æiô@\ñ©ûçmÁ.„€@\ñ©ûçmÁ.„€@\ñ©ûçmÁ.„€@\ñ©ûçmÁ.„€@\ñ©ûçmÁ.„€@7·â‚@·€@7¡XGmI@2õãS÷ÎÙÁ.„M‰ûçm@1©Û"Ðå`Á.„QnÙ‡@1Vý!ÿ.IÁ.„NÜC,¥@1Vý!ÿ.IÁ.„NÜC,¥@1Vý!ÿ.IÁ.„NÜC,¥?‘ÀQ.K†ä@8#˜@8¾:@8 >+@8Iç@8Ù?š™»ŽÛr@8Î÷@8i§@8Å@8S@8û—?§kZ—‘™@8 * @8p÷@8¶@8 Ø@8 Ø@ ?ðøøøøøøøøøøøøN@£t‰7Kƨ@£tŠ~ùÛ#@£t‰7KƨÁ.„€@£t‰7KƨÁ.„€@£t‰7KƨÁ.„€@£t‰7KƨÁ.„€@£t‰7KƨÁ.„€@“D@“Cýp£× +@“DÁ.„€@“DÁ.„€@“DÁ.„€@“DÁ.„€@“DÁ.„€@1D¯O „M@1AA [À@-”¼j~ùÛÁ.„M‰ûçm@,›dZ¬Á.„QnÙ‡@,Vð¸»Á.„NÜC,¥@,Vð¸»Á.„NÜC,¥@,Vð¸»Á.„NÜC,¥?É`¤~E @8#˜@8¾:@8 >+@8Iç@8Ù?ÐbQë„›¦@8Î÷@8i§@8Å@8S@8û—?¡çL¤@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøO@¢®$Z¬@¢®#•%@¢®$Z¬@¢®,cñA @¢®$Z¬@¢®*W§†Á@¢®$Z¬@¢®8­«ŸV@¢®$Z¬@¢®1Å@¢®$Z¬Á.„€@§gG+ J@§gG®zá@§gG+ J@§gD“t¼@§gG+ J@§gB¶®}V@§gG+ J@§g;=ÈK@§gG+ J@§g6‡+ @§gG+ JÁ.„€@35S&Á¾@33&Á½¤@1½‘hr° @1¹ÀëíúD@1U`A‰7L@1LPHð@0‚@·€5@0Àù k¹@0‚@·€5@0¾¾ß¤?æ@0‚@·€5Á.„NÜC,¥?|öOÿÝ?‘+ùÔ!½Š?ž1ï3Î??F‘q/b?šµV0o~8@8Ù?|¬Çëý ?’HGªÂÛ^?”Qä\‰Õ?‘< /0ç˜?“ÀVâŸì@8û—?‚† SFñ?i-ý-›…?ŒArUãA?•q$¨_54?•@¼Cк@8 Ø@@@@@*?ð?ð?ð?ð?ðøøøøøøøøøøøøP@¢ÿ$Ý/@¢ÿŠÀƒp@¢ÿ$Ý/@¢ÿ£n.²@¢ÿ$Ý/@¢ÿTÉ…ð@¢ÿ$Ý/@¢ÿ‚ø7´¢@¢ÿ$Ý/@¢ÿ€ªdÂø@¢ÿ$Ý/@¢ÿ~쿱[@®íºáG®@®íÄZ¬@®íºáG®@®í·ÎÙ‡@®íºáG®@®íº)Çy§@®íºáG®@®íº)Çy¨@®íºáG®@®íº¹õY´@®íºáG®@®í¼¹#¢œ@8L]cˆe”@8N;Í5¨X@2+¥ãS÷Ï@2*çÕfÏB@1t“t¼j@1sñA [À@0cÉîËû@0c¯·éú@0cÉîËû@0dzáG®@0cÉîËû@0c¯·éù?­éW«ZM›?]àÛ‘?‘ÓKñá»Ù?ŒvHn&³?ç\Š2˜?‘£‡9²þ? Eˆ‡ðó‹?“ÈÂ`?“ |ɽ‡?Œ°1Ù?‘ ^Íü?ÿ?ó‹P=´?¯x“Jß?ŒïQ¼º“ã?ƒ´],m=?ƒE 8?†å·ÑfWà?‡´*žZ}Õ@@@@@@"?ð?ð?ð?ð?ð?ð¿`0Ü[£¿MÆg'”?1? ‹6?T%ô R@“@¢ÿ» Dë@®í¼l;ò?B»'ª#½Û?keôr2—O?€WóxZx?Ñ4cÌBM6@Ÿp˜„&»U@Q@«_ûçl‹D@«_û¥ãSø@«_ûçl‹DÁ.„€@«_ûçl‹DÁ.„€@«_ûçl‹DÁ.„€@«_ûçl‹D@«_øÔýó¶@«_ûçl‹D@«_ùÛ"Ðå@¯ŽG®zá@¯ŽDZ¬@¯ŽG®záÁ.„€@¯ŽG®záÁ.„€@¯ŽG®záÁ.„€@¯ŽG®zá@¯ŽB Iº^@¯ŽG®zá@¯ŽG®zá@6L]cˆe”@6JqÞi­C@2Lí‘hr°Á.„M‰ûçm@1¤¼j~ùÛÁ.„QnÙ‡@1 ¿±[W?Á.„NÜC,¥@1 ¿±[W?@1¸Që…@1 ¿±[W?@1 +–»™?žˆ2}@8#˜@8¾:@8 >+?ðŽºJ+½?ð‹Ið˜ ?„F/·ÿP5@8Î÷@8i§@8Å?ðÅìq?ð„‰p„Ã?ƒ]€µ,VÞ@8 * @8p÷@8¶?ð?oÚ•¼?ð?oÚ•¼@?ð?ð?ð?ð?ðøøøøøøøøøøøøR@ªýp£× +@ªýó¶E¢@ªýp£× +@ªýæšÔ,@ªýp£× +@ªþÅm\û@ªýp£× +@ªýIQ‚ª@ªýp£× +@ªý—ö+k@ªýp£× +@ªüú¬Ùè@ª’Rn—P@ª’Rñ©ûç@ª’Rn—P@ª’S@N¤©@ª’Rn—P@ª’SÃa@@ª’Rn—P@ª’RÊW§‡@ª’Rn—P@ª’S×Ûõ@ª’Rn—P@ª’R䎊s@3kµsê´@3k'»/ì@/på`A‰7@/pò{²þÅ@/*Àƒn˜@/*0U2a|@.`ªdÂù@.9XbN@.`ªdÂù@.záG®@.`ªdÂù@.¯O „L?|¬Çëý ?Òç{íj?‘1f_¨Ï÷?Œݶ\ñr?òǹíT­?È2I/?|¬Çëý ?’0nà=Q“?–ÐO(·Š?@§[*^?îCq$u?–’+¸¢d?‚uÞ@>N ?Œ¸†‡ÄÅ?‚¸“Îè ø?ƒ†+ Å?†£îž«î?†Ë¢L1Ù@@@@@*@,?ð?ð?ð?ð?ð?ð¿&ŽKÙ@? 7ò? ­%̓)1?Ó0þƒVË@ªý‘¾›@ª’S^ÈB?+ ¬¥.?2*–åì?d±•+8¯é?qª†’ñ@ŸfåfX$Ã@S@¡H›¥ãTÁ.„€@¡H›¥ãTÁ.„€@¡H›¥ãTÁ.„€@¡H›¥ãTÁ.„€@¡H›¥ãTÁ.„€@¡H›¥ãTÁ.„€@žã¸Që…Á.„€@žã¸Që…Á.„€@žã¸Që…Á.„€@žã¸Që…Á.„€@žã¸Që…Á.„€@žã¸Që…Á.„€@9í¥œàvÁ.„>¤µÜÆ@5óS÷ÎÙÁ.„M‰ûçm@5.ùÛ"ÐåÁ.„QnÙ‡@4¡:’£SÁ.„NÜC,¥@4¡:’£SÁ.„NÜC,¥@4¡:’£SÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøT@¦ß;dZÁ.„€@¦ß;dZ@¦˜7´¢4@¦ß;dZ@¦—KƧð@¦ß;dZ@¦¡ÊÀƒ@¦ß;dZ@¦ª Þ@¦ß;dZ@¦­5¨Xy@Ÿ.áG®{Á.„€@Ÿ.áG®{@Ÿ.šu@Ÿ.áG®{@Ÿ.‹xFÜ@Ÿ.áG®{@Ÿ.š¬1@Ÿ.áG®{@Ÿ.‹’:)Ç@Ÿ.áG®{@Ÿ.‰7KÆ©@9Û¹Œ~($Á.„>¤µÜÆ@3Ìí‘hr°@3ÀIQ‚ª@3)Û"Ðå`@3’:)Çz@2ºÔ,<ží@2±°‰ 'R@2ºÔ,<ží@2·škP°ó@2ºÔ,<ží@2¸ Ô•+@8J¨?£-Ÿ56æ+?¢µ‰Š’b?•Ô¦?n¸?ŸrA:/™?›8½üãüÏ@8J¨?Á®æ’,g?®…á—{2Š?¥ŸÒ?¤pè·FÌs?¦ò CQÍ«@8p÷?žåÌÆöj?›Mf¸ ?”µ¨É™›Ò?¢2ðø:Uù?£R|à¹Ý@@@@*@*?ð?ð?ð?ð?ðøøøøøøøøøøøøU@¥´/²-@¥´/Òòå@¥´/²-@¥´0ú`P@¥´/²-@¥´09˜@¥´/²-@¥´0àœŒ%@¥´/²-@¥´./§Ia@¥´/²-@¥´/ÃÅ(ó@œY„“t¼@œY„›¥ãT@œY„“t¼@œY…Q¿¥Ù@œY„“t¼@œY‡‡ ù@œY„“t¼@œY†‹<”@œY„“t¼@œYƒ¤aG@œY„“t¼@œY†•ÐxÞ@4ð4mÅÖ8@4ïzhJ[°@0©‡+ @0©/Õ4]@0Ú~ùÛ"Ñ@0ÛP›%„ó@/a-w1Å@/b#¨ù-=@/a-w1Å@/a8‚‘*:@/a-w1Å@/až¥r?|çµB &€?Ù£šA±V?‘+m«7¡Ø?‹®´¤:Xv?‘/Æ[ap?´ž˜Û`?|Ñb×¶@?’ õ‘Ò?˜‘ð1¢!?1“œáí?è…F7*?Kö~½P²?‚qÑ9Ð?Œ½Ê À ?ƒmÃá6›`?ƒÞFÜà ?†ŠÇ¤E+?†‡gÓ¼c@@"@$@ @0@,?ð?ð?ð?ð?ð?ð¿è ? i¬€?0“Ü)‚¿?$-¯@…%@¥´/Á}ò@œY…+ƒ¡?Pfqw³a?D’>³Ýf?­¥4QòF"?–+O%ÒX@ŸfýÉËô@V@«§¶E¡ÊÁ@«§±©ûçm@«§¶E¡ÊÁ@«§¶®}Vm@«§¶E¡ÊÁ@«§¸Që…@«§¶E¡ÊÁ@«§·süQ@«§¶E¡ÊÁ@«§¶4ê@«§¶E¡ÊÁ@«§µsê³h@«Ö`A‰7L@«Öa$Ý/@«Ö`A‰7L@«Ö^ߤ?ç@«Ö`A‰7L@«Ö`·€4m@«Ö`A‰7L@«ÖaTÉ…ð@«Ö`A‰7L@«Ö^ߤ?ç@«Ö`A‰7L@«Ö_—$tT@7ÿ–»˜È@8¸Që…@1×+ Iº@1×RT`ªd@0ä¼j~ùÛ@0äêJŒL@0ý!ÿ.I@0ö”Fs‚@0ý!ÿ.I@0æšÔ,@0ý!ÿ.I@0Ë)^ž?«á¬å÷‰?ï1ïºÅ?‘âTÀÊS“?ŒªèkÜ?‘¾%î +ã?‘‚ÊŸû©?žˆ2}?’j•×›c?‘8“‡«G?á>G]!?ë,YÁ?‘A_f;j?–í +e˜›ð?GÚ +­ ?ƒ´],m=?ƒ ?ÿ½?†Ë¢L1Ù?†ïRÉv‘Ñ@@@@@&@*?ð?ð?ð?ð?ð?ð¿1üÏ(¿6M¹0?FÓóúAv +?)òô9v?¸@«§¶f± ²@«Ö_ýnn?Yºk¶Fð?PhPô¬Û6?®hKüÂld?ž9LÑ@ŸpÅ—ƒ~@W@ŸÍ["Ðå`@ŸÍXUGS"@ŸÍ["Ðå`@ŸÍUPôm@ŸÍ["Ðå`@ŸÍS˜œ¼@ŸÍ["Ðå`@ŸÍQ>Z[½@ŸÍ["Ðå`@ŸÍK¾½l@ŸÍ["Ðå`@ŸÍC“áN-@¡’‰7KÇ@¡‘ÿ|í‘h@¡’‰7KÇ@¡’0ÂßÏ@¡’‰7KÇ@¡’”(å@¡’‰7KÇ@¡’sJ'@¡’‰7KÇ@¡’ ®5ë@¡’‰7KÇ@¡’ªÌë@6¿–»˜È@6ÀÕ+1·@2©‡+ @2©ñyˆ@1È“t¼j@1Ç@ÌÁ³¸@1+xFÜ^@1%™™@1+xFÜ^@1$2Œ0Õ‹@1+xFÜ^@1$Óšð?¥¢É?‘Qì%±?’˜~dOÖæ?fb +YÀ,?’~¢7ix”?“Od·Bþ!?‚n—O߇?†{C%O]"?ŠF÷ÉÌ?Ž(¾„,!B@@(@(@,@6@4?ð?ð?ð?ð?ð?ð¿_ûáwt?W†£WZ?5þf©ÓD?Bj‘×À„@ŸÍOV?‹H@¡’>Áá¢?T3¢÷²8?c—Þ¡mÈ?¥»é«{ ?ÉAu8H@Ÿj.¢°@X@¦ë5?|îÁ.„€@¦ë5?|î@¦ë%çKë @¦ë5?|î@¦ë'ú›ü§@¦ë5?|î@¦ë$ŸÕJÎ@¦ë5?|î@¦ë"k6¥@¦ë5?|î@¦ë {(%@–Ä›¥ãTÁ.„€@–Ä›¥ãT@–é!$OC@–Ä›¥ãT@–²ÍgL¤@–Ä›¥ãT@–¬:öަ@–Ä›¥ãT@–œâðE‚@–Ä›¥ãT@–ûub%@8T xFÜÁ.„>¤µÜÆ@4ÎÙ‡+@4|¨žh¼@2±‰7Kƨ@2ªüo$Þ‘@2Š0U2a|@2†SKÒ@2Š0U2a|@2‡"ûæ@2Š0U2a|@2‡|>ö:@8J¨?‘õå'g?‘Ãiãtv ?‹ÒK! Å?“dô{B?“þ +ÞÓwú@8J¨?’‚ATa?’Š6·ë©?u°Ç8þ?•ÛÁäŸ?–Z`ªLâ@8p÷?³÷z\Ç?ƒzÆô¤?†KªwÀK?Ž7üÒÏ?Œ%dŸ](¿@&@"@"@;@:?ð?ð?ð?ð?ðøøøøøøøøøøøøY@¤×Oß;@¤ëƧïŸ@¤×Oß;@¤ÍÒñ©ü@¤×Oß;@¤ÐbMÒò@¤×Oß;@¤ÑÎ_@¤×Oß;@¤ÙÛ"Ðå@¤×Oß;@¤Ø}¿I@¤ãmV@¤ãkƧïž@¤ãmV@¤ãl/ƒ{K@¤ãmV@¤ãeðoiD@¤ãmV@¤ãnHè§@¤ãmV@¤ãl‹C•‚@¤ãmV@¤ãl篷@7Ì]cˆe”@7¾záG®@4i‡+ @4mÈK]Ì@3’Ðå`A‰@3™ÞÑ·@2á:’£S@2é0¾ í)@2á:’£S@2â×sü@2á:’£S@2æÜ]cˆf?–ªÎ­¡?œ;=?ªT?¤MD¢e?Ÿ½¼/õ?— +æÙõ¡? ­DIö½x?„F/·ÿP5?–¦ÆçŽ +?ž(?{k4?’ƾ| ?–%¥ê3–?˜6@(/ÇÝ?›˜tgiê?•è­¸‡?š?G'ôÜ?ϯ<«¬í?’÷ ¬n±?¾]M>s &@@@@@*@,?ð?ð?ð?ð?ð?ð¿q¼¨ˆû€?5VYX°?ahW$DGÐ?1`)~ˆ@¤Þ Ù@¤ãlÈD©j?€|~ÛYjl?R‚<5d?èà%;$­U? »g%ŽÎC@ŸiúÒE²ª@Z@¬¿^5?|î@¬¿^vÈ´9@¬¿^5?|î@¬¿_¼@¬¿^5?|î@¬¿_;dZ@¬¿^5?|î@¬¿^5?|î@¬¿^5?|î@¬¿]/Ÿ½@¬¿^5?|î@¬¿]—ö+j@®b Iº^5@®b ÌÌÌÍ@®b Iº^5@®b Iº^5@®b Iº^5@®b ²•éâ@®b Iº^5@®b /ƒ{J@®b Iº^5@®b ûµt@®b Iº^5@®b Ƨïž@3›¹Œ~($@3›¹Œ~($@/kƧï²@/k6z•@- ƒn—@-ŸŠ Þ@-Vð¸»@-UÜÆ?@-Vð¸»@-Uéá°‰¡@-Vð¸»@-U›=ÈL?|öOÿÝ?ß‹’bÏ?‘$Cê¡@í?‹ÝÉ!ë#?‘¾%î +ã?¼‚Ë¡K?|¬Çëý ?’NÛˆV(?ŠA)Nîá?]bËn~?Ó%y*£=?X78›š?‚oÁÆÜ§ö?Œ°¶.Ä+Æ?‚yî8Á$?ƒE 8?†µ°jÆÃ?†l&þ@@@@@"@?ð?ð?ð?ð?ð?ð¿+h/À¿+̾`?ƒò·\˜>à2S[j @¬¿^½ïZ@®b V›<Þ?3mÔÞJL?…~½D?to9Ðu‰ˆ? …ýb÷Ô@ŸföÝ8ó@[@§Çûçl‹D@§Çòn—P@§Çûçl‹D@§È +W§†Â@§Çûçl‹D@§È BÃÉî@§Çûçl‹D@§ÈÂø7µ@§Çûçl‹D@§ÇøQë…@§Çûçl‹D@§ÈË)_@¨jÒn—P@¨jÒ-V@¨jÒn—P@¨j³3333@¨jÒn—P@¨jÉk¹Œ~@¨jÒn—P@¨j·§†Â&@¨jÒn—P@¨jµY³Ð~@¨jÒn—P@¨j³©*0V@8*0U2b@8³Ð|„¶@3&‡+ J@3¯O „M@2H“t¼j@23n.±Ä3@1Œ¿±[W?@1|/ƒ{J$@1Œ¿±[W?@1y™™™™š@1Œ¿±[W?@1vµ '¼?¡EÉ@Ú? …BÓ÷ ¡?£ˆ‰•ýkç?‘¾®ªŸV?¨@t¾†~?˜úiêÔÇ?¦NIÉ®š?¢²Ö¤}Ð?¹ £qÅõ)?–ª'G_ßJ?µõÓâ$,? îê÷Ï!?£ešñS„‰?3ßa=„?“'ü#šgã?…®×__C?‘HAõY‚§?™ þg¿@@@@@*@ ?ð?ð?ð?ð?ð?ð?jß“¡]¿w [W?b”.Sg†?b^jêsò @§ÈΘ<ð@¨jºi¯þK?{ª&T>ØÓ?{‘)nÿƒ ?ã—³¯äV„?Ôúv¤º@Ÿl‰9ù¯@\@¤7¡ÊÀƒ@¤7p£× @¤7¡ÊÀƒ@¤7œPHð@¤7¡ÊÀƒ@¤7¤oi@¤7¡ÊÀƒ@¤7¢¶®}V@¤7¡ÊÀƒ@¤7žÒˆÎp@¤7¡ÊÀƒ@¤7Ÿò䎉@ ²“u@ ²!ÊÀƒ@ ²“u@ ²,1&é@ ²“u@ ²Cþ\‘@ ²“u@ ²Oß;@ ²“u@ ²z—@ ²“u@ ²òä@7„¯O „M@7…éá°‰ @2ã÷ÎÙ‡@2ÑA [À@1È“t¼j@1¿ß;dZ@1QÞi­BÄ@1Mžƒä%¯@1QÞi­BÄ@1OŠ Þ@1QÞi­BÄ@1P6âë? Eˆ‡ðó‹?Žd±Ìº?’måGSžq?:LÓá +í?“øâ#0ŸY?˜}>h”'?ˆÿÀ)T¿Æ?–gÝ3ýø’?‘F·ˆRX†à?‚˜YªüÏE?OéáÜtx?„„OW°ó?‘˜†Œ/ž?%üdêË?—ÂÔèÄè@@@@@,@,?ð?ð?ð?ð?ð?ð¾ã=|´¿idFùk?Pw ~Îíì?6mƒ,òH@¤7 ‹½Ç@ ²eÒ ‘?f©ÀIÖy?Wòòóóôõ?Áêz°r˜™?ª–®Ÿ{ØD@Ÿm7B’@]@¨<í‘hs@¨;FêVz@¨<í‘hsÁ.„€@¨<í‘hsÁ.„€@¨<í‘hsÁ.„€@¨<í‘hsÁ.„€@¨<í‘hsÁ.„€@šLÌÌÌÍ@šH´9X@šLÌÌÌÍÁ.„€@šLÌÌÌÍÁ.„€@šLÌÌÌÍÁ.„€@šLÌÌÌÍÁ.„€@šLÌÌÌÍÁ.„€@8Ô xFÜ@8ìDpˆ_@4sS÷ÎÙÁ.„M‰ûçm@4å`A‰7Á.„QnÙ‡@2n_oÒ Á.„NÜC,¥@2n_oÒ Á.„NÜC,¥@2n_oÒ Á.„NÜC,¥?–…­à Ø—@8#˜@8¾:@8 >+@8Iç@8Ù?«cnæçÅ€@8Î÷@8i§@8Å@8S@8û—?¾‚+;=ÑH@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø^@¦¸“t¼j@¦¸“¶E¡Ë@¦¸“t¼jÁ.„€@¦¸“t¼jÁ.„€@¦¸“t¼jÁ.„€@¦¸“t¼j@¦¸’n—P@¦¸“t¼j@¦¸’GE8ï@¯†k…¸R@¯†k…¸R@¯†k…¸RÁ.„€@¯†k…¸RÁ.„€@¯†k…¸RÁ.„€@¯†k…¸R@¯†k]Ìcð@¯†k…¸R@¯†k]Ìcð@1Ñ|ÚQ@1ÒˆÎp:ü@-á‰7KƨÁ.„M‰ûçm@,†éxÔýôÁ.„QnÙ‡@,³üPHÁ.„NÜC,¥@,³üPH@,³©*0U4@,³üPH@,³t¼j~ú?É_\p)Ï@8#˜@8¾:@8 >+?‘ ·èf?ÃwZL?ÐbMçê_x@8Î÷@8i§@8Å?Î ¯xV?Sñƒ´V.?‡çÐ4eè¹@8 * @8p÷@8¶?†£îž«î?†‰Oú|q@@@?ð?ð?ðøøøøøøøøøøøø_@¥ìå`A‰@¥ì–E¡ÊÀ@¥ìå`A‰@¥ìvâ8ª@¥ìå`A‰@¥ìopKQÔ@¥ìå`A‰@¥ìf +¦L0@¥ìå`A‰@¥ìçiöú@¥ìå`A‰@¥ìŒô;­ë@”VvÈ´9X@”VeU’ôV@”VvÈ´9X@”VÖ”¦GÎ@”VvÈ´9X@”V¹3mïÑ@”VvÈ´9X@”V½kÚ8`@”VvÈ´9X@”V­?ÙÙæ@”VvÈ´9X@”VˆÿÆÌ@8N쿱[X@8SŸ¦âßz@3õãS÷ÎÙ@3çĺÌ`[@2ìj~ùÛ#@2Þ†òïº@2³&Á½¥@2˜òZÒ¦H@2³&Á½¥@2žFAŒ$@2³&Á½¥@2Á?Ù¾ù?ª>­¹,Ì*?¦ºãOÎ_?§# +t¨®?¬˜v7Ê7|?™nVVª*V?¡)jgÆÃ¯?¢-CÁ]?§ž\À·ãç? å¿š"²~?¤ÛÏœÔ?¡ v¬òe\?© +ÉkÈ™ç?¦ýv´¸íV?œ™wEH?— ”¤Žn”?˜í±¨á‘?¦V¹y/s?•앸4ÿƒ@@,@,@,@5@6?ð?ð?ð?ð?ð?ð?!Kå P?yÚÅe@?y†ße?t£Îžû’@¥ì‹•È8^@”Všç/¹ÿ?“†½,ìA?“ËC%! +@þBô³õ?ý8“`j@Ÿm¢à²ÀB@`@§ …¡ÊÀƒ@§ ‹ I»@§ …¡ÊÀƒÁ.„€@§ …¡ÊÀƒÁ.„€@§ …¡ÊÀƒÁ.„€@§ …¡ÊÀƒÁ.„€@§ …¡ÊÀƒÁ.„€@¦0¬1@¦/½²-V@¦0¬1Á.„€@¦0¬1Á.„€@¦0¬1Á.„€@¦0¬1Á.„€@¦0¬1Á.„€@8wâ‚@·€@8*Ú¹õY´@4?|í‘hÁ.„M‰ûçm@3€å`A‰7Á.„QnÙ‡@3ÚQÎÁ.„NÜC,¥@3ÚQÎÁ.„NÜC,¥@3ÚQÎÁ.„NÜC,¥?»sW…Ç]â@8#˜@8¾:@8 >+@8Iç@8Ù?ÖwípÑ@8Î÷@8i§@8Å@8S@8û—?á×¢”H®'@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøa@ nÀƒn˜@ nÄû¤æ@ nÀƒn˜@ nËzƒ<Î@ nÀƒn˜@ nÖÏÇ@ nÀƒn˜@ nËøY¹º@ nÀƒn˜@ nÅK»7@ nÀƒn˜@ nÈ›òüQ@£©Â\(ö@£©Ë…¸R@£©Â\(ö@£©²'»Ÿ@£©Â\(ö@£©Ã˜¢@£©Â\(ö@£©¶‹ì¼#@£©Â\(ö@£©Ã.^@£©Â\(ö@£©¾êÄ?‡@7¥öý!ÿ.@7ŸåÉä@3Œí‘hr°@3˜²´«LK@2ñ‰7Kƨ@2ûÀ§Ã@2(è§æ›@2/߬Ÿo[@2(è§æ›@20¡ÆÂÉ @2(è§æ›@2/Óïípe?…ðE[i)?ä*§¶eÔ?’¡R¸ì»Ã?o³›¿ç?“côaК!?’½ÎŒ£#?~ì“?ÕÒJ?’¤]ŸøY?’±Nþw +?“…wæà¨™?“nÞë·Ñ_?‘žH³Õ2C?MœÅ…?“ª4SÐ?o;!†Rõ?‡úËRI=?Šåýëh9?‰ïY¯†õ@@ @"@&@9@7?ð?ð?ð?ð?ð?ð?Gù>œ¿h7cÀ¿?LV"…t"@¦læffff@¦l篷é@­å¤Ý/ @­å¥`A‰7@­å¤Ý/ @­å£¯·é@­å¤Ý/ @­å¤Z¬@­å¤Ý/ @­å¤¨ÁTÉ@­å¤Ý/ @­å¤¨ÁTÊ@­å¤Ý/ @­å¤oi@5?–»˜È@5@6âë@2+ Iº@2fffff@0ô“t¼j@0óMjP@0ºÔ,<ží@0»µsê´@0ºÔ,<ží@0º0U2a|@0ºÔ,<ží@0ºqÞi­C?|öOÿÝ?W[†?‘šÕU#?Uóú*˜?‘\Žýµ€7?Êëüâi{?}Ñ¿ž,?“Á4œÝi?„¦Ô•]I?· ÝûYÁ?‘&”T¦mÂ?hï,ðà?„m~Z_s,?GÚ +­ ?ƒ<Õp?ƒ3¸Î{Z?‡ã ËÄž?‡2[síç@@@@@*@$?ð?ð?ð?ð?ð?ð¿Ϫ5À¿(”üÛ€?Ý“ãHv>þ +`ý‹z@¦lç!å‰Ù@­å¤òÓ¬Ó?8ôœWE«?´ ß²N?€Y”òê-Ä?G•KõÃ÷@ŸgªY@c@Ÿææffff@Ÿææffff@Ÿææffff@Ÿç4mÅÖ@Ÿææffff@ŸæèÓüÅ@Ÿææffff@Ÿæã¢œw™@Ÿææffff@Ÿæßº‰Úµ@Ÿææffff@Ÿæßú ð‹@£;Ÿ;dZ@£;Ÿ;dZ@£;Ÿ;dZ@£;­¡¦Øó@£;Ÿ;dZ@£;–¦k³f@£;Ÿ;dZ@£;˜âe,@£;Ÿ;dZ@£;™»‰>×@£;Ÿ;dZ@£;› 9Sg@2wâ‚@·€@2wåÉä@0µãS÷ÎÙ@0ÄHt±P<@0q‰7Kƨ@0výá¡Ú@/á-w1Å@/â&€IR@/á-w1Å@/ëS†M@/á-w1Å@/æ±l\?É^ž6õP?ÑwæaGÄ?‘Ö·øHkÖ?Ú¾ÉÛ²º?‘)ÕCŸ3²?‘gúÉœY^?ÐbMÝn½?’%l ÇZ?“¸¹R*ò?‘§›ßÉîj?‘[w}^ʨ?‘#q·¥A?€bwÄ' g?Œ»&&Y?„æ €ÛÑ¿?†O.ce?ˆ7kPÍz¿?а­ÈÇ­7@@@,@@9@7?ð?ð?ð?ð?ð?ð¿L®‚`?L«dÔk€?3Ðc±0‹?2‘è¿èþ’@ŸæáW}°t@£;™Î‘â?Bâ@Û¹?Ai3›ù?ô„6 3z?w¯/ c¬#@Ÿs5pP @d@£Óª~ùÛ#@£ÓšáG®@£Óª~ùÛ#@£Ó©ÞÓ@£Óª~ùÛ#@£Ó§Ë)_@£Óª~ùÛ#@£Ó­5¨Xz@£Óª~ùÛ#@£Ó¨Ë’9@£Óª~ùÛ#@£Ó©º^5?@©KƧïž@©Hr° Æ@©KƧïž@©KƧï@©KƧïž@©O'»/ë@©KƧïž@©PË)^ž@©KƧïž@©O–»˜@©KƧïž@©OŸ¾w@8*0U2b@8œwškP@3xr° Äœ@3zÍžƒä&@2±‰7Kƨ@2µ¨Xy=Ú@2J0U2a|@2L²•éá±@2J0U2a|@2L(õÂ\@2J0U2a|@2K’:)Çz?¡EÉ@Ú?•@K/Ùz?“1‘´¹V?ŒÇQ´ž¬ˆ?‡»¢Øˆ‹?‡W·ŽA:Þ@8 Ø?¾Á{þÆ%@@@@@&?ð?ð?ð?ð?ðøøøøøøøøøøøøf@¯—2-V@¯—•ÂÞ¯9@¯—2-V@¯—4~‹f7@¯—2-V@¯—09 r@¯—2-V@¯—5 SÖ,@¯—2-V@¯—1¨*Ï4@¯—2-V@¯—0å`A‰@”˜~ùÛ"Ñ@”˜ A‰7K@”˜~ùÛ"Ñ@”˜xœÁåO@”˜~ùÛ"Ñ@”˜sBÝñ@”˜~ùÛ"Ñ@”˜uMU@”˜~ùÛ"Ñ@”˜yQù²@”˜~ùÛ"Ñ@”˜|¹Ãƒ@8­¥œàv@8 šD@2Ê^5?|í@2Á÷ÞA¾è@1©Û"Ðå`@1¨t{û†@0¸DЩ*@0¶$31@0¸DЩ*@0µÎÈì±”@0¸DЩ*@0µéÌdä?Ó%Û2)ž`?>™k^Ú?‘žUw³ÿ&?‹Ó²Ãég?‘(e±­ ­?ãÎ?ay?Ær4?’m:ûx'?‘ÿ7›ýùì?qHõO?‘,Ð^þÚ°?›ôÃËÁ9?ëC ãs¹?€¶ÍÅ?„ |Ð~?ƒ[yמíG?‡X¶ yäa?‡AShŠU@@$@,@(@9@4?ð?ð?ð?ð?ð?ð¿bNaI?`XÍó ?`GŸì³?XY’¥ØÊæ@¯—2æT[Ï@”˜x!*é?o!Æë„=?gT`¡Es?×[Å¥ h?Ç'£Yƒ_þ@Ÿs …ý#@g@¢€@¢€ƒn˜@¢€@¢$Ý/@¢€@¢‚&€H@¢€@¢‚@·€4@¢€@¢€IQƒ@¢€@¢Ø­«Ÿ@­Ñë…¸@­Ó3333@­Ñë…¸@­Òñ©ûè@­Ñë…¸@­Ò½<6@­Ñë…¸@­Ò½<6@­Ñë…¸@­ÑÞi­C@­Ñë…¸@­ÒGE8ð@7ÖšÔ,<Ÿ@7Ú¬1'@2 Ä›¥ã@1ÿìVÕÏ«@0ö§ï²-@0÷¯·é@0‘Þi­BÄ@0’©“ àß@0‘Þi­BÄ@0’ÊW§†Â@0‘Þi­BÄ@0’ò䎋?Œs¤DÅÐ?ZÁ».œ?‘ÄÑ ø?ŒôƒA˜c ?‘¿ÐÅu?‘W×ý°A?1·†Æjñ?’,ö´´Ï#?™Îd0RÜ?‘.“¥?‘ ÛÌÏõA? êBÐ8ã?† + Ðló\?Å9–o?‚ù…žÄ`x?ƒGϵ¨í'?†µ°jÆÃ?‡×7°º@@@@@$@(?ð?ð?ð?ð?ð?ð¿Eݺ ¿.€X@?6ÑIÈÍ?¼1t2'V@¢€ç…Q)@­Ò™<ñ ?T6¯‡ŸkÈ?2\šbýŒ?ªätöåvd?l<#9œ@Ÿjl‚¦¦@h@«ÐËÆ§ïž@«ÐÒn—P@«ÐËÆ§ïž@«ÑnµË§@«ÐËÆ§ïž@«Ðä!›7ý@«ÐËÆ§ïž@«ÐÜàuk'@«ÐËÆ§ïž@«Ðäfãfn@«ÐËÆ§ïž@«Ðßv$ñ@™úâMÒñª@™úèsüY @™úâMÒñª@™ûüõ‘@™úâMÒñª@™ú莀@™úâMÒñª@™úÿ›=AÛ@™úâMÒñª@™úù‡Úó@™úâMÒñª@™ûË7Ç@7Y*0U2b@7[°™X"ö@4Ò Iº^5@4¶…ßF M@3²-V@3ºÁÞcç@2Þ«6z‘@2Í”³J˜G@2Þ«6z‘@2ÎõÐK—@2Þ«6z‘@2ÎÛçõó?’ÌRû ã?›/¾’sµ?›3ÒsLý¦?1ň_?8U`¦¸ÿ?–Ñh<Žw?|¬Æ Væ?™6عÊÓ?•ÍIé^?”9(GÂ|–?šaˆ£mü2?™›G(Žy?)hä¤ù%?–ûzמÈ?ïÜr!¹1?†²2bê§?ŒÝïâå¬?’—h÷aÇÒ@@&@(@&@9@4?ð?ð?ð?ð?ð?ð?iV T?gÇÎT?Nþ€Œ“,?DÐwY}Qá@«ÐÛ*ÏG@™úöæ¿X?j2fQŠi?g %ìüÞR?ÍÉ¥@˜€?ÉP<˜Ôß<@Ÿhê¦Ø'„@i@¡’p£× +=@¡’o\(õÃ@¡’p£× +=@¡’Vz—@¡’p£× +=@¡’[quŽ"@¡’p£× +=@¡’QuŽ!–@¡’p£× +=@¡’KC,¥@¡’p£× +=@¡’Fµ (@©ù4¼j~ú@©ù4záG®@©ù4¼j~ú@©ù)ÞÒ@©ù4¼j~ú@©ù,1&é@©ù4¼j~ú@©ù&Ü]cˆ@©ù4¼j~ú@©ù#n—Ž@©ù4¼j~ú@©ùOv_Ù@5µS&Á¾@5´êJŒL@2; Iº^@2?·éùr@1±‰7Kƨ@1¯;dZ¬@1YŒ~($ @1U®æ1ø @1YŒ~($ @1YÞѸ@1YŒ~($ @1Y 'RTa?1·†Æjñ?šÏD²öå ?•Mq —¦?˜Ë=ð½ìÔ?’Þäi]i?™zÀnÝÿ?1·†Æjñ?™Ú"üT÷î?’t-Eü?“¶Ì¶Öj”?”îC¯·æo?’ω:hT†?†' +³}÷B?™:K²ïÏ?ˆT“Ÿÿ?’aP¸¾¦Ö?Ž .0åv?‹&¸ê±fÂ@@@@@(@*?ð?ð?ð?ð?ð?ð¿‚bž§@¿r’Úš–?IgZDL0?+7Á¼o@¡’]°—R@©ù+In`?höÇè‘ÝŠ?Jô•Þž®Â?ÕQ,ÅŒ¥?ž +©Õ‚@Ÿež5ÈêÐ@j@¤¹#× +=q@¤¹+…¸R@¤¹#× +=q@¤¹$÷eý‹@¤¹#× +=q@¤¹#ñA \@¤¹#× +=q@¤¹$%®æ1@¤¹#× +=q@¤¹!ò×s@¤¹#× +=q@¤¹!TÉ…ï@®a´¼j~ú@®a»çl‹E@®a´¼j~ú@®a±Ä2ÊX@®a´¼j~ú@®a·Oß;@®a´¼j~ú@®a¸DЪ@®a´¼j~ú@®a´¼j~û@®a´¼j~ú@®a´‡ü¹%@7Ç>«6z@7¿Ÿ¾vÈ@3º^5?}@3P°ò{³@2y7KƧð@2z^5?|î@1kxFÜ^@1m‘hr°!@1kxFÜ^@1l1&éy@1kxFÜ^@1kô‡ü¹$?•²»UbB2?Eˆ‡ðó‹?’Q/Èö +®?ŽwX/8?‘ŠR%¨(0?‘f]£àG?€‚ñêã ?“-N•I`(?‘}7ˆ.Ñ?‘’â·ýÅ?‘¾ãazÅ?‘C å;Ã?ŽŽp±µær?Žrø·óæ?„m~Z_s,?…<ò N ?‡ã ËÄž?‡YÍ_@@@@@$@ ?ð?ð?ð?ð?ð?ð¿`ÕRYE¿Yæ0Ü?8•Æ ê È?#·×~> @¤¹$ªªN¾@®a·na?Sæ9Õñ¨.?FΚ¶,”?¤#˜j(â’?‘Ó{Hð@Ÿl;öð¤@k@¤©ûçl‹@¤«C•@¤©ûçl‹@¤¦éxÔþ@¤©ûçl‹@¤¬1&é@¤©ûçl‹@¤¦ +¦L0@¤©ûçl‹@¤³¶WŠ@¤©ûçl‹@¤ª6´ã>@œß²-V@œß›¥ãSù@œß²-V@œß¨Xy=Ù@œß²-V@œß»µsë@œß²-V@œß¥œàv@œß²-V@œßšŠ}Ñ@œß²-V@œßŠ=p£Ø@6=:’£@6;¡‘}@33S÷ÎÙ@3,~($ x@2¤¼j~ùÛ@2 ƒn—Ž@2._oÒ @2%ãS÷ÎÚ@2._oÒ @2躇@2._oÒ @2$ê¦\”n?|¬h2:“?’ Œ#Çî«?–/ØÃ‡fð?’³Žbtx=?åt—8 ½?–ø¼àÈM¹?‚n—Oß«6z@3p–»˜Çã@3{W>«6z@3p–»˜Çã@3vlô!.?›’qvš°•?˜+Rjþa?§çÆÿë?–&1‰}º?']ð—‘?¢cJlD¿?›’qvš°•?¢¾S̵EÙ?«Þô¯®€?šBÁ3ÍÆ?–Y:ŸèJ?™›,4rÕ9?³fgÁ˜?–l&ÿ?¢Ì÷y\ÛÎ?”*+JÒšF?’Oûh´6c?©P$`¾*@@@@@,@,?ð?ð?ð?ð?ð?ð?QMOÞL?w‡&Ž×€?BlÙ5–Ý?Tïñ>GÛ@§êíšM,@«ï+ãL×ä?^¿¤…ÆH?r2’îlº?£’Þ¦ 9Î?Ð_Õtc°˜@Ÿl}÷rQ@o@¡NaG®{Á.„€@¡NaG®{@¡Nƒn.±Ä@¡NaG®{@¡N‰ÞÒ@¡NaG®{@¡N‚MÒñª@¡NaG®{@¡N…zxl"@¡NaG®{@¡Nn±Ä2Ê@­$Ý/Á.„€@­$Ý/@¬ÿõϪ͠@­$Ý/@¬ÿê³g ù@­$Ý/@¬ÿð:û~’@­$Ý/@¬ÿôFsØ@­$Ý/@­Z¬@904mÅÖ8Á.„>¤µÜÆ@2 +^5?|í@1éÀëíúD@1¤¼j~ùÛ@1}ÈK]Ì@0«xFÜ^@0Žß¤?åÊ@0«xFÜ^@0Œj~ùÛ#@0«xFÜ^@0HðŽ@8J¨?®ÖJ éf?¨bY¶®å?ž‹¬':î?­˜›œÓ0O?µKA¢bŒ@8J¨?ªåøÖ¶£­?©Jœ£&Ñç?¡"JîÃ!?¡^候¼?—œ­ÛpùÄ@8p÷?”ïœ`µPŽ?aäŽ +Ù?‡õ{CxÞ?%üdêË?¢¯À<ÝÞ@@@@,@&?ð?ð?ð?ð?ðøøøøøøøøøøøøp@«ãgï²-@«ãhr° Æ@«ãgï²-@«ãhšu%@«ãgï²-@«ãi*0U2@«ãgï²-@«ãiã½@«ãgï²-@«ãfö”Ft@«ãgï²-@«ãgË)`@­n ÌÌÌÍ@­n V@­n ÌÌÌÍ@­n jO@­n ÌÌÌÍ@­n \ú¬Ú@­n ÌÌÌÍ@­n ²•éâ@­n ÌÌÌÍ@­n 5¨Xy@­n ÌÌÌÍ@­n ô!-@0¿–»˜È@0¿–»˜È@+WKƧï@+WXâe+@+XÔýó¶F@+Xï4Ö¡c@)Öð¸»@)Öý!ÿ.I@)Öð¸»@)Öð¸¼@)Öð¸»@)Öý!ÿ.J?É^òÀXæN?Ï[äe¤µÜÆ@3sS÷ÎÙ@3i^žš@2â-V@2âT`ªdÃ@25µsê³h@20-à r@25µsê³h@2+ûµsë@25µsê³h@2&µ '¼@8J¨?£-Ÿ56æ+?“IK¹É?Ž‚¨Ø†{~?›Yïÿ¾?¨Oüô÷•Ð@8J¨?—{UƒO?‘Ña„>&?•%ôµh©F?šs°Àãª?¡V·ÏŠÞ²@8p÷?–<‘þ2’‚?šÒÅšnê?Œw%è®?•°QŸ?]Í?¥œïÎ@@@@$@(?ð?ð?ð?ð?ðøøøøøøøøøøøør@­Hfffff@­Hk Iº@­Hfffff@­HfšÔ,=@­Hfffff@­HfÂ&€@­Hfffff@­HeðoiD@­Hfffff@­He®æ1ù@­Hfffff@­He”¯O@Ÿ‡+ J@ŸvÈ´9Y@Ÿ‡+ J@Ÿ†$Ý/@Ÿ‡+ J@Ÿ„êJŒ@Ÿ‡+ J@Ÿ†¸ºÇ@Ÿ‡+ J@Ÿ†ö”Ft@Ÿ‡+ J@Ÿ†YJôñ@8Bò䎊@89b¶®~@1&‡+ J@1'Ë)^ž@0_²-V@0_v_Ø­¬@.ܾߤ@@.Üú¬Ùè?@.ܾߤ@@.Ý¿HË“@.ܾߤ@@.ÝVlô"? Å{¿Ž<º?4ë©$è‰?‘½ümüñ?‹ä†€{6è?‘ä~|+?ïˆ6ÏJ?¬å'[ V÷?’0nà=Q“?~ËQ§?e”[|ú(?‘ ÛÌÏõA?›ªU3Îp?¬Öva4z?ŒÂ§dß±?ƒúʳ_Ä?‚þ——³§ø?†–f_ÔŠŠ?†ïRÉv‘Ñ@@@@@*@*?ð?ð?ð?ð?ð?ð¿I×y¸È?CÏu)?=O•¦%²?F€Äo+®ý@­Hf"w³Ü@Ÿ…ÍÏqØ?RæV2J?Y»}©l$?¢÷f?«2¸ÚYh]@ŸpH÷¿@s@«9!G®{@«9!‰7KÈ@«9!G®{@«9"u%F @«9!G®{@«9#S÷ÎØ@«9!G®{@«9!G®{@«9!G®{@«9 ƒn˜@«9!G®{@«9 Ä›¥â@¡ŠdÝ/ @¡Še¸Qí@¡ŠdÝ/ @¡Šdg8~@¡ŠdÝ/ @¡Šcþ\‘Ñ@¡ŠdÝ/ @¡ŠdtSŽó@¡ŠdÝ/ @¡Šeœàv@¡ŠdÝ/ @¡Šf§ï²@3N쿱[X@3OhÛ‹¬@0{ Iº^@0{'»/ì@/ü¬1&ê@/üÆ?@/#¼ÓZ…ˆ@/"¶®}Vm@/#¼ÓZ…ˆ@/$tSŽóN@/#¼ÓZ…ˆ@/%œàu÷?|öOÿÝ?õ¹Ëh?‘G¿yÛ?ï?‹²MÿAÿ8?‘'¬Å™» ?ß-tT?|öOÿÝ?’)£µ“[B@°nzáH@°|žì¿±@°nzáH@°|PHñ@°nzáH@°pÄ›¥ã@°nzáH@°l]cˆf@­u2° ÄœÁ.„€@­u2° Äœ@­u9õY³Ï@­u2° Äœ@­u-(Œç@­u2° Äœ@­u9#¢œx@­u2° Äœ@­u-žƒä%@­u2° Äœ@­uŠÚ¹õ@8Ì]cˆe•Á.„>¤µÜÆ@6|í‘hr@6ÊW§†Â@5nùÛ"Ðå@5yJôðØE@4Þ«6z‘@4îzáG®@4Þ«6z‘@4ãÃa@O@4Þ«6z‘@4éÀëíúD@8J¨?¡ÿ¶?B ?žõ|“”·?¯©C“Ë—?©²x7®VÈ?žc¬+:X£@8J¨?ªvðj?›R?¨:¶$I0?¨©&‚?®¶h†i¾m?¡â/‡ßü+@8p÷?àÛe«]Z?«†CRvÉÂ?³>0O¶m˜?¨ªíß?¨Ϭ +fà@@@@*@(?ð?ð?ð?ð?ðøøøøøøøøøøøøu@£ë•%@£ë•%@£ë•%@£ërüÎ +@£ë•%@£ë­’­@£ë•%@£ën`V@@£ë•%@£ëÔ<&@£ë•%@£ë%–³ˆ@–âzáG®@–â¼@–âzáG®@–âE_@–âzáG®@–⸒üÇ@–âzáG®@–âFÜ\@–âzáG®@–â +]³@–âzáG®@–âN²µ²@4ò䎊@4-V@0Œí‘hr°@0ޏQë…@/|¬1&ê@/}¾ŽÆ@.æL/ƒ{K@.蛈‘Å@.æL/ƒ{K@.çX ù@.æL/ƒ{K@.æÉ1"ª?~ì“?ÕÒJ?Ü>Èg?‘Fí<4½?‹ÒKÝiï8?ÿÃhý?ÐäÊ‹ñâ?|çµB &€?’'úà7x?³†é]Ô¼?Açy>¡$;?“ÌUõÎs¼?º’ ï &?]ÒivLÿ?…µsê³g¡?ƒ¼9XNÄu?‡ø¢:›¸1?ˆW|¶DC@@@@@,@(?ð?ð?ð?ð?ð?ð¿YäøF~?=:žÐ?KbÁh ½?YW8`ÒGÍ@©iŽ^Yé@¥Qhò…Ð?ck¯îwH?t‘(Oåml?Â7Ö–‘–?Þä0þ9®ü@ŸmÞЬ›²@x@¢“>ùÛ"Ñ@¢“6‡+ @¢“>ùÛ"ÑÁ.„€@¢“>ùÛ"ÑÁ.„€@¢“>ùÛ"ÑÁ.„€@¢“>ùÛ"ÑÁ.„€@¢“>ùÛ"ÑÁ.„€@”g¥ãSø@”g&-1@”g¥ãSøÁ.„€@”g¥ãSøÁ.„€@”g¥ãSøÁ.„€@”g¥ãSøÁ.„€@”g¥ãSøÁ.„€@7쿱[X@7 ¨câù@40Ä›¥ãTÁ.„M‰ûçm@3.ùÛ"ÐæÁ.„QnÙ‡@3!:’£SÁ.„NÜC,¥@3!:’£SÁ.„NÜC,¥@3!:’£SÁ.„NÜC,¥?‹?2»ZìF@8#˜@8¾:@8 >+@8Iç@8Ù?ƒÔo"ë–@8Î÷@8i§@8Å@8S@8û—? ž¤ïË[@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøy@¨³¶E¡Ë@¨³÷ÎÙ@¨³¶E¡Ë@¨´¼j~ú@¨³¶E¡Ë@¨´ýó¶G@¨³¶E¡Ë@¨´FsØ@¨³¶E¡Ë@¨²-V@¨³¶E¡Ë@¨²a|Ú@­8$Ý/@­8$Ý/@­8$Ý/@­8€ªdÂø@­8$Ý/@­8$Ý.@­8$Ý/@­8€ù k¹@­8$Ý/@­8ä÷eý@­8$Ý/@­8aä÷f@.­5¨Xy>@.­5¨Xy>@- +~ùÛ"Ð@- +³g ù @, ƒn—@, ªdÂø8@,¨Û‹¬q @,©Çy¦µ +@,¨Û‹¬q @,©­BÃÉï@,¨Û‹¬q @,©­BÃÉï?É^³Dw'?Ì&ÏøHÃ?‘½ümüñ?‹ÝÉ!ë#?ëÎ@ A2?¾ƒìÈÁ?ÐbMçê_x?’ +‰¸Ì?™Îd0RÜ?7枪y7?çêÑHcÇ?Z˜°,aÝ?€bMÕky?Œ¯þuõí?‚2Y0âµ?‚éXëLL÷?†žóB» “?†žóB» “@@@@@$@&?ð?ð?ð?ð?ð?ð¿Lýô€<?*‡f ?6 µ2#4Ô?.Å4æqú@¨³NÅÊ@­8aŠ.ð?EC Eª??=$Ï(tõo?†([ú«Ì?rŠ:#@Ÿs Êpã@z@¬ÝöÈ´9X@¬ÝúŸ¾vÈ@¬ÝöÈ´9X@¬Ýú…‡“ß@¬ÝöÈ´9X@¬Ý÷škP²@¬ÝöÈ´9X@¬ÝùXbO@¬ÝöÈ´9X@¬Ýõ%F +¦@¬ÝöÈ´9X@¬ÝôFsØ@­ïŸ¾w@­øbMÔ@­ïŸ¾w@­ð£× +<@­ïŸ¾w@­öE¡ÊÁ@­ïŸ¾w@­ò¼¢@­ïŸ¾w@­îÙ‡+@­ïŸ¾w@­îæ1ø¡@7Ô xFÜ@7Øl"h Ô@2î5?|í‘@2ñÑN;Í6@2¢-V@2¤•*™1@1ÏO „M@1ÔZ¬2@1ÏO „M@1Ñ|ÚQ@1ÏO „M@1Íà qv?гá‡}?‘J–?-.º?““¶”ÿµb?¨•Ù?‘˜¯ +`É?’Æ÷Xê†?”¼íÒh??’¼MÒÀ7F?”¯_©ïM?•jÛ<÷x?’íßš?’÷fAzQa?’-BR1Ä?R©i»èi?‚ù…žÄ`x?ƒ ?ÿ½?‰/ã̽`ª?¦Òý>¶9î@@@@@&@,?ð?ð?ð?ð?ð?ð¿U^Ȩ¿`,ãz?7KRþ+??4xÆWƒ™õ@¬Ý÷j¿Aú@­ò”Ø?V·gfT1›?R\ ¸Ûo2?®`…ÛÖ@?›’ºæ]º@Ÿl()}¼Ä@{@ª->vÈ´9Á.„€@ª->vÈ´9@ª- 4mÅÖ@ª->vÈ´9@ª-SÐ|„¶@ª->vÈ´9@ª-*dÂø7@ª->vÈ´9@ª- íØÎ@ª->vÈ´9@ª-¼ÑÉ@œ„†$Ý/Á.„€@œ„†$Ý/@œ„Œ/ƒ{J@œ„†$Ý/@œ„„Щ)@œ„†$Ý/@œ„TÉ…ð@œ„†$Ý/@œ„U[„©u@œ„†$Ý/@œ„yz¿-7@9}:’£Á.„>¤µÜÆ@5&‡+ J@5‚©“ á@4"-V@4ÑN;Í6@4Þi­BÄ@3øDЩ+@4Þi­BÄ@3ÿM‰Mvl@4Þi­BÄ@3ýòÛð8Ô@8J¨?²”>I·}´?˜Bg2³ôö?šX“Øû?¦Ks(I,?ŸÌñOöÖ”@8J¨?ªQûpÇj?–¾Oäë ?™9½œÔ.?™guoĺ?Ÿèí†w@8p÷?—ƒFÛ¯/?•ë þÅ?š‹ˆe´?˜?[-¨D?“Ó.}y@@@@.@.?ð?ð?ð?ð?ðøøøøøøøøøøøø|@§ÁÎV“@§ÁÎö¤ß@§ÁÎV“@§ÁÍjO@§ÁÎV“@§ÁÎp:û~@§ÁÎV“@§ÁÍ:’£@§ÁÎV“@§ÁÌ/†7@§ÁÎV“@§ÁÌ‹Rî2@œø²-V@œø­in@œø²-V@œø²{²þÅ@œø²-V@œø¯O „M@œø²-V@œø§ï²-@œø²-V@œø¨Áp†¬@œø²-V@œø¤t«ï9@6µS&Á¾@6´ˆez~ø@2 í‘hr°@2}Vlô@1©Û"Ðå`@1¬PHð@0ÑÞi­BÄ@0Ñ·Xâ@0ÑÞi­BÄ@0ÏùvAâÑ@0ÑÞi­BÄ@0Ïb¿oÚ(?‚Ú¡ËG7@.åÉä@.~˾“©®@.åÉä@.+|”Õ?É^žP¬!?Û*Ð ?‘.t·ç`>?‹¬=ã§@v?ñ1ê\ß?È #­ºØ?ÐbQë„›¦?’Îü¥ó ?¢-Æ´Ô?0rìÝ>ê?Ö9¬%~E?]ÝíVÏK?€bîF¾§?Œ®Í"µ€?‚—Ú¸cX?‚æ“ì{ 4?†öÊEz?†˜G›S@@"@,@"@6@4?ð?ð?ð?ð?ð?ð¿Oºžîl¿ úUˆð?*WVTb@º?™¯°¢²@¡A¶ñ-Ñ@«àéZ?9R­0/?(-Á?Í?oo(¹ê?IšOó”w@Ÿs›´u@~@¦ÍÒñ©ü@¦ÎzáI@¦ÍÒñ©ü@¦Ï\(õÃ@¦ÍÒñ©ü@¦Î±Ä2Ê@¦ÍÒñ©ü@¦Íí(Œç@¦ÍÒñ©ü@¦ÌcñA @¦ÍÒñ©ü@¦ËC,¥@  ¬1'@  /Ÿ¾@  ¬1'@  ‹¬q @  ¬1'@  ¥ãSø@  ¬1'@  ¥ãSø@  ¬1'@  <64@  ¬1'@  ]cˆf@3àØDЩ@3á$Ý/@0ÇÎÙ‡+@0Çy¦µ @0“t¼@0sê³g¡@/­úCþ\’@/­í(Œç@/­úCþ\’@/­í(Œç@/­úCþ\’@/­Òñ©ûè?|öOÿÝ?W[†?‘°&޲P?Wø0 ¥?‘¿ÐÅu?‘äÿ̉ߚ?|¬Çëý ?’j•×›c?ß‹…&?iêhAÜ?‘Jâ”âj?低NëV?‚q6tNø6?Œþ%å_D?ƒÚ@êA²?ƒE 8?†ÃÛSPã?†Ë¢L1Ù@@@@@(@,?ð?ð?ð?ð?ð?ð¿>Uâ±ð¿$ƒßm ?&ãüYâ•?%Ãý7Ã@¦Í2€þ@  ÇÃ$æ?F±B, $?F¸èT<|?š€JÈÞØ?˜ãgcå)@Ÿf¹©|‰@@ªó£S÷ÎÙ@ªó£•%@ªó£S÷ÎÙ@ªó¤µÜÆ?@ªó£S÷ÎÙ@ªó¤Ý/ @ªó£S÷ÎÙ@ªó¤›¥ãT@ªó£S÷ÎÙ@ªó¢@·€5@ªó£S÷ÎÙ@ªó¢&€I@£xñ©ûç@£xñ©ûç@£xñ©ûç@£xÊW§‡@£xñ©ûç@£x•éá²@£xñ©ûç@£xGE8ï@£xñ©ûç@£x£S&@£xñ©ûç@£xˆÎp:@+-5¨Xy>@+-5¨Xy>@')7KƧï@')Dg8}@&cn—P@&cn—P@&zÇË)_@&zÇË)_@&zÇË)_@&zÇË)_@&zÇË)_@&zÇË)_?É`¯&xŽ?ÉGãA­÷?‘!!Ø×‹7?‹²MÿAÿ8?éDEâ©×?¸û:?ÐbMçê_x?’ +‰¸Ì?~ËQ§?6) }’ë?ÔÒ@úˆ‘?Kcìë?€bMÕky?Œ¬8 T£?‚oÁÆÜ§÷?‚ãaÎúvh?†ˆ#.÷?†ˆ#.÷@@@@@,@*?ð?ð?ð?ð?ð?ð¿REs–%?ö_Ű?5©§¥Jáx?uœ4=@ªó£,L Ú@£xwç±?DӹȘ(?#Û?îB¹?…PúôZîz??½UfTü@Ÿs >Q±ô@€@§ùÿ|í‘h@§ú‰7KÆ@§ùÿ|í‘h@§ùõ?|í’@§ùÿ|í‘h@§ùú¬2@§ùÿ|í‘h@§ùíÒñ©ü@§ùÿ|í‘h@§ùì1&è@§ùÿ|í‘h@§ùÞBZîc@®{dZ¬@®†$Ý/@®{dZ¬@®yè>B\@®{dZ¬@®xbMÓ@®{dZ¬@®u›=É@®{dZ¬@®|„µÜÅ@®{dZ¬@®|‘ÑN<@8ÖšÔ,<Ÿ@8¸§æšÔ@5B° Ä›¦@5?–»˜È@5K"Ðå`B@5Gâ‚@·€@4½cˆe”°@4³9Àëíú@4½cˆe”°@4¶éxÔýô@4½cˆe”°@4µöý!ÿ.?¨Ö_pP1?ŸáE‚Xû„?”^RžpX?¡‹÷;Ïœ(?¨VK?¬ptí#°??µ”Zm?¡‹=0ïÍ?›ê‰¬>V?£m¤ˆÛ€|?£<1*T!Â?¯ˆpoIo ?°Ÿ ÜE©?šÇ,þâ?¯M,L¯6?šæÚ§³Á?› £­²ý?¨D d}ù@@@@@$@(?ð?ð?ð?ð?ð?ð¿zl„Ï.€¿?,òf ?S¡üñ¯?ewB…NCæ@§ùíD³›P@®z¾bØ?o¥åjŽr?zÜx+ÈýC?®€•¥ý³?Éw:5@Ÿm“ZÒ`P@@©qWOß;@©q]²-V@©qWOß;@©qOAò×@©qWOß;@©q\(õÂ@©qWOß;@©q>BZîd@©qWOß;@©q@ù kº@©qWOß;@©qA [À@KÂ\(ö@K¨õÂ^@KÂ\(ö@K»²þÅn@KÂ\(ö@KÅ¡ÊÀ„@KÂ\(ö@KÚ¬1@KÂ\(ö@KÒ½<6@KÂ\(ö@KÐbMÒò@7p4mÅÖ8@7_ ?Dº@3Ê^5?|í@3½!ÿ.Hè@26§ï²-@2/±[W>«@2Š0U2a|@2z#9Àëî@2Š0U2a|@2z’£S&@2Š0U2a|@2€‰ 'RT?‰çõ×eµM?›úV˜[u9?‘O‚%c?¤»Ä¢? çÇ?ó1?Ÿò5}'Î?Ïy¨jP? >Ô±µR?“®ÂrVŽx? 1°€µóÒ?Ÿz\½~Û?˜"ߨÇ>?ŠPn +E³?ÉGãA­ø?‚íWçé…?‹Ûu¤ó†4?”Ò +.Ô•?§8©$ +"º@@@@@,@*?ð?ð?ð?ð?ð?ð¿{ƒë€?rsøçÀ?XFÖ=bÛ©?Y;G¦ÀŸ@©qM˜ÃKº@KÀ«õÍÜ?z!k?z–0‘ý1?à÷¤B¹¤µÜÆ@3”›¥ãSø@3wÈK]Ìd@3 ²-V@2ô“t¼j@2\ÚQÎ@2KC,¥{@2\ÚQÎ@2U '»0@2\ÚQÎ@22½<64@8J¨?•ßóV_Ü^?±¦ôˆ¤ªq?’èÞ㬱_?˜{ )é™?³lRA‘ƒ@8J¨?šækM..?¦P{ìjÿ?¨^à18??¢.Óñ€?Эnñ~¤µÜÆ@3ÜIº^5?@3ÛJ#9Àì@2ù7KƧð@2õzxl"h@2kxFÜ^@2jdÂø7µ@2kxFÜ^@2hÛ‹¬q @2kxFÜ^@2iÇy¦µ @8J¨?’ Œ#Çî«?œœê´°EÚ?«àÓ RÆ?”Å¥ÒB–W?•¿!— ö@8J¨?”Ô„÷ËD?“$zü¾6?’k­ªì¢H?•Ñ^¢?•Âê&ÅÅ@8p÷?êzŽx?…íŽ(þÇ?…<ò N ?Œ8¸wx¯?Œ˜ˆTÙ8ª@@@@(@,?ð?ð?ð?ð?ðøøøøøøøøøøøø„@­ë[¥ãSø@­ê¯²-@­ë[¥ãSø@­ëM(Œç@­ë[¥ãSø@­ë[¥ãSø@­ë[¥ãSø@­ëYè>B[@­ë[¥ãSø@­ëWškP±@­ë[¥ãSø@­ëUY³Ð}@ ­‡+@ ®ß;dZ@ ­‡+@ ­ úCþ]@ ­‡+@ ­?|í@ ­‡+@ ­+jçÕ@ ­‡+@ ­>«6z@ ­‡+@ ­¼@8™*0U2b@6öL/ƒ{J@4=‘hr° @46”FsØ@3Ͳ-V@3Ȍ篸@2Ì¿±[W?@2ÈK]Ìcò@2Ì¿±[W?@2ËW>«6z@2Ì¿±[W?@2ÇOß;d?ð°–Ž]?—hÄ”V?“ï~í"?“U†žév?•õþèüäú?“‡SË{d—?ð°–Ž]?˜ü^Š1??’€fç½Î?—ýÖ³²³ÿ?’l{9ÙŽ?”µìSõüS?ð*wjs—?“ÆQ6þ?•bkòí?ŒOà†cÍ?‰ö±«tï?‹Ûx§Þ?ð@@@@&@&?ð?ð?ð?ð?ð?ð¿^ÉçLÈ?m•ŒÔΘ?W¤CÑC3º?p{†ÀfP±@­ëW“7ŠÆ@ ­@ðOü?fž(Kwb?|(¸»gOK?¾'h8/V‡?åîW;°C@Ÿt +’@…@¯Æ>ùÛ"Ñ@¯Æ€@¯Æ>ùÛ"Ñ@¯ÆLIº^5@¯Æ>ùÛ"Ñ@¯ÆVE¡ÊÁ@¯Æ>ùÛ"Ñ@¯ÆHË’:@¯Æ>ùÛ"Ñ@¯ÆWsüO@¯Æ>ùÛ"Ñ@¯ÆPË)^Ÿ@ªjì‹C•@ªj¡ÊÀƒ@ªjì‹C•@ªjð|„µÞ@ªjì‹C•@ªjé7Kƨ@ªjì‹C•@ªjî¾ß¤@@ªjì‹C•@ªjêdÂø7@ªjì‹C•@ªjåœàv@8^Hè§æ@7‹ Iº^@4#÷ÎÙ‡@4!‰7Kƨ@3@å`A‰7@3>BZîc @2á:’£S@2á–R½<6@2á:’£S@2ךkP°ó@2á:’£S@2×KƧïž?×LàðVôð?“ÓLáS{?š†Ä$íf%?–¶±½WÇû?¦ö/cÕ¥?©„¹ïq÷;?Ðæån…âi? îÑšˆHÉ?—cG‰‹o?“§ÞÐÞû?Ä —+¥A?¥/[?jÒ?ù×)2ÿ²?“8í¢ßA?ƒ~¨õ/¥O?éàQx˜?”8©èÈí? \'ÎjK@@@@@,@,?ð?ð?ð?ð?ð?ð?s2X¶Ø¿fNÒ?pj,zò;?pÎûÀÅ @¯ÆMlÖ@ªjë¼dˆ?|Ñé\‘C?{±&]-)?ÑR_uWä??Ù³o¶Y7@Ÿp™ðº¡X@†@©”1&éy@©” C•@©”1&éy@©”y¦µ @©”1&éy@©“äµÜÆ?@©”1&éy@©“â&€H@©”1&éy@©“ýcˆe”@©”1&éy@©“ÙÛ"Ðæ@® E¸Qì@® G+ J@® E¸Qì@® S÷ÎÙ@® E¸Qì@® XüPH@® E¸Qì@® H´9X@® E¸Qì@® i7KÆ©@® E¸Qì@® X“t¼j@6÷â‚@·€@6òþÅm\ú@4+¥ãS÷Ï@4<64@46§ï²-@4%Éã½@3B‚@·€5@3$÷eýŠÛ@3B‚@·€5@3'Ûô‡ü¹@3B‚@·€5@3¬Ùè>B?€‚ñêã ?’«p~v]Ù?©»KÞ9yA?žtN+®6?­ME(©l?›$ kH§2?“Æ×q„nï?›æ¤p¥½?¦<¦Ü7T? £½:…?¾R$Ê(Â×?±Í‚cÊ5?ƒíÈm½!¾?“A ç’?šˆøQû±?¡ãz‘ÈÆ?¥J'Y=¢?¦“€œ„%5@@@@@*@?ð?ð?ð?ð?ð?ð¿„×/ß©?e—ñŠx?cñ‹“§?`Ýz2^ä@©“ù}¤½@® K†c`?0g¬›ˆù?zš/™ìu?ú»‡Ú«ª?ÑNøÇA@@ŸcMÚ¿¾Û@‡@¦õ·ÎÙ‡@¦õ¸bMÓ@¦õ·ÎÙ‡@¦õ»çl‹D@¦õ·ÎÙ‡@¦õºû~‘@¦õ·ÎÙ‡@¦õ»quŽ"@¦õ·ÎÙ‡@¦õµY³Ð}@¦õ·ÎÙ‡@¦õ¸üPH@§·TzáG®@§·T¼j~ú@§·TzáG®@§·TzáG­@§·TzáG®@§·QN;Í6@§·TzáG®@§·P¾ í)@§·TzáG®@§·Q‚©“ @§·TzáG®@§·R•éá°@2ÿ–»˜È@2ÿ—$tS@/×KƧï@/ÏAò×r@-¥¡ÊÀƒ@-Ÿ±[W>«@-­úCþ\’@-¨ÁTÉ…ñ@-­úCþ\’@-ŸåÉä@-­úCþ\’@-¡ä÷eýŠ?É^³Dw'?qÂ' +B›?‘ŒQ®üX?Œ^:Òf?’yÊêºq?’u¹k‚=?ÐbV‡,?’0nà=Q“?§^ ÿo˜?wàËxR?“£c”?’ ÃCÀ`ú?€j|î–éë?ŒÐ¤Âÿê?ƒ!A +mº¹?…®×__C?‡L8õASÎ?Šì¾ ;8´@@@@@*@(?ð?ð?ð?ð?ð?ð¿WÙúÐ?HˆþŽL?XG=]ð.?)6’†.tÅ@¦õ¹=ÊÛ@§·QíÓP?gg°ãðÊl?8E±õþ'?Ç«½àìO2?fX¶h}@Ÿr¹µ+@@ˆ@®ûçl‹DÁ.„€@®ûçl‹DÁ.„€@®ûçl‹DÁ.„€@®ûçl‹DÁ.„€@®ûçl‹DÁ.„€@®ûçl‹DÁ.„€@›YÌÌÌÌÍÁ.„€@›YÌÌÌÌÍÁ.„€@›YÌÌÌÌÍÁ.„€@›YÌÌÌÌÍÁ.„€@›YÌÌÌÌÍÁ.„€@›YÌÌÌÌÍÁ.„€@5›¹Œ~($Á.„>¤µÜÆ@2”›¥ãSøÁ.„M‰ûçm@1€å`A‰7Á.„QnÙ‡@1cÉîËûÁ.„NÜC,¥@1cÉîËûÁ.„NÜC,¥@1cÉîËûÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø‰@¡GäÝ/ @¡Gã•%@¡GäÝ/ @¡GæÂ&€@¡GäÝ/ @¡GÆÁ½¥@¡GäÝ/ @¡GÒ×sü@¡GäÝ/ @¡Gèr° Å@¡GäÝ/ @¡GçæšÔ@¨nûçl‹D@¨nÿ;dZ@¨nûçl‹D@¨o ¸ºÇ@¨nûçl‹D@¨o¢3œ@¨nûçl‹D@¨o1Å@¨nûçl‹D@¨oh Ô•@¨nûçl‹D@¨ov_Ø®@6Ì]cˆe”@6Çü¹#¢œ@2GÎÙ‡+@2X$ xF@1’Ðå`A‰@1—æšÔ,@0𖻘Çã@0ðØDЪ@0𖻘Çã@0î¸Që…@0𖻘Çã@0ñò×s?‡YÍ_?¤^ÎÀ¸ô?£AóôpJ?’9ñ9¶ò8?–[À5ž¨?ŸlgŽ|*?‡YÍ_?–HÞÆzì²?•ûú·ø¨?šüU(\;™ð?†”°…S„N?…žÛ¨[uµ@ [¾¢’û†?ÿ¹¦^…û@Ÿf _”Ï®@Š@ŸWê~ùÛ#@ŸVükS@ŸWê~ùÛ#@ŸW鎂¼@ŸWê~ùÛ#@ŸWís¼ ‚@ŸWê~ùÛ#@ŸWêœX²X@ŸWê~ùÛ#@ŸWæÏäíÇ@ŸWê~ùÛ#@ŸWëÐT&@¯æffff@¯ÙXbN@¯æffff@¯èD_@¯æffff@¯çâ9,z@¯æffff@¯åïÝ–À@¯æffff@¯ç/Sæ@¯æffff@¯è¿«L@7h†YJôñ@7"ZîcŠ@3Ï|í‘hr@3Ò;~š&@2ÝV”@2Þ /2l@2OO „M@2QÙJ7Ð@2OO „M@2RIIqÆ7@2OO „M@2RRð$öç?ÖP£acíÝ?‘¾mîøÀ„?‘9{Scr?„Ñ.HF,?’Lœ@¶Q?‘Ç“ëV“uÁ.„QnÙ‡@3«6z‘Á.„NÜC,¥@3«6z‘Á.„NÜC,¥@3«6z‘Á.„NÜC,¥?¡EÉ@Ú@8#˜@8¾:@8 >+@8Iç@8Ù?“Æ×q„nï@8Î÷@8i§@8Å@8S@8û—?Ÿ®64 Ú@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@¨äµÂ\)@¨ä»¥ãSø@¨äµÂ\)@¨ä­jO@¨äµÂ\)@¨ä®—Oß@¨äµÂ\)@¨ä³ê³g¡@¨äµÂ\)@¨ä°oiDh@¨äµÂ\)@¨ä³ê³g¡@§<+…¸R@§<<í‘hs@§<+…¸R@§<"Ðå`@§<+…¸R@§<"3œ¿@§<+…¸R@§<,¿±[W@§<+…¸R@§<,ÌÌÌÍ@§<+…¸R@§<)*0U2@8·â‚@·€@8§RT`ªd@4W+ Iº@4V¸ºÇ@3V”@3œÙè>B[@2ò䎊r@2|VÕϪÎ@2ò䎊r@2|Æ?@2ò䎊r@2}¥œàv?¢F^ì¼Sð?˜“'\žå?šÿ»^ª@?,¡r×gÁ?’PY8~Qj?”éëÀÍ?•²»UbB2?—½Qéœ?•ûú·ø¨?‘.}áµ$?“h_N’%¿?–†F5Æ?´&¾¬Ç‰m?–Ê Dì¢S?•bkòí?‰‹„áùO"?Ä;Ãkr>?“¶Ì¶Öj”@@@@@*@,?ð?ð?ð?ð?ð?ð¿XIû[P¿oË m?Qß‚Xc?QJ˜g(ÒÎ@¨ä³ÛS~|@§<.©t?g‘‡(Ûê¨?m&±tr/?Äõɹ_9ú?Я3Þax@Ÿn(Ëß;@Ž@¥/²-@¥.—Oß@¥/²-@¥4mÅÖ9@¥/²-@¥1hr°!@¥/²-@¥4¼j~ù@¥/²-@¥0¸»@¥/²-@¥/Aò×@£¤j~ùÛ#@£¤j~ùÛ"@£¤j~ùÛ#@£¤kxFÜ@£¤j~ùÛ#@£¤g“Ý—ö@£¤j~ùÛ#@£¤fffff@£¤j~ùÛ#@£¤o\(õÃ@£¤j~ùÛ#@£¤m„M:@7„¯O „M@7ƒ,¥zxl@3ÇÎÙ‡+@3Ê™0¾ í@3"-V@3"þÅm\û@2:Ô,<ží@2?;dZ¬@2:Ô,<ží@2<篷é@2:Ô,<ží@2<ÓZ…‡”? Å{¿Ž<º?”êÎlŒy?‘£Ä›è?F‘q/b?“XMHñëž?’Æ÷Xê†?—¤o„C?šÒ’](¼+?‘kþE<%?íu…XÚ?”¤¦ð¹e?“{P»á?™¯Ùºà?“&•Z÷˜#?‡~ ~ã?ŽY8Z•?‡Ä­‹›Ü?‹ ˜1 D@@@@@@*@(?ð?ð?ð?ð?ð?ð¿G'~_Š?R/[õF?T‚¿OÙ@?VÀ. ·@¥1ÚW@£¤k +…;?kí5“Ù?qÕP;“áè?Ð×C”*é?Û ú䞃e@ŸnXeœ“@@¯ +Àƒo@¯  Iº@¯ +Àƒo@¯ jçÕg@¯ +Àƒo@¯ +ŒL—@¯ +Àƒo@¯ P°ò}@¯ +Àƒo@¯ Dg8@¯ +Àƒo@¯ï²,@¢*ØbMÓ@¢*×ÎÙ‡@¢*ØbMÓ@¢*Ö®}Vm@¢*ØbMÓ@¢*ÖÕϪÏ@¢*ØbMÓ@¢*غÇË@¢*ØbMÓ@¢*×1Å@¢*ØbMÓ@¢*×Xâ@5=:’£@5<ÌÌÌÌÍ@1€ Ä›¥ã@1€uöý!ÿ@0þV“u@0þ¤¨ÁTÉ@0ž«6z‘@0žËûµt@0ž«6z‘@0ž±Ä2ÊX@0ž«6z‘@0žóMj?|öOÿÝ?:LÓá +í?‘`×›mÏ?‹ó#ƒt£?‘|†³„¸?ß-tT?|öOÿÝ?’,ö´´Ï#?»Þ‹"è?e”[|ú(?‘!U?Ð{Ò?oÌ‘'ýT?ƒúʳ_Ã?)‰€Zw?‚Ì ÝŽ‚8?ƒv_.^?‡gϵ’õ?†ùadô|@@@@@,@$?ð?ð?ð?ð?ð?ð¿=ðx%п•°€?0CúÚA?$.˜×hó@¯ +.'–Ë@¢*×°É}“?Oâ-R8/?DZÈöƒõ?«!Ÿ A|œ?•ºû‹fòñ@Ÿfëo+Q}@@§Š¢Ðå`B@§Š£× +=q@§Š¢Ðå`B@§Š A‰7L@§Š¢Ðå`B@§Š¡ÊÀƒ@§Š¢Ðå`B@§Š£,¥zx@§Š¢Ðå`B@§Š ù kº@§Š¢Ðå`B@§Š 'RTb@¯)—Oß;@¯)™XbO@¯)—Oß;@¯)–E¡ÊÁ@¯)—Oß;@¯)˜Që…@¯)—Oß;@¯)˜bMÔ@¯)—Oß;@¯)˜y=Ù~@¯)—Oß;@¯)˜DЩ@7N쿱[X@7N¤¨ÁTÊ@1)‡+ @1(>BZîc@0¤¼j~ùÛ@0¤êJŒ@.žžš@.ã¼Ó[@.žžš@.ž\‘ÑN<@.žžš@.Vlô"?3ßa=„?¾¢`ƒ?‘WßÈDö@?Œä%—ëš?÷6r In?Êëüâi{?óA[ØïF?’ aÒ¹zï? Dñ£P?‘°ß‡O©?çêÑHcÇ?ˆ9²0?š?G'ôÜ?ŒÆò/¢äÍ?ƒúʳ_Ä?‚ôhBì^?†ïRÉv‘Ñ?†¼Š˜L¥÷@@@@@@?ð?ð?ð?ð?ð?ð¿HÖâ +ø¿*Úc^À?.nœ›½ß?ì¶mœ&@§Š¢«È@¯)˜‹g@õ?JÛC€WÌ?;/\‰½?–ÇxSÚ…?tÉ´že¦J@Ÿl^„¾â@‘@  +cS÷ÎÙ@  +^ùÛ"Ñ@  +cS÷ÎÙ@  +h6§é@  +cS÷ÎÙ@  +gˆ­è×@  +cS÷ÎÙ@  +h—”y@  +cS÷ÎÙ@  +d \‘@  +cS÷ÎÙ@  +bÔç'C@©wÒñ©ü@©wOß;d@©wÒñ©ü@©w—~á à@©wÒñ©ü@©wŽ÷|x@©wÒñ©ü@©wìVÕÒ@©wÒñ©ü@©w“hVŠa@©wÒñ©ü@©wÏ©„@8ò䎊@8 +;[kû#@3›¥ãSø@32ádª@2A‰7KÇ@2=¯‹Fí@15µsê³h@13“o¬K»@15µsê³h@14ݶÿè@15µsê³h@13"ž3°?œgØ^XÕF?µÜ,ÄßÌ?‘Š5¶ \n?‹«¦ÖI?‘C?#’pj?‘|ëN2?Ĺó¥p?’êNüÒ?µ…K¦­Ø?9Ø^ÕÛ?‘5ÖYó¾‡?‘4¥;QQ|?Éå¢Ñ‘?ògvfÐb?…lÝýéû?ƒÃ‚6$?‡dZ²VÇ?‡´ UÂb@@&@&@@5@8?ð?ð?ð?ð?ð?ð¿ C× ?O;—Vð?Yô8ý@kñ??€o³›«@  +eJ`Ê@©w†Ð:8?r½5gš?\•INË÷?à¸oþú–¥?¶·”\@Ÿmè ö?{@’@ ÛÐbMÒòÁ.„€@ ÛÐbMÒòÁ.„€@ ÛÐbMÒòÁ.„€@ ÛÐbMÒòÁ.„€@ ÛÐbMÒòÁ.„€@ ÛÐbMÒòÁ.„€@› ŒIº^5Á.„€@› ŒIº^5Á.„€@› ŒIº^5Á.„€@› ŒIº^5Á.„€@› ŒIº^5Á.„€@› ŒIº^5Á.„€@9*0U2bÁ.„>¤µÜÆ@4î5?|í‘Á.„M‰ûçm@4A‰7KÇÁ.„QnÙ‡@3ò䎊rÁ.„NÜC,¥@3ò䎊rÁ.„NÜC,¥@3ò䎊rÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø“@ªõœ(õÂÁ.„€@ªõœ(õÂ@ªõ§ ù l@ªõœ(õÂ@ªõžš@ªõœ(õÂ@ªõ´`ªdÄ@ªõœ(õÂ@ªõ¢&€H@ªõœ(õÂ@ªõ¥œàv@§žY‡+Á.„€@§žY‡+@§žMw1Æ@§žY‡+@§ž?—$tT@§žY‡+@§ž3g ù @§žY‡+@§ž:^5?}@§žY‡+@§žE8ï4×@8÷â‚@·€Á.„>¤µÜÆ@4—+ Iº@4‘hr° @3V”@3–È´9X@3O „M@35%F +¦L@3O „M@3æšÔ,@3O „M@37´¢3œ@8J¨?ŸY?2Õ6?š#Ñ-è ?­‹ 'òUA?— +æÙõ¡?™S:Ъ;5@8J¨?—I9ÝBæf?šJ‘ÍÒÁ?°z€Äã…?šRýi¡ô?™Ã¸å4@8p÷?™:K²ïÏ?•o•ó}ó?ÀËõ›ÄÉ:?–Mí\{WÐ?” 4‹eñ +@@@@*@(?ð?ð?ð?ð?ðøøøøøøøøøøøø”@¥ëŽÙ‡+@¥ëˆ1Íç@¥ëŽÙ‡+@¥éå—ñÞ@¥ëŽÙ‡+@¥éˆ~|pA@¥ëŽÙ‡+@¥é€ˆˆø@¥ëŽÙ‡+@¥éêdÂø8@¥ëŽÙ‡+@¥êXºÇÊ@—Vq©ûçm@—Vm‘hr°@—Vq©ûçm@—Tgöú ]@—Vq©ûçm@—T-©Ç„~@—Vq©ûçm@—T8ßÚ¶s@—Vq©ûçm@—S€IQƒ@—Vq©ûçm@—TGy¦µ @4Âò䎊@4¹© z@2™º^5?}@1ý¾ ¢í @2 "Ðå`B@1cÛoB'@1Š0U2a|@0çºs’"@1Š0U2a|@0×ÈK]Ìd@1Š0U2a|@0Þÿ—$u?|¬Æ Væ?ÕQt€hü?Öh7JÌZ?Õ”¨Ædœ?Ü'z_ó6³?Ù1[ݶÆÃ?}@T˜ÁÎ¥?ÈÐÃàÒ[?˸ÀRÅ{?ÀŽ7f9PÎ?ÎÀÚ$m´>?Ë•V u?‚/»yÅ?¦"vJÈC?“Áj¦ ?Ÿ¤@¦lŒIº^5@¦lw1Æ@¦lŒIº^5@¦l‹íúCþ@8Hè§æ@8µsê´@3f‡+ J@3f1ø .@2q‰7Kƨ@2rn—Oß@1Œ¿±[W?@1Œ˜_ö”@1Œ¿±[W?@1IQ‚©”@1Œ¿±[W?@1„M:“?žˆ2}?ZÁ».œ?’Gßk;m?‡{@áè?’o?P´À?‘&¶Gf¡?‘â%ì˜ ä?’5CàQ?‘C\ºÕ¶?’ž²¢# Y?’pP‡È»?ú`@0k? .ùge%ý?à í¡h„?‚§W®ê ?ƒ3¸Î{Z?‡Õ˜]–GÄ?‡æê7²zE@@@@@,@*?ð?ð?ð?ð?ð?ð¿^ *4°¿fLßd?*8q<^î–?Ujò³™¥ @ª K\Áp@¦lÎÜÆu?L¢Å7 [B?sãU)åÞ?{R[ ?ãWñrNܨ@Ÿk!ÅÅ‹õ@–@¢ül1&é@¢ühr° Å@¢ül1&é@¢üqN;Í7@¢ül1&é@¢üiº^5?@¢ül1&é@¢üwÎÙ‡@¢ül1&é@¢üw$tS@¢ül1&é@¢üsŽóMj@­hIº^5?@­hH1&éz@­hIº^5?@­hOß;dZ@­hIº^5?@­hQÄ2ÊX@­hIº^5?@­hQ·Xâ@­hIº^5?@­hNHè§@­hIº^5?@­hGE8ï4@7`ØDЩ@7aTÉ…ðp@2ÞÙ‡+@2ÔM:’£@1ß²-V@1×l‹C•@1(è§æ›@1 Ñ·Xâ@1(è§æ›@1¤¨ÁTÊ@1(è§æ›@1O „M?ˆÿÀ)T¿Æ?•ßóV_Ü^?‘ÄÑ ø?”–¹rÕ‰?›ÿËRÈ?–4<‘7?‘â%ì˜ ä?™ÿÓH*¥?’¤šÜI«?˜_?[0o_?¡SmImbˆ?•åÖuÍa?¶,1õ'®?ŽõÕJ?„+£QKù?†ü¢q+ÄU?ˆ0&YÊEd?Ò0aˆ‡‡@@@@@*@&?ð?ð?ð?ð?ð?ð?hrYRl?/£tíÀ?TžTI7/?WHâ¿T/S@¢üq!Æ@­hJ·+žž?u€Ô,­?wÊ_•$Æ?ãŸZd.aý?áarÎïËô@Ÿi‡Ò•Vô@—@ªõ|í‘h@ªõ}²-V@ªõ|í‘h@ªô—´¢3œ@ªõ|í‘h@ªóú^5?~@ªõ|í‘h@ªôü„µÜÆ@ªõ|í‘h@ªöG ù l@ªõ|í‘h@ªõ(Xy=Ú@£È@£Çî—Oß@£È@£Ç»À6ã@£È@£Æži­BÅ@£È@£ÇKàÞÒ‰@£È@£È¸ï4Ö¡@£È@£Ç”êJŒ@8`ØDЩ@8G1Å‚@3µãS÷ÎÙ@3yã¼Ó@3¶§ï²-@3@©*0U@2s&Á½¥@2'â‚@·€@2s&Á½¥@3V”FsØ@2s&Á½¥@2>5?|í‘?¨TU‚?¦Ó[T‚®¾?ÙC¤q;˜l?ÐdÜcšÍ?¾§m×¢Aü?½M­9ü?}Ñ¿ž,?ž%Œ@&—?Ö!-•FÀâ?ÎS„^Ù™?À,ÙŠùûë?Æ"šYÃ?›bO—ç†?3XMÊV?šˆøQû±?˜$– Ñê?«ißÛãÀ ?˜uqR¿7@@@@@*@*?ð?ð?ð?ð?ð?ð?u?’Ž €?…Úû€ˆ€?œž8PN?›Ã‰ƒ"¤}@ªõ‰m±…c@£Çÿí,I?»Þ^ñÉb?¶›¡ç­ù@+“ –ÔP@(>ÿŠÚ@Ÿb1ÉËf@˜@¯ŒTýó¶F@¯Œi7Kƨ@¯ŒTýó¶F@¯ŒJ*NWY@¯ŒTýó¶F@¯ŒNN-á¡@¯ŒTýó¶F@¯Œ:”Ę@¯ŒTýó¶F@¯ŒF|W /@¯ŒTýó¶F@¯ŒJ¼Ä™@–ýOß;@–ý"Ðå_@–ýOß;@–ý#©UfÝ@–ýOß;@–ý.<3àÙ@–ýOß;@–ý4šS2@–ýOß;@–ý%q!r @–ýOß;@–ýK‚…Ì@9‡>«6z@9wì^er@4 Ä›¥ã@4Àœ­)Ý@3~V“u@3}#+ê@3+xFÜ^@3,êã@3+xFÜ^@3+r[©ñ @3+xFÜ^@31á†Tñ?( ˜?”/À•?“ñ=Ûÿ•?å»ÿݵ?•ð³õ&a?—ÿ£e¦?®CÌ2ýõ?“µ>™99ß?‘cg >'?c>Ep|?•º–¸­E?—sa3¬6?Ë"ôuM¬Ò?•í\Bæ ?‹˜·êÿÓõ?“µ‹«#ãh¿M9jhü?8ËO§Â$k?&Î'þx +@¤#áúÍ$@¡“!åï†?Xœ/ÃÕ‚o?FjÆû9MÚ?¿&÷R¸Ïz?—oZGº@Ÿg1m +@š@®Àð£× +=@®Àð£× +=@®Àð£× +=@®ÀçlN“ˆ@®Àð£× +=@®Àï`çº|@®Àð£× +=@®Àô?U+U@®Àð£× +=@®Àë>{“@®Àð£× +=@®Àé?l@”™™™š@”¬0@”™™™š@”WÕµŒ@”™™™š@”!j%‹@”™™™š@” Ê¿Wr@”™™™š@”¢êW@”™™™š@”ýý^%Ž@6 ]cˆe”@6 9ÿÖ–@2 Ä›¥ã@1ã`7½~@1©Û"Ðå`@1¤Tͬ@0œÚQÎ@0’ †;„@0œÚQÎ@0“26•†@0œÚQÎ@0”EVA^?}@T˜ÁÎ¥?‘mÓSòÜØ?“o:6@è—?H§—ÅO?“®[Å`?“H‚ÏAu?€‘gQÚÃ?˜ÈOS˜Ü6?”â)ÈøU?—ÏÞÐ}ëá?–­&ÿ“Šè?“}Füè[n?‚p°M¼¯>?’Mûüå?„ù— y7?†v$áä/?ˆN%É–š?Š8Ðñ¢ÀÌ@@ @(@*@:@7?ð?ð?ð?ð?ð?ð¿PÄÿh¿gÀ¸,î?NbÊ"?~òÂ@*@®ÀïiÚì@”!é¢|?mÑ9Õ{?2×õË?äT×bî?iUåÕÊi@Ÿeÿ6‚:@›@¡- A‰7LÁ.„€@¡- A‰7L@¡-•éá°‹@¡- A‰7L@¡-“Ãa@@¡- A‰7L@¡-¡$Ý/@¡- A‰7L@¡- <[·»@¡- A‰7L@¡-’çÆ¨±@£†‡+ JÁ.„€@£†‡+ J@£†«6z‘@£†‡+ J@£†–ý!ÿ.@£†‡+ J@£††$Ý/@£†‡+ J@£††Á#ßó@£†‡+ J@£†”rü@9ÉÎ_oÒÁ.„>¤µÜÆ@4n5?|í‘@4u›=ÈL@3Ãt¼j~ú@3ÊQÎ`@3Œ~($ @3ô!-x@3Œ~($ @3=ë´M@3Œ~($ @3¥ZÅá@8J¨?–„Ø?8ˆ?£þ³Lqa/?”ääܳA³?”O5cOÈ:? !QÓØi@8J¨? ¥¬ ˆ?«¹f‰Ôü¯?—³ÄpÐ? %9½\Ö?–+•><£@8p÷?•cKç4+?ªÑkµn}á?¥k2ïm?ÉïŸJ¿à?œdWj>ö@@@@1@0?ð?ð?ð?ð?ðøøøøøøøøøøøøœ@®Dî—Oß@®Dï\(õÄ@®Dî—Oß@®Ez:µ^@®Dî—Oß@®EÁãˆ@®Dî—Oß@®E0?ˆ”@®Dî—Oß@®EAã”np@®Dî—Oß@®E9ùÀ-@–r¢Ðå`B@–r«IE£Å@–r¢Ðå`B@–rÜ$¶Î@–r¢Ðå`B@–rç¬\A@–r¢Ðå`B@–s2±Ép‘@–r¢Ðå`B@–s:ø_@–r¢Ðå`B@–rè÷õÓ@7žHè§æ@7Ÿ + ¨B¾@2î5?|í‘@2Úiˆs@2H“t¼j@22Š +6#Ñ@2uµsê³h@2I2²1PH@2uµsê³h@2JuQÄQ-@2uµsê³h@2KG§5{†?Ïy¨jP?‘uA Úbô?™Ê_ps?ªLýä5‡á?«¨Î¡–ÿ›?©T†ň¸?…ðE[i)?–g¿l£Fñ?—.»¾­¬Ð?¢yÝÞ7Ï? E‰.ÕÿX?›¾4(¤?˜ª´¤Œª?PgDÌm?ƒÝIE„²?ˆÊ~O0?‡ÿd °/?Ž{çcm¼è@@$@&@*@7@8?ð?ð?ð?ð?ð?ð?’aô§c?‚Ñ8E# ?g¾«í×ò?s"’íRP,@®E¼a6@–rÒ9àQB?†ø„㬃?“P-„­?ìÌ?ëÕÊ¢@i“ÊÛL@Ÿdéõv@È@@¨>]/Ÿ¾@¨>W +=p¤@¨>]/Ÿ¾@¨>V_¸ÿ‹@¨>]/Ÿ¾@¨>m&–ž/@¨>]/Ÿ¾@¨>Z9,µ6@¨>]/Ÿ¾@¨>Y:™Yù@¨>]/Ÿ¾@¨>Ysf9T@›?Ÿ¾vÈ´@›?Ú` À|@›?Ÿ¾vÈ´@›?™ˆƒ:@›?Ÿ¾vÈ´@›?•Jé¸L@›?Ÿ¾vÈ´@›?¡Ã§…2@›?Ÿ¾vÈ´@›?¢½…#@›?Ÿ¾vÈ´@›?¢¿Œ”G@8–šÔ,<Ÿ@8Žž9« @2Ìí‘hr°@2Äψ­×@2Ðå`A‰@2 ѹ{Þ@1=cˆe”°@1;(ˆ5n@1=cˆe”°@195Ä @1=cˆe”°@1;F2ºT{?”$úÀÁ’?’aÉUYÝÝ?‘,Û?Œ…¨F|?‘mt‹?Ý"ˆíƒ&?š­˜]?–…¯Ý Eá?’, e²RZ?‘ $< ¡?’ñÁC+?†Oxû|Î?‘ð±¼?Ž–áÐMÊ?„§Ð‹]@ù?„u„ņÇ?ˆŸC"V?‰@¿ ÁrŽ@@$@&@$@1@2?ð?ð?ð?ð?ð?ð?:¡ñ]¿sNÀÇ@?8?Uµo!?do¦Ø»N«@¨>YF޾™@›?¬ >?Sdê<9ž ?—“ÆÌÔ{?¥šJ–¤Ð?ö87?ü§@Ÿn= nò@ž@¨»²-V@¨»³÷ÎÙ@¨»²-VÁ.„€@¨»²-VÁ.„€@¨»²-VÁ.„€@¨»²-V@¨»®záI@¨»²-V@¨»¨´9X@¯˜Æ§ï²@¯˜ÌIº^5@¯˜Æ§ï²Á.„€@¯˜Æ§ï²Á.„€@¯˜Æ§ï²Á.„€@¯˜Æ§ï²@¯˜ÊÀƒn@¯˜Æ§ï²@¯˜Ãn—@7Bò䎊@7>šu@3W+ IºÁ.„M‰ûçm@2Æ“t¼Á.„QnÙ‡@1𖻘ÇãÁ.„NÜC,¥@1𖻘Çã@1óÉîËû@1𖻘Çã@1óä%®æ2?гá‡}@8#˜@8¾:@8 >+?‘ ·èf?“ d?|¬Çëý @8Î÷@8i§@8Å?‘áÙž­ò?Éöm/w@*›dZ¬@*šáG®{@+L²•éá±@+K…¸Qì@+L²•éá±@+K]ÌcñB@+L²•éá±@+KC•&?É`¯&xŽ?ÉGãA­÷?‘(¥¿á?‹¹GüÞõ?‘Dj?ÃwZL?ÐbV‡,?’ ,øÕC©?†[‘'Í?@§[*^?îCq$u?X78›š?€b¡´ñ@?Œ°¶.Ä+Æ?‚s@ˆaÛ?‚ù8 ±^?†£îž«î?†©b/bJö@@@@@,@(?ð?ð?ð?ð?ð?ð¿:ÙâYˆ?9P1æ`?‹E;?#Ç&Ðü@­‘ny«z@£Aè¯_bÆ? äaIÛÙî?2½¯²Ù\ ?;Þ12NŠh?^–ãsLì@Ÿs˜d#í@ @¯ Ïß;dZ@¯ äZ¬@¯ Ïß;dZ@¯ ÌcñA @¯ Ïß;dZ@¯ Î.±Ä3@¯ Ïß;dZ@¯ Ï·éø@¯ Ïß;dZ@¯ ÎV”@¯ Ïß;dZ@¯ ÌL˜`@©UOß;@©UãS÷Ï@©UOß;@©Uçl‹D@©UOß;@©Uµsê³@©UOß;@©UÛ"Ðå@©UOß;@©UFÜ]@©UOß;@©UJ#9Á@904mÅÖ8@9.záG®@3Ï|í‘hr@3Ò@·€4n@3"-V@3$•*™1@28DЩ*@2:…‡“ݘ@28DЩ*@2:dÂø7´@28DЩ*@29ûçl‹D?³‰ÑpEIt?“Ãruöò²?”lš5B¬î?{¾“úy6?‘·Xâe?’€ú¤ˆ4 ?ÀÊ»d9\?”zòžÕÿ?•¶ÀA½ +;?’:u.ý ?’>H>d#?‘1鄽 Ú?ȉÿ‹¤vw?*øT?ˆdÁ +-?…J]j?‰Ü)@Jq«?^^ω•@@@@@,@&?ð?ð?ð?ð?ð?ð¿cŠJe€?OóB{#?TP÷²ZÐ ?TäÂ6ià;@¯ ΚFv@©Uk³ýo?dÚ+O#Ž?dÇB¼ÅN?ÂçNÜïOÏ?¾ïKÆ ì_@ŸrCŠ´@¡@ª.9XbNÁ.„€@ª.9XbN@ª-"œwšk@ª.9XbN@ª,¡G®{@ª.9XbN@ª,”Ö¡aå@ª.9XbN@ª-NHè§@ª.9XbNÁ.„€@œâÕ%Á.„€@œâÕ%@œäìô!-@œâÕ%@œäÏv_Ø®@œâÕ%@œåšîc‰@œâÕ%@œã%zxl"@œâÕ%Á.„€@9p4mÅÖ8Á.„>¤µÜÆ@4Ô›¥ãSø@4\64ê@44“t¼j@3¼¾ß¤@@3uµsê³h@3Ôýó¶F@3uµsê³h@2èl"h Ô@3uµsê³hÁ.„NÜC,¥@8J¨?¾æ'‹ÕlÞ?»²Ï +· ?­dÒ¦Ó 3?ÔÿÖœ¾r@8Ù@8J¨?ÀîluûÞ?¼!z£sØÙ?°.OŠcÉ?ÖÊSx×À@8û—@8p÷?‘S1Êz?õª?ÉØ|Rüs¿?ÂõK/JRZ?‘Èx4ñž?¦W¾ »ZÕ?£¢6¿üs?¤~'àúT#?·}ߊÔ9È?ÝN•—w"?¾"“QÃ$@@@@@,@(?ð?ð?ð?ð?ð?ð? ïF£ ¿ž´7ÞºÀ?–1‹«½§?z„°Ø}ø@©t×fä{õ@§=öÞ‹Þ?©rì›§¢ ?5¸ÚAæ—@/¥"G{ï?ãíà!K?$@Ÿ^>ž>FT@¤@¨Êq&éxÕÁ.„€@¨Êq&éxÕÁ.„€@¨Êq&éxÕÁ.„€@¨Êq&éxÕÁ.„€@¨Êq&éxÕÁ.„€@¨Êq&éxÕÁ.„€@¬ »çl‹DÁ.„€@¬ »çl‹DÁ.„€@¬ »çl‹DÁ.„€@¬ »çl‹DÁ.„€@¬ »çl‹DÁ.„€@¬ »çl‹DÁ.„€@75S&Á¾Á.„>¤µÜÆ@3‚° Ä›¦Á.„M‰ûçm@2¢-VÁ.„QnÙ‡@1ó&Á½¥Á.„NÜC,¥@1ó&Á½¥Á.„NÜC,¥@1ó&Á½¥Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø¥@«²-V@«¥ãSø@«²-V@«šu%@«²-V@«ÙrGE9@«²-V@«Ölô!@«²-V@«ä“t½@«²-V@«è$ x@¢0%`A‰7@¢0 A‰7L@¢0%`A‰7@¢0' ù l@¢0%`A‰7@¢0*#9Àì@¢0%`A‰7@¢07éùr@¢0%`A‰7@¢02ñ©ûç@¢0%`A‰7@¢0 'RT`@8í¥œàv@8åéá°‰ @4J^5?|í@4?;dZ¬@3ß²-V@3ÎÅm\ú­@3 +0U2a|@2ð4mÅÖ9@3 +0U2a|@2ñA [À@3 +0U2a|@2òMÒñ©ü?Ÿ‹‘+-/Ü?éDEâ©Ö?–s3g¾²p?¢Ç˃.†?¦KÊbo¨Þ?´Fø}^«? Å{¿Ž<º?™´¦]˜ó?”_й@’?*ß(…Ž?¦Ì¢„“eE?¨÷¸0Å?ˆLdB"%? e@ˆ’„'?Š[¦Råb?˜µÑ½8|ò? ee«¿?·ßM(® @@@@@&@*?ð?ð?ð?ð?ð?ð¿ŽÍŒvD?cË× þ?yÛµ²àò´?q/ÂóüÉÛ@«ð"Ê@@¢0,ñWF.?—tnQZ?HpG.ï@KÍ=Ø?ô(ÑMöUw@Ÿi+ö‹˜@¦@¥½49Xb@¥½6‡+ @¥½49XbÁ.„€@¥½49XbÁ.„€@¥½49XbÁ.„€@¥½49Xb@¥½C× +=q@¥½49Xb@¥½Iº^5>@¯í‘hr°@¯ïß;dZ@¯í‘hr°Á.„€@¯í‘hr°Á.„€@¯í‘hr°Á.„€@¯í‘hr°@¯ V@¯í‘hr°@¯ +Ow@7ð4mÅÖ8@7ñ ²•éâ@3pÄ›¥ãTÁ.„M‰ûçm@2b-VÁ.„QnÙ‡@1p–»˜ÇãÁ.„NÜC,¥@1p–»˜Çã@1„2ÊW§‡@1p–»˜Çã@1r×sü? Eˆ‡ðó‹@8#˜@8¾:@8 >+?éDEâ©×?˜}>h”'?žˆ2}@8Î÷@8i§@8Å?¢õ%ÒgÔ?ŸÒOÝ&P?‘ +òtMŠ@8 * @8p÷@8¶?°4\ɵ?ŽÜÂÎÛÖa@@@?ð?ð?ðøøøøøøøøøøøø§@¡g 7Kƨ@¡g\(ö@¡g 7Kƨ@¡fö8†YK@¡g 7Kƨ@¡fù0¾ í@¡g 7Kƨ@¡fÉùrG@¡g 7Kƨ@¡fê~ùÛ#@¡g 7Kƨ@¡füPHð@¨ùݲ-V@¨ùÌÌÌÌÍ@¨ùݲ-V@¨ùÏ4Ö¡b@¨ùݲ-V@¨ùÖE¡ÊÁ@¨ùݲ-V@¨ùÕL˜_@¨ùݲ-V@¨ùÑø .@¨ùݲ-V@¨ù°U2a|@8²ÃÉîËû@8±œàuöý@3Ò Iº^5@3Ñ©ûçl‹@36§ï²-@31°‰ 'R@2µµsê³h@2±&éxÔþ@2µµsê³h@2²äŽŠqÞ@2µµsê³h@2¦šÔ,<Ÿ?‚á²Olºü?¢Û)Qé?§$jЂ†Ë?º¬šÄB?¦¬÷4çí?šC…{‹?“Æ×q„nï?­Uóú*˜?¦+öbÚË›?¥ZÑpÉç?¥yoÌå?¢©¨èÖ%˜?¶/é8R”é?ŸÈ$éþ(@@@@@*@*?ð?ð?ð?ð?ð?ð¿Q=½Œ?(ˆ©ÚT?29¿º]êÚ?áXd)´?Qwq»–^ß@Ÿs +m_^Ò@©@¯Ò„›¥ãT@¯Ò„›¥ãT@¯Ò„›¥ãT@¯Ò†YJôñ@¯Ò„›¥ãT@¯Ò…+ÓÃa@¯Ò„›¥ãT@¯Ò…Éä@¯Ò„›¥ãT@¯Òƒˆe”®@¯Ò„›¥ãT@¯ÒƒS÷ÎÙ@¥¦G+ J@¥¦FéxÔþ@¥¦G+ J@¥¦H$ x@¥¦G+ J@¥¦G†Â&@¥¦G+ J@¥¦H>BZî@¥¦G+ J@¥¦G8}¾@¥¦G+ J@¥¦HK]Ìd@3­¥œàv@3­¸ºÇË@0º^5?|@0Ô•*™@/|¬1&ê@/|]cˆe”@.fL/ƒ{K@.f€IQƒ@.fL/ƒ{K@.fL/ƒ{K@.fL/ƒ{K@.f1ø .?€‚ñêã ?¾‰máÚ?‘K]Ã4?Œ ßõIyû?‘õbÐ\?Êëüâi{?|öOÿÝ?’LÁŒÀ´a?«'Q™µ?iêhAÜ?ñ«Ý„ Õ?R g!Ú¢?‚|׿pY?ŒÆò/¢äÍ?‚† SFò?ƒ†+ Å?†¼Š˜L¥÷?†¼Š˜L¥÷@@@@@,@*?ð?ð?ð?ð?ð?ð¿&‹>Ö?/™X0?0øv›±ªd?ÔX`™@¯Ò„lwûþ@¥¦G}‰ß?PÜ6÷@N?@pË<9r¢?«öÎNĬ?‹M7ÔüÛµ@ŸgQ(¿H@ª@¯‹‚\(öÁ.„€@¯‹‚\(ö@¯ˆbMÒñ©@¯‹‚\(ö@¯ˆ "h Õ@¯‹‚\(öÁ.„€@¯‹‚\(ö@¯¼]cˆf@¯‹‚\(ö@¯“ŽóMi@«'ï²-Á.„€@«'ï²-@«Z…‡”@«'ï²-@«öý!ÿ@«'ï²-Á.„€@«'ï²-@«þƒä%®@«'ï²-@«Ù0¾ í@:VšÔ,<ŸÁ.„>¤µÜÆ@5Å?|í‘h@6)“ àÞÒ@5>V“u@5wXâe@4L¿±[W?Á.„NÜC,¥@4L¿±[W?@2ÚÔ,<ží@4L¿±[W?@2»¹Œ~($@8J¨?ë’ŒØPÀè?öýôƒQ¹@8 >+?ÀaC1 ?ÑôA0R@8J¨?Ú¤4H4’Œ?ßÊî„™'Ò@8Å?¹¶ó:†‡V?ÉòàMpù@8p÷?Ñ +Š6ü#6?ÙûæqL…ý@8¶?˜F†éôâß?£Ä·èŠ@@@,@*?ð?ð?ð?ðøøøøøøøøøøøø«@ªž“t¼j@ªž5?|î@ªž“t¼j@ªžÿ—$@ªž“t¼j@ªž#Š @ªž“t¼j@ªž&¸ºÈ@ªž“t¼j@ªž1œàu÷@ªž“t¼j@ªž0–»˜È@¨)’ñ©ûç@¨)’-V@¨)’ñ©ûç@¨)«)^ž@¨)’ñ©ûç@¨)†ÏAò@¨)’ñ©ûç@¨)ƒ,¥zw@¨)’ñ©ûç@¨)l/ƒ{J@¨)’ñ©ûç@¨)‚ Iº^@7ð4mÅÖ8@7í«ŸU›=@4ë¥ãS÷Ï@4ÔohÛ@4t“t¼j@4Wl‹C•@3³&Á½¥@3›¹Œ~($@3³&Á½¥@3ŸHË’:@3³&Á½¥@3¢-V?3ßa=„?œPîñ°¦?·æhÎŒF?©H} ¬ýy?°™û§ü¦?¤;»ŒKå.? Eˆ‡ðó‹?”ÇtæMPÐ?·'_#Š?± Çÿm +È?µh`‘©i¤?¢©¨èÖ%˜?À»¾Ô«­?Å{¿Ž<º?œvå\ƒd?šlFÛj¿þ?˜£™Ðåˆ?ªvWÚÓ;å@@@@@,@*?ð?ð?ð?ð?ð?ð?o‹¥{ ¿owMå?;-O·ËÜ?`â !3:@ªž'B~¸@¨)ˆ3¶F?]ñG¥J +?пv?–ä¿ëkò?Ôo7!w×R@Ÿh_ñ. @¬@¦ÔF§ï²@¦ÔFéxÔþ@¦ÔF§ï²@¦ÔH Ô•@¦ÔF§ï²@¦ÔG®zá@¦ÔF§ï²@¦ÔGâ‚@¸@¦ÔF§ï²@¦ÔE®æ1ù@¦ÔF§ï²@¦ÔE¡ÊÀƒ@¬ãXbMÓ@¬ãXbMÓ@¬ãXbMÓ@¬ãXy=Ù@¬ãXbMÓ@¬ãX_ö”@¬ãXbMÓ@¬ãX†YJô@¬ãXbMÓ@¬ãX}¿G@¬ãXbMÓ@¬ãX­«ŸV@-"ø7´¢4@-"ø7´¢4@%3t¼j~ù@%3t¼j~ù@#XÔýó¶F@#XÔýó¶F@"á-w1Å@"á-w1Å@"á-w1Å@"á-w1Å@"á-w1Å@"á-w1Å?É^³Dw'?°çR;?‘ÌË>¯f?‹²MÿAÿ8?êtÿKÑc?¶*WFÑ?ÐbMçê_x?’ +‰¸Ì?†[‘'Í?9ÍÇ~FÀ?Î ¯xV?L "¾?€bMÕky?Œ¬8 T£?‚nâwg?‚â‡~ûÉ\?†‡hÉÈÓ?†‡hÉÈÓ@@@@@,@*?ð?ð?ð?ð?ð?ð¿PËæRà? ±›÷?4µj¾  ?&9 (@¦ÔFŽ—Ô@¬ãXpµÞ?Céñèz?5ß‚«tå?ƒ~-óF>¿?cd“(cõo@Ÿs Þ5gÓ@­@¢4bMÒò@¢4záG®@¢4bMÒò@¢4$%®æ2@¢4bMÒò@¢4$µÜÆ?@¢4bMÒò@¢4|í‘h@¢4bMÒò@¢4ô‡ü¹@¢4bMÒò@¢4=ÈK@«Iœ(õÂ@«Iž5?|ï@«Iœ(õÂ@«I˜DЩ@«Iœ(õÂ@«I–“u@«Iœ(õÂ@«I–“v@«Iœ(õÂ@«I©*1@«Iœ(õÂ@«I“üPI@7¹Œ~($@7“Ý—ö,@2€ Ä›¥ã@2wy¦µ @1ñ‰7Kƨ@1ëŸU›=@0𖻘Çã@0é=Ùb·@0𖻘Çã@0åzxl"h@0𖻘Çã@0åY³Ð|…?‚á²Olºü?›Î ¥/?˜þ÷þ†ø‰?‹ë¤½?‡á?’Z†Ažj?•8öJ&7µ?€‚ñêã ?”ºu(†¼¦?”aB#Gi?“mŸqa?‘êë·áþA?‘µEÂBÕl?”⦘¹Ô?šÑ~¿²Ô?Ÿ|–„aQ?ƒ*|š\/´?‰6‰õË?Š`½i=ÓØ@@@@@(@(?ð?ð?ð?ð?ð?ð?`« ß¿fŒ¾?QZËà˜Êœ?A¹†#‘t×@¢4ýjï`@«I—Î{¸™?p”_רÁs?bl°žÇðÃ?å«Ù7‹?Ëâí¡°z@ŸgŽœk,Æ@®@¤W‰7KÇ@¤W‰7KÇ@¤W‰7KÇ@¤W€4mÅÖ@¤W‰7KÇ@¤W}!ÿ.J@¤W‰7KÇ@¤WzáG®@¤W‰7KÇ@¤W{"Ðå`@¤W‰7KÇ@¤WzQÎ@® 6E¡ÊÁ@® 6‡+ @® 6E¡ÊÁ@® <„µÜÇ@® 6E¡ÊÁ@® :^5?|@® 6E¡ÊÁ@® ;ÚQÎ@® 6E¡ÊÁ@® 8Ôýóµ@® 6E¡ÊÁ@® 7$tSŽ@5(†YJôñ@5(ºÇË*@3E?|í‘h@3D¢3œ¿@3)Û"Ðå`@3*qÞi­C@2Š0U2a|@2ˆè§æ›@2Š0U2a|@2‡€4mÅÖ@2Š0U2a|@2ˆe”¯O?|¬Çëý ?qÂ' +B›?™™w4fà¨?”oý]Þ‡&?“´<×?“”üU§<­?|öOÿÝ?”Iõ`ÆÓ›?”Ÿ•/ø]Ÿ?“ÅÒÏPÉä?’LÁŒÀ´a?× ³¸ÑZ?‚q6tNø6?œ‘z¥æ?‰¢Ò+ÜÝ®€?–àa¦vf¥?«”©Î›?—ý>5Ptv@Ÿt/NB„¨@°@©õ?|í‘@©×Ûôˆ@©õ?|í‘@©DcÈwb@©õ?|í‘@©1lFp¦@©õ?|í‘@©em¥(×@©õ?|í‘@©:a2¬ @©õ?|í‘@©;T½B@™K9XbN@™K6E¡ÊÂ@™K9XbN@™Kº¹B|‘@™K9XbN@™KYðñ·¥@™K9XbN@™K"¦º@™K9XbN@™KP/½9ƒ@™K9XbN@™K\ŒyO@7#g ù l@7×srh@3ã÷ÎÙ‡@3×t•×ë@3“t¼@2ë¼Ù&'V@2Ê0U2a|@2°N"¥j @2Ê0U2a|@2¸†„Ö«@2Ê0U2a|@2°WPb‰K?|çµB &€? žˆ€¡AÒ?²Cý´È}?§!V™k?žó·eÿ€?™|**ú?˜ê?©úté?©x„œº¥?°€ĉ§?™‰rØï_?¡ ó„íó*?¬Ãëçu¾ñ? è+Áø?•LÔwy»?—³F:>^Ì?’Uÿg·„?™–B¢‚½?›ºÉIÜ'@@,@,@*@9@:?ð?ð?ð?ð?ð?ð?ŒH’À?oþã¨?ra÷`À?€±™¢×@©!jƒãb@™K[Ž |?”R¸6ý[?œ=ˆÇ= @ Qá¢-øô@ƒ¬2¯ð+@ŸgŽnÑ~Ï@±@®ÖÏ\(õÃ@®ÖÓ¶E¡Ë@®ÖÏ\(õÃ@®ÖÙJôðÙ@®ÖÏ\(õÃ@®ÖÊÚ¹õZ@®ÖÏ\(õÃ@®Ö½p£× @®ÖÏ\(õÃ@®ÖÈr° Å@®ÖÏ\(õÃ@®ÖЉ 'R@§Ï º^5?@§Ï C•@§Ï º^5?@§Ï¢œwš@§Ï º^5?@§Ï º^5?@§Ï º^5?@§Ï (Œç@§Ï º^5?@§Ï/Ÿ¾@§Ï º^5?@§ÏwškQ@7·â‚@·€@7¹õY³Ð|@4Ùº^5?}@4á|ÚQ@4A‰7KÇ@4¤¯O „M@4¡:’£S@4¹#¢œw›@4¡:’£S@4¿ò䎊r@4¡:’£S@4¿ö”Ft?°:-%šÀ?¡U¢WªÂ?Ÿýˆh¾b ?¥:-ê°Ü?ªSŸ÷2Ì?ª $Μ$´?3ßa=„?œ°¶.Ä+Æ?­Õ\K\¢?®b̤?©&5³ +M?£®µZš…g?‚nâwfÿ?‘Žèã&!+?£XßÏTo×?¤wúb¼?§^ÐÜ_žr?±Ö$•3É@@@@@*@$?ð?ð?ð?ð?ð?ð¾¾U#°?m:o˜?p d’$u?I©y÷@®ÖÈ&c’@§ÏcŒKM?‰}Qb’þ=?pNK¾Š?ß–’•?µ·ËT¶BÒ@Ÿltqå×ë@²@«p•%@«oÿ|í‘h@«p•%@«pS÷ÎÙ@«p•%@«pS÷ÎÙ@«p•%@«p‰7KÇ@«p•%@«p£n.±@«p•%@«p¶®}V@¯$]²-V@¯$`A‰7L@¯$]²-V@¯$[çl‹D@¯$]²-V@¯$_¾vÈ´@¯$]²-V@¯$]ó¶E¢@¯$]²-V@¯$^ߤ?æ@¯$]²-V@¯$a [À@7G>«6z@7DohÜ@2E?|í‘h@2Eœàu÷@1•`A‰7L@1•¨Xy=Ú@1:Ô,<ží@1;"Ðå`B@1:Ô,<ží@19Û"Ðå`@1:Ô,<ží@1:#9Àëî? Å{¿Ž<º?ZÁ».œ?‘ŸÇSñ?‹¦ ŸYÔ?‘ÏX¼ãs~?‘£‡9²þ?‚á²Olºü?’&u÷E»@?Œqç©Fü?1ð'7éÃ?‘Ú‚ýc¯?ú`@0k?—ÅΤ'Eë?GÚ +­ ?‚˜YªüÏF?‚ù8 ±^?‰]³ß’Ý?‰©OO ¨@@@@@@?ð?ð?ð?ð?ð?ð?B]ã:пk€?# ÆWV?7è±3)@«p׳I@¯$_«éÞï?9!–0rŽÇ?[›ÙQ?n3Ųb?¸Xñ¾4!@Ÿn$êX¿V@³@§Ù§ï²-@§ÙŸ;dZ@§Ù§ï²-@§Ù£,¥zw@§Ù§ï²-@§Ù¢Ðå`B@§Ù§ï²-@§Ù¡ [À@§Ù§ï²-@§ÙŸö”F@§Ù§ï²-@§Ùš^5?|@¥y’ñ©ûç@¥y²-@¥y’ñ©ûç@¥y—éùs@¥y’ñ©ûç@¥y—eýŠÛ@¥y’ñ©ûç@¥y—´¢3œ@¥y’ñ©ûç@¥y£n.²@¥y’ñ©ûç@¥y‡8}¿@7·â‚@·€@7¯ªÍžƒä@2ÎÙ‡+@28†YJõ@0²-V@0\ú¬Ùè@0OO „M@0M(Œç°@0OO „M@0B×sü@0OO „M@0C¢œwšl?}Ñ¿ž,?—ð:±µ~+?‘yß]³Õø?ŽÝ¡uÒ(r?Ÿ0 碽ü?Ÿ)áÚ/aW?Ž=fA:?••´þDê‘?’TÖ©E?“¶Ì¶Öj”?¨ª±(‹yK?  +ýt¨!à? t€4Â?GÚ +­ ?ƒ<Õp?„ mŠmsi?“÷Š>õª?•ƒ•&+B@@@@@,@,?ð?ð?ð?ð?ð?𿠺Ǫ ¿FÞ~ô?CÚ³;¼?c1!ðìÛ™@§ÙŸ0²ï—@¥y ~_X?bSù#ññÿ?t÷Kç?ÚÁ¶IÉ?óDíßd@Ÿeíoˆê@´@¢¶˜“t¼j@¢¶Ÿ¾vÈ´@¢¶˜“t¼j@¢¶Æs×Ü@¢¶˜“t¼j@¢¶µµsê³@¢¶˜“t¼j@¢¶¸ï4Ö¡@¢¶˜“t¼j@¢¶µÏªÍŸ@¢¶˜“t¼j@¢¶¶”Fs‚@ ón—P@ ó"Ðå`@ ón—P@ ó=¿HÌ@ ón—P@ ó<‘ÑN<@ ón—P@ ó@IQ‚@ ón—P@ ó2ñ©ûç@ ón—P@ ó9JôðØ@6[¹Œ~($@6RþÅm\ú@2©‡+ @2vÂ&€I@1®ùÛ"Ðæ@1Šxl"h +@1O „M@0ê0U2a|@1O „M@0ê)Çy¦µ@1O „M@0éDg8~?‚á²Olºü?—.‰†5¸?˜/×T•£ð?‘sNX„êÒ?˜BaÖœÈ?”OPlðó[?‚á²Olºü?±µŠá¤V?¦Öµ gø?™Ücãgp?s»Hz¾?–¼åCÝqÕ?–]_«Q?Žrø·óæ?Ž“‹}Tz?…bv{3dZ?‰_uñšó?‹¼`’ i2@@@@@(@$?ð?ð?ð?ð?ð?ð?vÝ%¥ä€?|n””R?[q<Ço?b»8-O~ø@¢¶¬Äx´-@ ó*×0kˆ?{Ê^ +/ò?ƒ>ù—Œ•Ú?øW÷p½@ˆ‹{ù @ŸfvÇn‹@µ@­Wçl‹C–@­Wçl‹C–@­Wçl‹C–@­WèË’:@­Wçl‹C–@­Wèr° Å@­Wçl‹C–@­Wè§æœ@­Wçl‹C–@­Wæs×Ü@­Wçl‹C–@­WæL/ƒ{@«rQë…¸@«rQë…¸@«rQë…¸@«rQë…¸@«rQë…¸@«rRn—P@«rQë…¸@«rRòä@«rQë…¸@«rRòä@«rQë…¸@«rR{²þÅ@/“œ¾ß¤@/“œ¾ß¤@)MV“@)M(Œç¯@'è1&éxÕ@'èð¹@'”`ªdÂù@'”`ªdÂù@'”`ªdÂù@'”`ªdÂù@'”`ªdÂù@'”SŽóMk?É^žQ5P‚?Æ¿5›7÷?‘Ûü†Nã?‹ª½¨ª8v?êtÿKÑc?¶*WFÑ?ÐbMçê_x?’ ,øÕC©?|™,Ž!?/ò×ÈZø?Ó%y*£=?M\³Ù“@?€bMÕky?Œ¬Çëý ?‚oÁÆÜ§÷?‚äÍ“½E'?†‰Oú|q?†ˆ#.÷@@@@@,@*?ð?ð?ð?ð?ð?ð¿QhUÌ>?#6b”¼?3ß{È~*|?5;· ¢\@­WçKHw@«rR:À×?C} V?!<(âÃ?ø'ƒÅ{¥?:Tª9Ot@ŸsM9 @¶@®ü±&éxÕ@®ü±&éxÕ@®ü±&éxÕ@®ü° Ä›¥@®ü±&éxÕ@®ü±&éxÖ@®ü±&éxÕ@®ü°£× +=@®ü±&éxÕ@®ü¯ „M@®ü±&éxÕ@®ü¯–»™@¨$<í‘hs@¨$=/Ÿ¾@¨$<í‘hs@¨$=Ùb¸@¨$<í‘hs@¨$=—ö+k@¨$<í‘hs@¨$>Ov_Ù@¨$<í‘hs@¨$=ŠÚ¹ô@¨$<í‘hs@¨$>š@3›¹Œ~($@3›~ÿ—$@.…`A‰7K@.„?åÉ@,‘&éxÔþ@,–»˜Çä@+™b¶®~@+˜y=Ùd@+™b¶®~@+˜ºÇË+@+™b¶®~@+˜†YJôð?}Ñ¿ž,?ÖÈ ¼?‘!!Ø×‹7?‹ÁË…ÉT?÷6r In?ºª$Ð?|öOÿÝ?’ÍîfÕ?~ËQ§?;ß $Þû?ÝIMÎ?PS2K¯™?‚s@ˆaÚ?Œ¸†‡ÄÅ?‚yî8Á$?‚äÍ“½E'?†½ª»—?†l&þ@@@@@(@*?ð?ð?ð?ð?ð?ð¿8 øp?'ô3Y? e0ÌL?„i¨‡ã@®ü°`F@Q@¨$= nHè?<í ’Žrß?9€7®†Ê?†B6 n™K?€@ÃYx<¢@Ÿg¤&Qó@·@¦½÷ÎÙ@¦½t¼j@¦½÷ÎÙ@¦½¹ª Ï@¦½÷ÎÙ@¦½ÞAª@¦½÷ÎÙ@¦½¬l=W@¦½÷ÎÙ@¦½Š-$@¦½÷ÎÙ@¦½\fÈ—@™9ê~ùÛ#@™9ë…¸R@™9ê~ùÛ#@™9ìëÕ>I@™9ê~ùÛ#@™9é*0U2@™9ê~ùÛ#@™9ë?Oêå@™9ê~ùÛ#@™9ì¬× @™9ê~ùÛ#@™9ñÄ2ÊX@47â‚@·€@47ú=@ÒF@0f‡+ J@0fe¸×´.@/ÊÀƒn@/¹»#?@.p‰ 'RU@.pì¹—"…@.p‰ 'RU@.s˃Úî@.p‰ 'RU@.s,„Ý?}@T˜ÁÎ¥?ço +W¤?‘@Ѹü?‹¬LdTËO?ùØGBx‡?Ýž¡¾{?}@T˜ÁÎ¥?’hjSƒ?‘‘Sù`ï?0×rà…“?é‚t]r?ÇgTפµÜÆ@0n5?|í‘@0‹J#9Àë@0ï²-@0($ x@0Œ~($ @0p°ò{²ÿ@0Œ~($ Á.„NÜC,¥@0Œ~($ Á.„NÜC,¥@8 +Näy?¨^S2{Ž¡?ºÃU¼í÷É?®½;Ñw~4@8Iç@8Ù@82rê?¡–}y¢‘?¸6kùÔ?°ìô¥MŠ#@8S@8û—@8L?«ë"{Ę?°Mêʸ?Á*Á½ÄvZ@8 Ø@8 Ø@@@?ð?ð?ðøøøøøøøøøøøø¹@®î-V@®î,‹C•@®î-V@®î..±Ä3@®î-V@®î.æ1ø¢@®î-V@®î-Oß;d@®î-V@®î+’:)Ç@®î-VÁ.„€@¨ÿ¸Qì@¨ÿ›¥ãT@¨ÿ¸Qì@¨ÿðŽ@¨ÿ¸Qì@¨ÿ€IS@¨ÿ¸Qì@¨ÿýŠÚº@¨ÿ¸Qì@¨ÿ¢œwš@¨ÿ¸QìÁ.„€@6‰Î_oÒ@6‰îËû¶@2«¥ãS÷Ï@2¬¾ß¤@@2PA‰7KÇ@2OŠ Þ@1£ÉîËû@1¤ŽŠqÞj@1£ÉîËû@1£œ¾ß¤@1£ÉîËûÁ.„NÜC,¥?}Ñ¿ž,??ÖCã ?’´ýBI{?Uÿyu”#?’o?P´À@8Ù?}Ñ¿ž,?’V"y$R?‘K54;­?øQñĨó?’öhšº–Ï@8û—?Œ¢yëjk±?lío>÷?ˆïhƒEõ§?Œ(æQ?ˆA0û)n@8 Ø@@@@@,?ð?ð?ð?ð?ðøøøøøøøøøøøøº@¬ü‹Æ§ïž@¬ü‹Æ§ïŸ@¬ü‹Æ§ïž@¬üquŽ@¬ü‹Æ§ïž@¬üŒVÕÏ«@¬ü‹Æ§ïž@¬üqu@¬ü‹Æ§ïž@¬ü‹Æ§ïŸ@¬ü‹Æ§ïž@¬ü‹C,¦@¬†”ýó¶F@¬†–‡+ @¬†”ýó¶F@¬†˜l"h +@¬†”ýó¶F@¬†—éùs@¬†”ýó¶F@¬†˜l"h +@¬†”ýó¶F@¬†˜Ôýó·@¬†”ýó¶F@¬†™Û"Ðæ@4ºqÞi­C@4º^5?|î@0ë¥ãS÷Î@0êxl"h +@0H“t¼j@0G8}¿H@/QÑN;Í6@/OAò×t@/QÑN;Í6@/N!–R½=@/QÑN;Í6@/M\ú¬Ùé?}Ñ¿ž,? ¸×KG?’5 µ¿$„?ŒªèkÜ?‘¿ÐÅu?‘)]•\¬?}Ñ¿ž,?“«ö„@×®?’TÖ©E?£û,Ɇ?‘!U?Ð{Ò?‘õe\Š«p?‚q6tNø6?ŒïQ¼º“ã?ƒÆ×q„nð?ƒË´ÔC¶¼?‡v>ª¸ ?ˆCns¥ @@@@@$@*?ð?ð?ð?ð?ð?ð¾»Ã½?E6áI?+’_¹6w²?ë@6 +^5?|íÁ.„M‰ûçm@5ß²-VÁ.„QnÙ‡@5ò䎊rÁ.„NÜC,¥@5ò䎊rÁ.„NÜC,¥@5ò䎊rÁ.„NÜC,¥?›’qvš°•@8#˜@8¾:@8 >+@8Iç@8Ù?óA[ØïF@8Î÷@8i§@8Å@8S@8û—?Žd°3š>@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø¼@§œ.—Oß@§œ"Ðå`B@§œ.—Oß@§œ(e”¯O@§œ.—Oß@§œ€4mÆ@§œ.—Oß@§œ¦µ @§œ.—Oß@§œquŽ!@§œ.—Oß@§œÕϪÎ@¨%Õ%@¨%¥¡ÊÀƒ@¨%Õ%@¨%Á$Ý/@¨%Õ%@¨%ɺ^5?@¨%Õ%@¨%ÑÞi­C@¨%Õ%@¨%³Ãa@@¨%Õ%@¨%»/ìVÕ@8įO „M@8­æšÔ,<@4Iº^5?@4Ñ·Xâ@3©Û"Ðå`@3oÒòä@3!:’£S@3¾ß¤?æ@3!:’£S@3 àÞÒ‰@3!:’£S@3 ú¬Ùè>?´ Z è´ß?£-Ÿ56æ+?»˜èèay?ªE> Ì?¬ ‰M%?§ÙYlãp?¦NIÉ®š?¤³u¿9õ“?·Gž¿£ö?²8”k +7H?°¬ ô ô?ª.Wæ—“?«yWRÉqf?“&•Z÷˜#?—eI¥Ð6?“DάR²? ¦å_¹?¡è9)—N-@@@@@,@,?ð?ð?ð?ð?ð?ð¿`ã~•g?q­ýãÎ?I"¾{mþ¥?p"/Ñpë@§œ +ðð¤@¨%·W°O?cùz[á·?‘>›Ç4.?D–ÇÃ,?ç-§oÚ @ŸmÄÙ.Þ@½@¡¾Ù‡+@¡¾ÙXbN@¡¾Ù‡+@¡¾Ú^5?}@¡¾Ù‡+@¡¾Ù³Ð|…@¡¾Ù‡+@¡¾Ú¬1@¡¾Ù‡+@¡¾×Ûô‡ý@¡¾Ù‡+@¡¾Ø7´¢3@ªnKƧïž@ªnKƧïž@ªnKƧïž@ªnL1&é@ªnKƧïž@ªnKíúCþ@ªnKƧïž@ªnLcñA @ªnKƧïž@ªnL¥zxl@ªnKƧïž@ªnL˜_÷@2úqÞi­C@2ú~ùÛ"Ñ@-{"Ðå`A@-{W>«6z@,|¬1&ê@,|ÓZ…‡•@+Bu%F +§@+Bh Ô•@+Bu%F +§@+BÞÑ·@+Bu%F +§@+BÐå`AŠ?É_\p)Ï?ÉGãA­÷?‘"žæÆó¡?‹½XQê>æ?íOþtà?¼‚Ë¡K?ÐbMçê_x?’ ,øÕC©?~ËQ§?9ÍÇ~FÀ?Ó%y*£=?M\³Ù“@?€cPßQª?Œ°¶.Ä+Æ?‚yî8Á$?‚æÊ¬vã?†½ª»—?†–f_ÔŠŠ@@@@@*@(?ð?ð?ð?ð?ð?ð¿MM˜v²?I}˜?9n©QËÛv? ¢²z2q¼@¡¾ØáA2C@ªnL‡’S?Hsƒ³·8?B[M‘kN?P:î»L‚?)̬w ˆr@Ÿs ‡p@¾@ªÅɺ^5?@ªÆ[¥ãSø@ªÅɺ^5?@ªÅ‹¬q ³@ªÅɺ^5?@ªÅA½¥ž@ªÅɺ^5?@ªÅˆ1&éy@ªÅɺ^5?@ªÅÝæšÔ-@ªÅɺ^5?@ªÅÞÑ·@«‚ Iº^@«ÊÀƒo@«‚ Iº^@«XüPH@«‚ Iº^@«féxÔþ@«‚ Iº^@«;Í5¨X@«‚ Iº^@«Z^5?}@«‚ Iº^@«nóMj@9šÔ,<Ÿ@9ØK]Ìcñ@4E?|í‘h@4#¯·éù@3È“t¼j@3 Ë)^ž@2Ê0U2a|@2¤•*™1@2Ê0U2a|@2®ÿ—$t@2Ê0U2a|@2²×sü?ð°–Ž]?¬97êºþ?½$°¦×›?³U oiý?«oDŽ?®¿sY°(?ð°–Ž]?±Îæ.ð»?²P#G¤Ó—?Àý¾!=?µ•^o i¤?§yÂ~3Y?ð*wjs—?“¢ ßÌF2?¥1?⇦?œX^2If=?œ EÝ‘z6?¤²¢Òó?ð@@@@,@*?ð?ð?ð?ð?ð?ð?¡`1`?“µª›>@?‘ʹÄ\Îë?}ò«_ÃÑ@ªÅËщ)@«\W²?eаÒê?Š*n’ƒØR?õ¦›;XA?Âd«DÉð%@ŸuF¢º{@¿@£›~vÈ´9@£œ$Ý/Ÿ@£›~vÈ´9@£›PbMÒò@£›~vÈ´9@£›y³Ð|…@£›~vÈ´9@£›„tSŽó@£›~vÈ´9@£›r° Äœ@£›~vÈ´9@£›m‘hr¯@¥Ñó¶E¡Ë@¥ÑÉ7Kƨ@¥Ñó¶E¡Ë@¥Ò Ùè>B@¥Ñó¶E¡Ë@¥Ò\(õÃ@¥Ñó¶E¡Ë@¥Ò¶®}V@¥Ñó¶E¡Ë@¥ÑøÇâ‚A@¥Ñó¶E¡Ë@¥ÑÿåÉ@8Q|ÚQ@8 bMÒñª@4R Iº^5@4Rñ©ûçl@3;Ƨï²@34ã¼ÓZ†@2”mÅÖ8†@2’h Ô•@2”mÅÖ8†@2¼@2”mÅÖ8†@2’ëC,¦?æf¯Ìi„¸?©V½jnè¶?”âLñ¹D?”ÑD²Û?•Äí¥×?šæ5ƒ‹Å‹?ÅÇGË`O_?§S„ë`c?’€fç½Î?™MßïšNÆ?” E®!—?˜¿Df©v=?Õ ºúÔ©ù?¢r«X™÷?‚¯­Ù¤Á¶?’wÓ^2&Ú?‘¬xÆ×S?•*†*Zû@@@@@"@*?ð?ð?ð?ð?ð?ð¿…÷­[@¾áòM@?dúÖÓÈÚ?r¨›ÈwJn@£›wŸåHæ@¥ÑýAgQ$?rÛ²>*.­?€³ŠWdÅ?ÐYEÝn/?é5<Éqx%@ŸsKú¤V{@À@«Š(õÂ\@«Š(H¾µ³@«Š(õÂ\@«Š)Ý 4$@«Š(õÂ\@«Š+›Ž‘•@«Š(õÂ\@«Š*^>åp@«Š(õÂ\@«Š)O^Ux@«Š(õÂ\@«Š(ùBúH@š_;dZ@š_;dZ@š_;dZ@šaêù½s@š_;dZ@šaSÚ*P@š_;dZ@šb;@š_;dZ@š`êøu@š_;dZ@šc)fÔ@3«µsê´@3« ¢t#*@0?|í‘h@0ÓÈ™-å@/ÊÀƒn@/€Ç:¼”p@.³üPH@.±×Ûô‡ý@.³üPH@.±~5@.³üPH@.±lðîcŒ?~Ov_Ø­«?ÐzÀ ?‘/S}]û?‹ÇZk÷8?‘dƒ25Û?Êû«?|¬h2:“?’ óž;a?ƒ+GÍ·?Z3—Ñ^:@«Š)×»ÿ@š`Ðïå?L’ž£TÀ?8ñš¨Á?¥ti–´^?€Í|pòÞ@ŸgÏ„ÂÏ@Á@£ Ƨïž@£¤¨ÁU@£ Ƨïž@£FÜ]cˆ@£ Ƨïž@£”¢3œ@£ Ƨïž@£ q ²—@£ Ƨïž@£ÞùÛ"Ñ@£ ƧïžÁ.„€@wÎÙ‡@ƒn—@wÎÙ‡@¿|í‘h@wÎÙ‡@‰…ðoi@wÎÙ‡@œý33333@wÎÙ‡@œþŸ¤?åÊ@wÎÙ‡Á.„€@3£g ù l@3“˜µ--š@0B° Ä›¦@/Ë]ÌcñA@/dZ¬@.[šu%@.žžš@-hr° Äœ@.žžš@- ƒn—Ž@.žžšÁ.„NÜC,¥?|çµB &€?ÐÏbl$‡I?¾TìÄË[?ªE> Ì?Ù Øq—×&@8Ù?}@T˜ÁÎ¥?Ø£áú?¤´ë'‰O?²20&† ?ÙôqéJö@8û—?ŠÐQØÚ3Ö?¥C‡y¿^?‘MM….äí?œq*ƒÒ?ªÃ4|ñ;@8 Ø@@@@@,?ð?ð?ð?ð?ðøøøøøøøøøøøøÂ@¨PùXbN@¨Pù™™™š@¨PùXbN@¨Q L˜_@¨PùXbN@¨Q Òñ©ü@¨PùXbN@¨Q?U›=@¨PùXbN@¨Q%œàu@¨PùXbN@¨QÅm\û@ +8Që…@ +9õY³Ð@ +8Që…@ +BÃÉîÌ@ +8Që…@ ý¿HË@ +8Që…@ +@ +8Që…@ +ƒä%°@ +8Që…@ +&ÏAò@5°4mÅÖ8@5­äËXê@1¸r° Äœ@1­¿HË’@1$¼j~ùÛ@1Â\(ö@0ëxFÜ^@0Í\ú¬Ùè@0ëxFÜ^@0Ñ$Ý/@0ëxFÜ^@0Ò‚@·€5?ŽÕQp Î?¢{V ‰]?¦zNaË Ð?´Ød¯]QÍ?²…Ð$þ"?±ùÐ % +?|çµB &€?›–ë•ñ^?¡î-™5×U?©| 5r4?§þwÏÇÏ??¬;•{cÉâ?ƒNeý¡|?•¾Ä6Ü?¡]mZRØ?–Ô¿»X¨?ÉJ6Л?§^ÐÜ_žr@@@@@,@,?ð?ð?ð?ð?ð?ð?†-Œa>€¿p ç•Ô?qJ{ü{†B?bmmd*@¨Q!B~ @ +1p,µ|?„ ²Ó•?v¦æ¶]t?òÖpøëwe?å D­§@Ÿ^ãÿs@Ã@£ÝZŸ¾vÉ@£ÝHõÂ\@£ÝZŸ¾vÉ@£Ýe¡ÊÀƒ@£ÝZŸ¾vÉ@£ÝX7´¢5@£ÝZŸ¾vÉ@£ÝZÇË(@£ÝZŸ¾vÉ@£ÝQœàu÷@£ÝZŸ¾vÉ@£ÝYrGE9@¡ýô¼j~ú@¡ýëÆ§ïž@¡ýô¼j~ú@¡ýò-V@¡ýô¼j~ú@¡ýâÐå`B@¡ýô¼j~ú@¡ýìcñA @¡ýô¼j~ú@¡ýíÒñ©ü@¡ýô¼j~ú@¡ýø“t¼j@9 ]cˆe•@9,žì¿±\@4f‡+ J@4_v_Ø­¬@3ù7KƧð@3àù k¹Œ@2æYJôðØ@2ܬ1&ê@2æYJôðØ@2Ýw1Å@2æYJôðØ@2ÝÌcñA!?°:-%šÀ?šÏD²öå ?¢{Xn |?nii)â?‘ÏX¼ãs~?˜Ê`1ó€`?±Á1È$å@¡a«n;¡È@¤ù¨ŠÛØÂ?R–2Œ¢K0?XàA6:•4?±SJDÎ?¹ `œG+L@Ÿgæ·Cmˆ@Å@«>B Iº^@«>D›¥ãU@«>B Iº^@«>A½¥@«>B Iº^@«>Aaä÷f@«>B Iº^@«>>BZîd@«>B Iº^@«><àuöý@«>B Iº^@«>=¿HÌ@£, Iº^@£+üj~ùÛ@£, Iº^@£,n—@£, Iº^@£,÷eý‹@£, Iº^@£,'RTa@£, Iº^@£,-à @£, Iº^@£,Š @7õS&Á¾@7ò×sü@3R Iº^5@3Qø -à@2ö§ï²-@2øXy=Ù€@1úÔ,<ží@1úÔ,<ží@1úÔ,<ží@1ùŒ~($ @1úÔ,<ží@1ù=Ùb·?îŠõ ?’Mj…•Ì‘?•]˜P?Ég(6ßð?’»–j˜ú?’Ýå"çX?}Ñ¿ž,?’“ºƒ;Nû?“÷Š>õª?‘aYZ†«q?”¤¦ð¹e?‘]Ë™$ë>? ¹aÕm ?ŽOv_Ø­«?‡»¢Øˆ‹?„†YÊ’È?ˆÔÞÑ—æJ?ˆ‹”âó@@@@@,@(?ð?ð?ð?ð?ð?ð¿Tu!ˆ¤?TþÝ×z?Bã¸1–71?ú ›å‰@«>>æo¬9@£,AÆ6?\Nvpß´?Cîàl9¼BZî@œÞ³3333@œÞ®}Vlô@œÞ³3333@œÞ³œ¾à@œÞ³3333@œÞÏAò×@œÞ³3333@œÞÚÔ,<ž@7 xFÜ@7ú]|@33S÷ÎÙ@37ÎÙ‡+@2Z~ùÛ"Ñ@2]‘hr°!@1Þ«6z‘@1ã÷ÎÙˆ@1Þ«6z‘@1èõÂ\)@1Þ«6z‘@1åL˜_÷?‡‡á´WÉ?¥nÇx?)?’>¯\¾¦?Žl¢¦µ¥?’¥.Kn Í?–yí+PYu?‡ D¥…ô?’LÁŒÀ´a?’¤šÜI«?ni"Í š?•¯ÃþƒR?—é aÀ‹å?ÚžQâa?Žâç.¡È?‘7#Œ!xv?Ž0 ½~ÿ?Š|)-}í(?„å;m7.@@@@@*@(?ð?ð?ð?ð?ð?ð¿eÎ8Q6?f Ý + ?2¿ü„‡Š?[*˜úTq@ªçŽ5§_@œÞÁDI¯?Q¶¢eTë?z±…§ +Ó?£¸â¦’ ?ó‡¢eb·@@ŸhŽ^dJÂ@Ç@§æ° Ä›¦@§æ¤Z¬@§æ° Ä›¦@§æ±N;Í6@§æ° Ä›¦@§æ°¾ í*@§æ° Ä›¦@§æ°|„µÝ@§æ° Ä›¦@§æ¯hÛŒ@§æ° Ä›¦@§æ¯\(õÃ@§KŠ=p£×@§KKC•@§KŠ=p£×@§K‹ŸU›<@§KŠ=p£×@§KŠW§†Â@§KŠ=p£×@§KŠÀƒp@§KŠ=p£×@§K‹6z‘@§KŠ=p£×@§K‹]Ìcò@7wâ‚@·€@7.ߤ?åÉ@1!hr° Ä@1 uöý!ÿ@0Ÿ²-V@0¡&éxÔþ@/ÑÑN;Í6@/Òn—Oß@/ÑÑN;Í6@/Òn—Oà@/ÑÑN;Í6@/Ò¼£o?¯ò5}'Î?Čۨ1A?‘\H{gX ?‹¬àÌ’Ç?‘'¬Å™» ?‘<ƒÜ_õ?¯ò5}'Î?’r/BÖ?‘c–…•#$?6) }’ë?‘Jâ”âj?¦QÎð\ã?–½™C)?†¡HŸÊç?ˆdÁ +-?‚ù8 ±^?‡<û¡71?‡ã ËÄž@@@@@,@,?ð?ð?ð?ð?ð?ð?0ºsæ¸?r´g“á@?R&¥úPåp?tçQTb¹Ç@§æ¯¥ë @§Kˆš8iù?cUWé~??†÷n­h–?Â+‘ ð>æ@S—Ç8X@ŸqJ›’j³@È@¯aG®{@¯a‰7KÇ@¯aG®{@¯aÊÀƒ@¯aG®{@¯bZîc @¯aG®{@¯b‚@·€@¯aG®{@¯`4mÅÖ@¯aG®{@¯`4mÅÖ@©å™™™™š@©å™Û"Ðå@©å™™™™š@©å™õY³Ð@©å™™™™š@©åškP°ò@©å™™™™š@©åšŸ¾vÉ@©å™™™™š@©åšu%F@©å™™™™š@©åš¬1@/KíúCþ\@/KíúCþ\@(a‰7Kƨ@(a|ÚQ@(¿;dZ¬@(¿;dZ¬@'#¼ÓZ…ˆ@'#¼ÓZ…ˆ@'#¼ÓZ…ˆ@'#¼ÓZ…ˆ@'#¼ÓZ…ˆ@'#¼ÓZ…ˆ?É_\p)Ï?Čۨ1A?‘!!Ø×‹7?‹ª½¨ª8v?ëÎ@ A2?ºª$Ð?ÐbV‡,?’˜‰%F²?„¦Ô•]I?-õI¸`K?Ó%y*£=?L "¾?€b¡´ñ@?Œ¬Çëý ?‚oÁÆÜ§÷?‚ãaÎúvh?†ˆ#.÷?†ˆ#.÷@@@@@,@,?ð?ð?ð?ð?ð?ð¿QAÁâ¿-Þ úx?6/³q ?OÓ+7 @¯a#¨˜@©åšG¶+?EUt_”îº?,±îDÔØ?†_n’?RÐHH<@ŸsÃÁñ“@É@£ ¥ãS÷Ï@£ |í‘h@£ ¥ãS÷ÏÁ.„€@£ ¥ãS÷ÏÁ.„€@£ ¥ãS÷ÏÁ.„€@£ ¥ãS÷ÏÁ.„€@£ ¥ãS÷ÏÁ.„€@ º^5?}@ × +=p¤@ º^5?}Á.„€@ º^5?}Á.„€@ º^5?}Á.„€@ º^5?}Á.„€@ º^5?}Á.„€@6wâ‚@·€@6fý!ÿ.I@2{ Iº^Á.„M‰ûçm@1Ͳ-VÁ.„QnÙ‡@1®_oÒ Á.„NÜC,¥@1®_oÒ Á.„NÜC,¥@1®_oÒ Á.„NÜC,¥?ð°–Ž]@8#˜@8¾:@8 >+@8Iç@8Ù?ð°–Ž]@8Î÷@8i§@8Å@8S@8û—?ð*wjs—@8 * @8p÷@8¶@8 Ø@8 Ø?ð?ðøøøøøøøøøøøøÊ@ ´œ(õÂ@ ´œL’o”@ ´œ(õÂ@ ´¢ê‰Åâ@ ´œ(õÂ@ ´©×>@ ´œ(õÂ@ ´£ÁÍ7@ ´œ(õÂ@ ´¤,Få@ ´œ(õÂ@ ´¢æâ8ù@¡AÀ@¡A½²-V@¡AÀ@¡A¾9Ïl@¡AÀ@¡Aµžœ~@¡AÀ@¡A¹ÚmpÒ@¡AÀ@¡Aµ”.Ü@¡AÀ@¡A¼Ô¹v@6è†YJôñ@6ïÊÓ¤°ó@2…?|í‘h@2ˆU2a|@2"-V@2*ì¸mÕ@1p–»˜Çã@1v<é&C@1p–»˜Çã@1vµ0­°@1p–»˜Çã@1wT‡x§?…ðE[i)?¤ûHˆ?”mX!—î%?ìÌ$8ëå?“Œ(ša?“[é˜Áo?|¬h2:“?’¬ÄþõŒƒ?“eÆŸ¡ì?‘X«*_?“™EÈeØ_?“Eï®ÖÂ?‡~P[—]?Ö(‚¬›í?Ø{Ñ—5?‡ºs´6ô?Šw‹/Éxv?Š¢“öÎ×@@&@&@&@4@2?ð?ð?ð?ð?ð?ð?[ϦÔÀ¿NØ]ÇH?BÛ±=î?G_iºøñ@ ´ » €Þ@¡A»Y~D?a—k/™?hYš§à¡K?Å9ž~f?ØàF2¡è@Ÿg»&8£t@Ë@¤Ñ&ffff@¤Ñ&éxÔþ@¤Ñ&ffff@¤Ñ!ÊÀƒ@¤Ñ&ffff@¤Ñ* Þ@¤Ñ&ffff@¤Ñ'ÈK]Ì@¤Ñ&ffff@¤Ñ'»/ìW@¤Ñ&ffff@¤Ñ#þ\‘Ð@© :^5?}@© ;çl‹D@© :^5?}@© 2° Äœ@© :^5?}@© 5sê³g@© :^5?}@© ;À6ã@© :^5?}@© 4¯O „@© :^5?}@© 4ã¼Ó[@6‡>«6z@6‡>«6z@3@ Ä›¥ã@3=ÅÖ8†Y@3 "Ðå`B@3fffff@2\ÚQÎ@2ZQÎ`@2\ÚQÎ@2YJôðØE@2\ÚQÎ@2XË’:*?€‚ñêã ?éDEâ©Ö?™ïfô?‹ÁË…ÉT?”?õ±oW?“ d?Œs¤DÅÐ?“eB^¤t?š }Õ>_?agÌf ?”GO˺Ÿû?“.½þ¹Š?—eI¥Ð5?ŒÐ¤Âÿê?‘bR?ˆã1µR?‹Ûx§Þ?‰ö±«tï@@@@@,@(?ð?ð?ð?ð?ð?ð¿*‰²R ¿XÛ7t?8üè2ÔÀ?F9\cÑ@¤Ñ&¦%?š@© 9—>®?YÓ:´\¦³?e€):?¹ñ…À4†>?È‘ÐRTt@ŸiJwÆ?S@Ì@ŸÙ¦éxÔþ@ŸÙ£ØVvL@ŸÙ¦éxÔþÁ.„€@ŸÙ¦éxÔþÁ.„€@ŸÙ¦éxÔþÁ.„€@ŸÙ¦éxÔþÁ.„€@ŸÙ¦éxÔþÁ.„€@§X˜“t¼j@§X˜“t¼j@§X˜“t¼jÁ.„€@§X˜“t¼jÁ.„€@§X˜“t¼jÁ.„€@§X˜“t¼jÁ.„€@§X˜“t¼jÁ.„€@6zqÞi­C@6{(ò}qv@2{ Iº^Á.„M‰ûçm@1€å`A‰7Á.„QnÙ‡@1TmÅÖ8†Á.„NÜC,¥@1TmÅÖ8†Á.„NÜC,¥@1TmÅÖ8†Á.„NÜC,¥?|¬Æ Væ@8#˜@8¾:@8 >+@8Iç@8Ù?‚n—Oß<@8Î÷@8i§@8Å@8S@8û—?„&z7 @8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøÍ@¡AÊÀƒo@¡AÊÀƒp@¡AÊÀƒo@¡AË0#Y@¡AÊÀƒo@¡AˆÉb@¡AÊÀƒo@¡AÊí^Åš@¡AÊÀƒo@¡AËZéô@¡AÊÀƒo@¡AÊÏÏ/@˜ÊŽV“@˜ÊŽV“@˜ÊŽV“@˜Ê؆8@˜ÊŽV“@˜ÊNGcX@˜ÊŽV“@˜ÊŽæ¥­@˜ÊŽV“@˜Ê‹liQ@˜ÊŽV“@˜ÊŒ–5R@1T xFÜ@1T!-w2@,æ§ï²-@,æ¯åAçÖ@,DZ¬1@,E:wˆÿ)@+̲•éá±@+ÏÅ`X­@+̲•éá±@+ÊN–Êï“@+̲•éá±@+Ê¥Û­‹?É^ÈmÔ d?Ôä'µ‡?‘7%Y´£?‹ùùã0of?‘í‡6Q?Æi·¼?ÐbMÝn½?’ X¬ä7?|™~o¬?¼´ÔC¥©? +ÐÎË—½@ŸsÔÔ6›@Î@ bMÒò@ Ë+ô@ bMÒò@ kÅ4@ bMÒò@ Jîé@ bMÒò@ Ä2ÊY@ bMÒò@  Åy¨'@ bMÒò@  €åÛ‡@¤Á'ï²-@¤Á'ï²,@¤Á'ï²-@¤Á(§ËÊ•@¤Á'ï²-@¤Á( Ô•@¤Á'ï²-@¤Á(; €@¤Á'ï²-@¤Á(IÒ"3@¤Á'ï²-@¤Á'Û±l@5m¥œàv@5mvä ×ø@0µãS÷ÎÙ@0µƒ¥;ŽL@0A‰7KÇ@0È6g¸?@.Âu%F +§@.Á]2XÕ@.Âu%F +§@.ÀIQ‚ª@.Âu%F +§@.ÀQ-lºÊ?}x—™ÿ›þ€?<'êˆ_Ì? +V–±¯ @ g!Û÷@¤Á(m&?\Ú€Ö§ì?*ß ‰Q&^?Å„³Ðïþ?aaÔúÁ…¢@Ÿga»5m.@Ï@¡ú!ÊÀƒ@¡ú#n—@¡ú!ÊÀƒ@¡ú"\(ö@¡ú!ÊÀƒ@¡ú"©“ á@¡ú!ÊÀƒ@¡ú"MÒñ©@¡ú!ÊÀƒ@¡ú"Zîc @¡ú!ÊÀƒ@¡ú!aä÷f@«™s¶E¡Ë@«™s3333@«™s¶E¡Ë@«™w$tS@«™s¶E¡Ë@«™tFsØ@«™s¶E¡Ë@«™wKƧð@«™s¶E¡Ë@«™t9Xb@«™s¶E¡Ë@«™sÝ—ö*@5¿–»˜È@5¿U›=È@2B° Ä›¦@2B&€IQ@1Z~ùÛ"Ñ@1Z¬1'@0𖻘Çã@0ïò䎊r@0𖻘Çã@0ð6âë@0𖻘Çã@0ð‰ 'RT?|öOÿÝ?/³)sšÌ?’#ç}iïë?F‘q/b?‘'¬Å™» ?’_‘Oo¨Ž?€‚ñêã ?’u¦ieõ–?‘å†36åG?‘Nw]6»ô?øóéM Ÿ?ú`@0k?‡»¢Øˆ‹?R©i»èi?ƒ~¨õ/¥O?ƒÛ®«etZ?†¼Š˜L¥÷?‰®ââP\@@@@@$@*?ð?ð?ð?ð?ð?ð¿2T—,P?4, B`?(,/#´¢?<7Ȥçù@¡ú"vÁ +@«™t,9Ýû?0*…yŒ±ƒ?\£›»ûg?iÝCt`?®„ðÿhŠ@Ÿg/À<Á¡@Ð@ œ7ÎÙ‡Á.„€@ œ7ÎÙ‡Á.„€@ œ7ÎÙ‡Á.„€@ œ7ÎÙ‡Á.„€@ œ7ÎÙ‡Á.„€@ œ7ÎÙ‡Á.„€@vD›¥ãTÁ.„€@vD›¥ãTÁ.„€@vD›¥ãTÁ.„€@vD›¥ãTÁ.„€@vD›¥ãTÁ.„€@vD›¥ãTÁ.„€@8Žì¿±[XÁ.„>¤µÜÆ@4ÇÎÙ‡+Á.„M‰ûçm@4;Ƨï²Á.„QnÙ‡@3ëxFÜ^Á.„NÜC,¥@3ëxFÜ^Á.„NÜC,¥@3ëxFÜ^Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøÑ@ª ž¸Që…@ª ©ûçlŒ@ª ž¸Që…@ª ”¢3œ@ª ž¸Që…@ª ¡G®{@ª ž¸Që…@ª ˜Ôýó¶@ª ž¸Që…@ª ’° Ä@ª ž¸Që…@ª ŽcŠ @ªâ¸Qì@ªâß;dZ@ªâ¸Qì@ªâs×Û@ªâ¸Qì@ªâ‡“Ý—@ªâ¸Qì@ªáüj~ùÛ@ªâ¸Qì@ªâ®æ1ú@ªâ¸Qì@ªây¦µ +@8Y*0U2b@8V¡aä÷f@3T›¥ãSø@3WéùrG@2ä¼j~ùÛ@2æµ '¼@1î_oÒ @1ò¼£n@1î_oÒ @1îóMj@1î_oÒ @1ï!-w1?Ÿ‹‘+-/Ü?“ÓLáS{?’d3ð"7?ŽõÕJ?–lô!-w?—Q,Äš¤?•²»UbB2?˜ଚÿw?’ÖsÄÖ?ð{¥âdû?“4¦{ºÕ?‘êey°úà? zkê 3U?Cx}¹x%?’Z†Ažj?‡v¯ªIì?^^ω•?˜§zy@@@@@*@(?ð?ð?ð?ð?ð?ð¿vH‡´·¿Tyʲ?@£ØòN;?e¼åápR0@ª —ªáò@ªâO 0n?W%ôgiÍ?‚<™¸lMJ?£@,;ˆí,?þdoÑn +@Ÿm£L…*ƒ@Ò@ž¿(õÂ\@ž¿`Ä›¥ã@ž¿(õÂ\@ž¿`¹iÂd@ž¿(õÂ\@ž¿Y¸Šñû@ž¿(õÂ\@ž¿X!TÇ@ž¿(õÂ\@ž¿U O{Q@ž¿(õÂ\@ž¿ˆ¤Ü¿@¢x3¶E¡Ë@¢x ~f›@¢x3¶E¡Ë@¢wžqˆðˆ@¢x3¶E¡Ë@¢xQ6ˆ`v@¢x3¶E¡Ë@¢xUëÐæ€@¢x3¶E¡Ë@¢x[¥ƒ Ð@¢x3¶E¡Ë@¢xq;À@8” xFÜ@8Š?•»ø@3ahr° Ä@3Wî±n·È@2Ãt¼j~ú@2½<0a!(@2O „M@2‘ݪýÐ@2O „M@2-$Y†f@2O „M@2„… B?¨'Yb! ?ª.œ!…~?¡ÉšwP½J?™µ·Ú:þ™?™ËØQ[?¨ø¦¢s?›Q®úL§?¦ ½ ¸%? ‰/ŠS,?¡ƒðâF?—VH¥]?¥Ø]ˆU û?‚…«Ç?’…Y£c;`?¡¶  öˆ¥?‘&°„¼?—ø6_x?’ßfÂ&@@@@ @(@3?ð?ð?ð?ð?ð?ð?XØ ?”e¹ÉõÀ?o´ëAŠ´£?h½)ç°@ž¿\Z8õš@¢xKnãB@1Š0U2a|@1!Ä2ÊW¨?|öOÿÝ?ÐA¿SU–?Î'è{ž÷~?Ò’ÞkúÅ€?Ð3kseý?Ö_…¶¹ÿJ?}Ñ¿ž,?Á¡ã%®L?ÇfTEkúÍ?ÍJÔ‰Àå?ÍR¿‘j ?Í ­Þ…;¦?‚‹¡8*ùÿ?§L²Ÿþ—É?š&½-\aÛ?¦êÉŠYÏ?¦GaªmÀ?À0xÓhŸÖ@@@@@*@,?ð?ð?ð?ð?ð?𿯠ˆô–@?§¾hÝ`?“ÊI¡Y8?†2ÑŸGª@¯ãÖí3U@«JI +c?‰ ÷³…Úç?~|xræ@?÷úÊÕ;"V?éí!0{Ä2@ŸX.äŽ&Ž@Õ@¨XÊ=p£×@¨XÊ=p£×@¨XÊ=p£×@¨XËC•@¨XÊ=p£×@¨XÊÀƒn@¨XÊ=p£×@¨XËP°ò}@¨XÊ=p£×@¨XÉã½@¨XÊ=p£×@¨XÈõÂ\@­•˜“t¼j@­•˜“t¼j@­•˜“t¼j@­•˜“t¼j@­•˜“t¼j@­•˜üPH@­•˜“t¼j@­•™#¢œx@­•˜“t¼j@­•™ k¹Œ@­•˜“t¼j@­•™ k¹Œ@0cg ù l@0cg ù l@*{"Ðå`A@*{µsê³@*òn—Oß@*ò•éá°Š@)ÿåÉä@)ÿåÉä@)ÿåÉä@)ÿåÉã@)ÿåÉä@)ÿØ­«ŸW?É^žQ5P‚?¾¢`ƒ?‘šÕU#?‹µ™eU!µ?êtÿKÑc?²õ/]?ÐbMçê_x?’Ï>`Ï?¹º–Èj?;ß $Þû?Ó%y*£=?M\³Ù“@?€bMÕky?Œ¬8 T£?‚uÞ@>N ?‚äÍ“½E'?†’Õaì+’?†‰Oú|q@@@@@*@&?ð?ð?ð?ð?ð?ð¿Qk6½Z¿Hú¥ ?3À4? $>ømU–Õ:@@¨XÉô1q@­•™q…?BþØÌIkÈ?!t¬À?¼ý~“”?i‹áä§@Ÿs +Såc@Ö@® µÂ\)@® ³â·G@® µÂ\)@® ³8ÌÕ§@® µÂ\)@® ¬Ý(r@® µÂ\)@® ± wf@® µÂ\)@® ´YKuj@® µÂ\)@® ¯pB,Â@— m‘hr°@— oÛ`7@— m‘hr°@— jJ-N@— m‘hr°@— aÓ®:@— m‘hr°@— näs¹6@— m‘hr°@— geu @— m‘hr°@— gk݆@6Ù*0U2b@6Ö`:è n@40Ä›¥ãT@434k£@3´“t¼j@3¸¾&Hõh@3?ò䎊r@3CÕ[X„À@3?ò䎊r@3B–7eÿ@3?ò䎊r@3B!{T?‚Ú¡ËG7Õà=›?”d~»™?~‹ý‰þk??”§'$SÛ?•ÕÕxð‘?’ÈI3º»$?’ïË_<4ý?”Y:ƒ°©Ù?ט¸5?I&†?³Vk%e/?…Jð9‚A´?‹ñŸÏeà\?ŒRê±êЇ@@,@(@*@6@9?ð?ð?ð?ð?ð?ð¿AØù ø¿K\ïîÖ?>ÅRUw€U?0Z–Ïk@® ²ª‚$Š@— lbϧx?^–©®øfÜ?P«¤áMÁQ?ÁÊp½ ?¥ÖmÜ{kš@Ÿg ãMóû@×@¢I6E¡ÊÁ@¢I6È´9X@¢I6E¡ÊÁ@¢I:QÎ@¢I6E¡ÊÁ@¢I8y=Ù@¢I6E¡ÊÁ@¢I9‡+@¢I6E¡ÊÁ@¢I0©*1@¢I6E¡ÊÁ@¢I3g ù @¡„äZ¬@¡„äZ¬@¡„äZ¬@¡„ÜPHð@¡„äZ¬@¡„çE8ï5@¡„äZ¬@¡„åzxl#@¡„äZ¬@¡„å¼£n@¡„äZ¬@¡„æYJôò@3” xFÜ@3”!-w2@0Yº^5?|@0Vlô!.@/¿;dZ¬@/©á°‰ (@.ÑÑN;Í6@.ÅÉã½@.ÑÑN;Í6@.ÃÉîËû@.ÑÑN;Í6@.Æ +¦L/„?|¬Çëý ?‘‹PƧ¢$?’´ýBI{?Œ¸ðËb?–Õ“z‰öì?”K¬Ò&?|¬Çëý ?•¤-'Ä,?ÏtP°*?˜ò¶Ðú?—?—³’sB?–Ï9xä]e?‚n—8‹8?Å{¿Ž<º?†ž5ðqë?…p=¤J‰?‡<û¡71?Œx[‡:©@@@@@,@,?ð?ð?ð?ð?ð?ð¿C8¼D?9¿Æð?Iœ&é ó>øüM°uõk@¢I5õm¿H@¡„åì+?h Ï5¡É¯?‘Žºûˆ'?ÛST)Jh?6l¼{5°ø@Ÿe&_×£þ@Ø@®;?¯ßÁx}²?•ða˜,F?š?G'ôÜ?|ënÓ¿Ü? "ƒrÅÇ?¤€3¼¾BÁ@@@@@$@*?ð?ð?ð?ð?ð?ð?ZåÈOx¿Sà Œ?S‚¾¾¥'?EñÞa¦@®@0®_oÒ @0¯Ÿ¾vÉ@0®_oÒ @0®vÈ´9X@0®_oÒ @0®\‘ÑN¤µÜÆ@3µãS÷ÎÙÁ.„M‰ûçm@2nùÛ"ÐæÁ.„QnÙ‡@1³&Á½¥Á.„NÜC,¥@1³&Á½¥Á.„NÜC,¥@1³&Á½¥Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøÛ@£Ó)xÔýôÁ.„€@£Ó)xÔýô@£Ö¿JpS+@£Ó)xÔýô@£ÖÏñ<@£Ó)xÔýô@£Ö¹ƒŽ6@£Ó)xÔýô@£Ö¶Ÿ.¨@£Ó)xÔýô@£ÖºIG§Ý@˜÷¤Ý/ Á.„€@˜÷¤Ý/ @˜÷7´ë‹Ý@˜÷¤Ý/ @˜÷<ô:@˜÷¤Ý/ @˜÷5¬E©@˜÷¤Ý/ @˜÷uJåpà@˜÷¤Ý/ @˜÷vg^±@7 ØDЩÁ.„>¤µÜÆ@2c÷ÎÙ‡@+ô7¬†@2'KƧïž@+¾‚%@1ò䎊r@*q»©Õò@1ò䎊r@*|<òSt @1ò䎊r@*yy®Oͽ@8J¨?’k’ç¢?“nèÙìØ?“ñ3,.?˜tKÄÎhú?—´·ò•@8J¨?”ÉV±‘C'?”ž¨®¶?•.b𦄯?•‰¸T/Ú?‘êÎe²k°@8p÷?‘÷3ìQøì?„ñ=œŒ?‡Ý…Xøwt?Š¡ûIrÊV?Фz{‚@$@$@$@;@8?ð?ð?ð?ð?ðøøøøøøøøøøøøÜ@«?‚‘´…=Ca?Å{¿Ž<º?•ýÿLîO?™/#ÕË®r?¢2ðø:Uù?›ßóÝYM@@@@@,@$?ð?ð?ð?ð?ð?ð>Ùa£¸?{ +Wª?]O½©£é?V€ßßÚø @«ë×?t»ºÃO—Ù?ú­Ä¼:P`?å"Qù~†î@Ÿcâh×Ó@Ý@¥^NÙ‡+@¥^NÙ‡+@¥^NÙ‡+@¥^QÝL×@¥^NÙ‡+@¥^O•~Š}@¥^NÙ‡+@¥^QÎ'} @¥^NÙ‡+@¥^[6‰@¥^NÙ‡+@¥^S‚ªðk@›7‰7Kƨ@›7‰7Kƨ@›7‰7Kƨ@›7{?n@›7‰7Kƨ@›7|Êñ@›7‰7Kƨ@›7uÑO8F@›7‰7Kƨ@›7k%S1–@›7‰7Kƨ@›7j¬]ç@1ÉÎ_oÒ@1ÉÑN;Í6@0 í‘hr°@0Q¢nó¶@/?;dZ¬@/3ºpÅà1@.b¶®~@.òKÑÄ7@.b¶®~@. 3Ô?9G@.b¶®~@. ËäxD‚?É^ž6õP?(©bÊŸ$?‘w´¾QZ?‹Á¨”È7Œ?“¥?{úO?‘K’˜ bT?ÐbMÝn½?’&Y-ƒ(¿?ùÉþÀó¹?6 ºBY?”‹¹ w_†?™Í™§ãe?€cÇ>º)¨?3K_n Û?ƒ#FßÔú?‚ýv>é÷?‡ØðÎÙP?†ä~¶@ê.@@&@"@ @6@5?ð?ð?ð?ð?ð?ð?V«ÐGí¿fûOFü?e5Ù: ?GòûP +]@¥^T‹{¸@›7oÇ[j-?tÒ¢cžZ€?UÉ'ó{û?ãQ´9†ã?œÌóÍ“æ@Ÿr)Uò)@Þ@­|gï²-@­|h´9X@­|gï²-@­|hè§æ@­|gï²-@­|iã½@­|gï²-@­|hË’:@­|gï²-@­|g“Ý—ö@­|gï²-@­|g®zá@¬$Ý@¬“v@¬$Ý@¬ðØDÏ@¬$Ý@¬8†YK@¬$Ý@¬ýó¶E@¬$Ý@¬L˜_@¬$Ý@¬2a|@4í¥œàv@4íjOw@0³S÷ÎÙ@0³¶E¡ÊÀ@0"-V@0"©“ àÞ@.ÿåÉä@/-w1Å@.ÿåÉä@/@N¤©@.ÿåÉä@/ZîcŠ?1·†Æjñ?W[†?‘jh¨qã9?Œ:Z2‚b?‘Dj?ÍàÊaùX?}Ñ¿ž,?’š'†­`í?·t¤¢‚J?@§[*^?‘ ·èf?ŒÙ¶êm¥?‚yî8Á#?ŒÐ¤Âÿê?‚ÂÌ]æ?ƒ¦$H?†¼Š˜L¥÷?‡”_Õ­çW@@@@@&@(?ð?ð?ð?ð?ð?ð¿+ò”À¿)‹f=€?ï´“„?×x{Ÿ¼À@­|hC0ß}@¬Š@¤?1 BöÛ.?2Ge +È$?m›jû)K?p°qRs@ŸgV/ p@ß@¡Å¡ÊÀƒÁ.„€@¡Å¡ÊÀƒ@¡·KƧð@¡Å¡ÊÀƒ@¡µ$Ü@¡Å¡ÊÀƒ@¡Ý}¿H€@¡Å¡ÊÀƒ@¡ùÀëíú@¡Å¡ÊÀƒ@¡Ø_ö”@«š›¥ãSøÁ.„€@«š›¥ãSø@«šŽÙ‡+@«š›¥ãSø@«šê¦L/ƒ@«š›¥ãSø@«š¼ú¬Ùé@«š›¥ãSø@«›QÎ^@«š›¥ãSø@«šúû~‘@9Âò䎊Á.„>¤µÜÆ@6 Ä›¥ã@6’£S&@6'KƧïž@6hy=Ùc@5œÚQÎ@5‚GE8ï5@5œÚQÎ@5lÆ?@5œÚQÎ@5lL˜_@8J¨?¡lôÅø²?ºAú¼ë|?¶(¾Þžs˜?¹¸öb&?ºÒ“÷a¼@8J¨?ªòR¾ŽÜ†?°¥u:Â?ªšêPo?½hŽÁáA?ш—oÙ­@8p÷?ÏÑò©Â­?⃰UjÎ?¸ Vú|LÐ?©\á¥T·?°r™›´@@@@,@*?ð?ð?ð?ð?ðøøøøøøøøøøøøà@ zéxÔýôÁ.„€@ zéxÔýô@ {M$ @ zéxÔýô@ {ˆjá'@ zéxÔýô@ { ñÀFÔ@ zéxÔýô@ zói›7„@ zéxÔýô@ zìiˆ‰q@¤©xÔýôÁ.„€@¤©xÔýô@¤Ô‚ØOm@¤©xÔýô@¤‡YËz @¤©xÔýô@¤2v™Ï@¤©xÔýô@¤%2G#ö@¤©xÔýô@¤ +O}|]@9£g ù lÁ.„>¤µÜÆ@4ahr° Ä@4 ÇÄÒÅ@3;Ƨï²@3$’Á¥@2J0U2a|@2+%‹@ó@2J0U2a|@2— +n@2J0U2a|@2 `¢.¼í@8J¨?Ÿ ºQ"ð0?˜.Ä%±ý?”¹Ë‹õUO?›?Kf£/?£€ ôÑ£@8J¨?£ÁÀõÀÓ¯?™O“‚bN?’ +/É +¬ë?µ`§jNn?´ŸQ³\€@8p÷? àtlÕ* ?“ä)oÆÂ?—Ó\)ö? ‘.¨ÑÈÈ?ŸæÃ¨u@"@@$@:@7?ð?ð?ð?ð?ðøøøøøøøøøøøøá@¬„r° Äœ@¬„rñ©ûæ@¬„r° Äœ@¬„r×sü@¬„r° Äœ@¬„s3333@¬„r° Äœ@¬„sŽóMj@¬„r° Äœ@¬„r-V@¬„r° Äœ@¬„r:)Çz@­Åß;dZ@­Åß;dZ@­Åß;dZ@­Å¸¼@­Åß;dZ@­Å:û~‘@­Åß;dZ@­ÅbMÒñ@­Åß;dZ@­Å£× +=@­Åß;dZ@­ÅHð@/ïÅo@/ïÅo@)Üj~ùÛ"@)Üj~ùÛ"@*rn—Oß@*rˆÎp:ü@(¨Û‹¬q @(¨Û‹¬q @(¨Û‹¬q @(¨Û‹¬q @(¨Û‹¬q @(¨è§æ›?É_\p)Ï?Òç{íj?‘(¥¿á?‹ª½¨ª8v?íOþtà?¾ƒìÈÁ?ÐbMçê_x?’˜‰%F²?ŠA)Nîá?0ÜN :s?Ñ¡b£?¾?R g!Ú¢?€b¡´ñ@?Œ¬Çëý ?‚q6tNø7?‚ãaÎúvh?†ŠúЀ>(?†‰Oú|q@@@@@(@*?ð?ð?ð?ð?ð?ð¿DôÞ¾þæ+€?+»Þ)TŸœ?sk³]@¬„rÀL• @­Åníµ8?:ªŸóÓhå?*ìF_ô?qvèöLÂd?OÑêÁÆ$@Ÿs,Ó2@â@¡Œ]/Ÿ¾@¡ŒQ©ûçn@¡Œ]/Ÿ¾@¡ŒHŒç°@¡Œ]/Ÿ¾@¡Œ=ÌcñA@¡Œ]/Ÿ¾@¡ŒSMj@¡Œ]/Ÿ¾@¡ŒYXbN@¡Œ]/Ÿ¾@¡ŒL1&é@¥ŽÈ´9X@¥ŽÈ1&éy@¥ŽÈ´9X@¥ŽÓœ¾à@¥ŽÈ´9X@¥Ž¿U›=@¥ŽÈ´9X@¥Ž³t¼j@¥ŽÈ´9X@¥Ž¢e+Ô@¥ŽÈ´9X@¥Ž´Ö¡aæ@8è†YJôñ@8÷škP°ò@5; Iº^@5:çÕfÏB@5 "Ðå`B@53{J#9Á@4OO „M@4^¾ß¤?æ@4OO „M@4Pÿ—$tT@4OO „M@4RT`ªdÃ?ÎYgo¢K?­hX™*?ÇT†ˆHÖ?—Ýúâþ ? U ¡,Ø?¨+ âÅw?´ Z è´ß?•%!{‚A?Ä’ŽªÛ‡?©ßˆ¬ÅÛ{?¨AsÊ?¦þLäžÏ?µRW¢ŠP?´þ5.¸žÊ?Û_Y›ÍKÌ?¦÷œ¤Òé(?©CRù¼U?­¸óÛ[Ñ‘@@@@@*@,?ð?ð?ð?ð?ð?ð¿CšÐ4¿q1r°€?júˆ0‚\¼?rbPbÐQ¼@¡ŒT«Ôy@¥Ž°í?wðy35³t?‹ó‚‚·_?˧œÞ"÷‚?àÉÂú”@Ÿqdð|£@ã@¤ Ö‡+ @¤ öÈ´9X@¤ Ö‡+ Á.„€@¤ Ö‡+ Á.„€@¤ Ö‡+ Á.„€@¤ Ö‡+ Á.„€@¤ Ö‡+ Á.„€@¦…¼j~ùÛ@¦…« Iº@¦…¼j~ùÛÁ.„€@¦…¼j~ùÛÁ.„€@¦…¼j~ùÛÁ.„€@¦…¼j~ùÛÁ.„€@¦…¼j~ùÛÁ.„€@8½:’£@8¶È´9X@4n5?|í‘Á.„M‰ûçm@3§KƧïžÁ.„QnÙ‡@2Öý!ÿ.IÁ.„NÜC,¥@2Öý!ÿ.IÁ.„NÜC,¥@2Öý!ÿ.IÁ.„NÜC,¥?}Ñ¿ž,@8#˜@8¾:@8 >+@8Iç@8Ù?°{QBãï@8Î÷@8i§@8Å@8S@8û—?µ“Æÿ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøä@£¥­‘hr°Á.„€@£¥­‘hr°@£¥°"!@£¥­‘hr°@£¥»2º„@£¥­‘hr°@£¥³ø‚>@£¥­‘hr°@£¥ª›k@£¥­‘hr°@£¥£GC\@—9ˆ1&éyÁ.„€@—9ˆ1&éy@—9‹ +MŸ@—9ˆ1&éy@—9¬˜b}Ö@—9ˆ1&éy@—9„>º«Z@—9ˆ1&éy@—9¯3“M@—9ˆ1&éy@—9¢„ìº@8è†YJôñÁ.„>¤µÜÆ@3» Iº^@3ªGPí’@3RÐå`A‰@39NÇá@2TmÅÖ8†@2Fõþ¹BI@2TmÅÖ8†@2[4¡D@2TmÅÖ8†@2\ô!-x@8J¨?—KÆQt +?¥9eÌ5?•*ÞF”É?•’'c$ƒx?”ï+×Ì@8J¨?•uãýœk?˜ˆïý{?“ÝÖ–i?˜‘E*²z–?“åáÓÄÈ@8p÷?›ñ˜`K?µ0|wF?Žy¾þšk?R HðE?”[úsšÁ½@&@&@(@8@7?ð?ð?ð?ð?ðøøøøøøøøøøøøå@¡7(õÂ@¡7Oß;@¡7(õÂÁ.„€@¡7(õÂÁ.„€@¡7(õÂÁ.„€@¡7(õÂÁ.„€@¡7(õÂÁ.„€@Ÿnj~ùÛ#@Ÿn_;dZ@Ÿnj~ùÛ#Á.„€@Ÿnj~ùÛ#Á.„€@Ÿnj~ùÛ#Á.„€@Ÿnj~ùÛ#Á.„€@Ÿnj~ùÛ#Á.„€@7*0U2b@7#÷ÎÙ‡@3ÜIº^5?Á.„M‰ûçm@3v§ï²-Á.„QnÙ‡@2Öý!ÿ.IÁ.„NÜC,¥@2Öý!ÿ.IÁ.„NÜC,¥@2Öý!ÿ.IÁ.„NÜC,¥?ð°–Ž]@8#˜@8¾:@8 >+@8Iç@8Ù?ð°–Ž]@8Î÷@8i§@8Å@8S@8û—?ð*wjs—@8 * @8p÷@8¶@8 Ø@8 Ø?ð?ðøøøøøøøøøøøøæ@¬à¡ÊÀƒÁ.„€@¬à¡ÊÀƒ@¬á@6âë@¬à¡ÊÀƒ@¬á-w1Å@¬à¡ÊÀƒ@¬áiùrF@¬à¡ÊÀƒ@¬áeS&Â@¬à¡ÊÀƒ@¬ábø7´¢@¢òD›¥ãTÁ.„€@¢òD›¥ãT@¢òá@N¥@¢òD›¥ãT@¢òÂ3œÀ@¢òD›¥ãT@¢òÛ"Ðå`@¢òD›¥ãT@¢òHð@¢òD›¥ãT@¢ò|64@9p4mÅÖ8Á.„>¤µÜÆ@4Ï|í‘hr@3í!ÿ.Hè@4'KƧïž@3E¡ÊÀƒ@3Eœàu÷@2€bMÒñª@3Eœàu÷@2ò䎊r@3Eœàu÷@2~—Oß<@8J¨?»ðj#?ÄIM\g-?ºŠòTÓÁ?À&Çe‰S¿?½®ýã|Êø@8J¨?¶%xW8¸É?ËäêîÂÆ?¶¶=qŒÚÚ?ºó÷z­¾Ã?´M«‡c2h@8p÷?œ ùæ´?Ð?¢Z°`´ä(?Ì@ˆj-?™GXêâ?›P^eNÇQ@@@@,@*?ð?ð?ð?ð?ðøøøøøøøøøøøøç@£^q©ûçm@£^rñ©ûç@£^q©ûçm@£^q‚©“ @£^q©ûçm@£^r£S&@£^q©ûçm@£^qÎ_@£^q©ûçm@£^n!–R½@£^q©ûçm@£^mBÃÉï@¥YÄ›¥ãT@¥Y¢\(ö@¥YÄ›¥ãT@¥Y«¬q ³@¥YÄ›¥ãT@¥Y®Hè§@¥YÄ›¥ãT@¥YµÂ\)@¥YÄ›¥ãT@¥Y¶4ê@¥YÄ›¥ãT@¥Y³ÃaA@5Ù*0U2b@5ºu%F +@1³S÷ÎÙ@1¢MÒñ©ü@0Õ`A‰7L@0ÉŒ~($ @/õ¨Xy=Ú@/㯷éú@/õ¨Xy=Ú@/åS&Á¾@/õ¨Xy=Ú@/ãñA [Á?‡YÍ_?àIü'?‘œÁùãJC?Œ:Z2‚b?‘PÊÑ<Ým?‘Iãd©ìÇ?uÎC´Ÿ0!?˜ü5ñâ ?ðHÙz#Ù,@Ÿi`¤ðCª@è@ª-X“t¼j@ª-X“t¼j@ª-X“t¼j@ª-YÎ_p@ª-X“t¼j@ª-XQë… @ª-X“t¼j@ª-Y¦µ @ª-X“t¼j@ª-VâëC@ª-X“t¼j@ª-SÐ|„¶@¢¦ffff@¢¦$Ý/@¢¦ffff@¢§8}¾@¢¦ffff@¢¤÷eý‹@¢¦ffff@¢¥Ö8†X@¢¦ffff@¢¥+ÓÃa@¢¦ffff@¢©Q‚©“@5-¥œàv@5-æšÔ,<@0Ô›¥ãSø@0Ó÷ÎÙ‡@0²-V@0Ÿ¾vÉ@.žš@.Ñ·Y@.žš@.¥œàv@.žš@.õY³Ð}?|¬Çëý ?¾‰máÚ?‘–”«ëó?‹×lÇ…N9?ÿ £‰¸9?‘ë´¤G?|öOÿÝ?’4 "ëžØ?ê‰O)AT?agÌf ?‘Ú‚ýc¯?«àÓ RÆ?‚oÁÆÜ§ö?Œ¾»•lŽ?ƒúʳ_Ä?ƒ ?ÿ½?†µ°jÆÃ?‡gϵ’õ@@@@@&@(?ð?ð?ð?ð?ð?ð¿CGÌP0?2âÑX?=¾…s§´ý?8ÊÆ1÷@ª-W™©Æ“@¢¦—…þ±?]‚VOX?Xj#oéÈ?ÇŠ>‡ÍF?¾ŠÕ F +Ø@Ÿfà10•™@é@ªòk…¸R@ªòe z0@ªòk…¸RÁ.„€@ªòk…¸RÁ.„€@ªòk…¸RÁ.„€@ªòk…¸RÁ.„€@ªòk…¸RÁ.„€@”&çl‹C–@”&ë Iº@”&çl‹C–Á.„€@”&çl‹C–Á.„€@”&çl‹C–Á.„€@”&çl‹C–Á.„€@”&çl‹C–Á.„€@8·â‚@·€@8µ¦¢©!@5k¥ãS÷ÏÁ.„M‰ûçm@4þV“uÁ.„QnÙ‡@4¸DЩ*Á.„NÜC,¥@4¸DЩ*Á.„NÜC,¥@4¸DЩ*Á.„NÜC,¥?‚Ú¡ËG7<@8#˜@8¾:@8 >+@8Iç@8Ù?Ï€×>²„@8Î÷@8i§@8Å@8S@8û—?Œ¨/¸Œr„@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøê@£”‰7KÇ@£”ÊÀƒ@£”‰7KÇ@£”($ w@£”‰7KÇ@£” 7Kƨ@£”‰7KÇ@£” q ²–@£”‰7KÇ@£”šu$@£”‰7KÇ@£”ÉîËû@£j³¶E¡Ë@£j³¶E¡Ë@£j³¶E¡Ë@£j´¯O ƒ@£j³¶E¡Ë@£j IQƒ@£j³¶E¡Ë@£j›¥ãSø@£j³¶E¡Ë@£j‘·Xâ@£j³¶E¡Ë@£jƒ{J#@3½:’£@3½5¨Xy>@2?|í‘h@1ýà qu@1®ùÛ"Ðæ@1©“ àÞÒ@15µsê³h@1,ÓZ…‡”@15µsê³h@1-Òñ©ûè@15µsê³h@1.æ1ø ?|öOÿÝ? œE|s8å?‘yß]³Õø?‹û…†_?šPUó`ÿ?•ŠàuVº`?|¬Çëý ? I­ß4>?‘kþE<%?e”[|ú(?™Ÿ»6“?™^ªÍ€@!?‚Ÿ JŠÅ?1·†Æjñ?‡9Â@0wç?ƒ ?ÿ½?’;WZŸÿÔ?8Ï£§@@@@@*@$?ð?ð?ð?ð?ð?ð?[ï*ü¿€§À?UtðP¨L?D½ÉÕü÷†@£”•£š·@£j¤6i£D?sŒ¦¬DJ?bô˜µ[`?ñP-.2À"?Ë^—¹iñQ@Ÿd›Ýî‹_@ë@¤¼œ¬1'@¤¼™Û"Ðå@¤¼œ¬1'@¤¼Ÿ¼@¤¼œ¬1'@¤¼—ö+jè@¤¼œ¬1'@¤¼¤2ÊW¨@¤¼œ¬1'@¤¼›/ìVÖ@¤¼œ¬1'@¤¼cˆe”@¡ë”ýó¶F@¡ë’-V@¡ë”ýó¶F@¡ëŠôðØE@¡ë”ýó¶F@¡ëŽzáH@¡ë”ýó¶F@¡ë„›¥ãT@¡ë”ýó¶F@¡ë¸ºÇ@¡ë”ýó¶F@¡ëÅÖ8†@6Ù*0U2b@6Ì/ƒ{J$@4€ Ä›¥ã@4‚ZîcŠ@3ä¼j~ùÛ@3í!ÿ.Hé@3a:’£S@3_4Ö¡aå@3a:’£S@3b½<64@3a:’£S@3b×sü?|öOÿÝ?œ½Øu4Þ•?›·Ù!Gfð?º HN¸?¨ƒ ¹´?•(Ï¢Uÿ?гá‡}?¡S"ꉯ?™ ?G·W?Ÿ'Žb÷A?•~VèÔªÂ?›Œ³¶Ñ×?¶W€BH?–Ê Dì¢S?“ø­×N?’aP¸¾¦Ö?•ƒ•&+B?Ÿ‘±bÌ@@@@@&@*?ð?ð?ð?ð?ð?ð?Mjߢˆ¿TS­CØ?IA“­²/Û?R˜&"@¤¼›øü¶P@¡ëŽÇÔZŒ?j˜²Wz¦\?rÓt£`åÉ?Ô$-jCÅ7?ÛªKL£D +@ŸfÀEmņ@ì@¤W+…¸R@¤W#n—@¤W+…¸R@¤W*Ížƒå@¤W+…¸R@¤W/iDg7@¤W+…¸R@¤W-ÅÖ8†@¤W+…¸R@¤W0–»˜È@¤W+…¸R@¤W)îËû@§œ7KƧð@§œ>vÈ´9@§œ7KƧð@§œ:)Çy§@§œ7KƧð@§œ'ü¹#£@§œ7KƧð@§œ=ó¶E¢@§œ7KƧð@§œ8*™0½@§œ7KƧð@§œ9³Ð|†@8-¥œàv@8-!ÿ.Hè@3ÞÙ‡+@3Ù0¾ í(@2ß²-V@2âÞÑ·@2p–»˜Çã@2m5¨Xy>@2p–»˜Çã@2m¸ºÇË@2p–»˜Çã@2l64ê?˜ž^ƒÿ*ˆ?“I\ÄO£º?—2 :M?Ég(6ßð?•³™»7…?˜ÝÈYD?|¬Çëý ?š¾ˆè ”?¢ðÒŒîI? ¬%)¯?˜Ü“Œ¾?• °jà?$¿ÀºÍ?’+0ê­ìT?™“ÇÙ¹?•çѳÍ9?˜F†éôâß?šÁc€RÏ@@@@@,@&?ð?ð?ð?ð?ð?ð?__GË¿Qí4ºn?Y#7J3è?3í3uŠÞK@¤W+i1n€@§œ;‰\Ìä?sÛâC”yA?X›Á´Ñ0E?ÛÒ¡ÙÓWP?ªÄP,¨C@ŸjþxDËù@í@¡mY‡+@¡mWOß;@¡mY‡+@¡m>š@¡mY‡+@¡mG+ J@¡mY‡+@¡mhK]Ìe@¡mY‡+@¡mG®zá@¡mY‡+@¡mI­BÃÊ@£]ž5?|î@£]®Ù‡*@£]ž5?|î@£]“t¼j€@£]ž5?|î@£]—éùq@£]ž5?|î@£]‰á°‰ @£]ž5?|î@£]­ÅÖ8†@£]ž5?|î@£]Á:’£@7ð4mÅÖ8@7éÞÑ·@5º^5?}@5-à @4V”@3ò©“ àß@3úÔ,<ží@3ãÉîËû@3úÔ,<ží@3éÛ"Ðå`@3úÔ,<ží@3çOß;d?“Æ×q„nï?³”¦Ê¿nP?Ÿæ‹—«? Ð ÷Ž ?£|çp9’?›Ê—Am¡?гá‡}?±#ïú¬OÚ?¢Àì#Ì*0?•%ôµh©F?£ ƒU¾Š?±óÌSЧ?–.¨ÿ\?©ñºåÇÂ-?¥$RHŠÇZ?¬@Éléò?®ÔF©Ëåì?¥‰aœÂZ­@@@@@&@(?ð?ð?ð?ð?ð?ð¿[~\1B¿wª®"?tß ‹áWµ?z—·M’ú’@¡m\]—;Æ@£]ŸßäiX?‘‚-¬C?˜–”Àä¸@©”QXÈà@Æ~úQ$@Ÿf˜È¶I@î@°È´9XÁ.„€@°È´9X@°ÕϪÎ@°È´9X@°Û"Ðå@°È´9X@°b¶®@°È´9X@°üPH@°È´9X@°ï²-@¬úÚ¬1Á.„€@¬úÚ¬1@¬ú×ö+jç@¬úÚ¬1@¬ú× +=p¤@¬úÚ¬1@¬úÜ64@¬úÚ¬1@¬úÙ¦µ @¬úÚ¬1@¬úÕsê³h@6” xFÜÁ.„>¤µÜÆ@1é‡+ @1ìq ²•ê@1"-V@1#¼ÓZ…‡@0ºÔ,<ží@0ÅðoiDg@0ºÔ,<ží@0Èð¹@0ºÔ,<ží@0Æý!ÿ.I@8J¨?‘6 '8?‘O‚%c?“Þ5d‡?›Ýr¶?—c‚L±bµ@8J¨?“eB^¤t?³2ºŽ'? ÿ«[á? ‘åP!=4?šÏ7â4l@8p÷?“=ä!ƒK?…µsê³g¡?Ž«]O8èº?8Ï£§?’:™/ʼn@@@@,@,?ð?ð?ð?ð?ðøøøøøøøøøøøøï@£oäÝ/ Á.„€@£oäÝ/ Á.„€@£oäÝ/ Á.„€@£oäÝ/ Á.„€@£oäÝ/ Á.„€@£oäÝ/ Á.„€@ó¶E¡ËÁ.„€@ó¶E¡ËÁ.„€@ó¶E¡ËÁ.„€@ó¶E¡ËÁ.„€@ó¶E¡ËÁ.„€@ó¶E¡ËÁ.„€@8Bò䎊Á.„>¤µÜÆ@3}‘hr° Á.„M‰ûçm@2¹7KƧðÁ.„QnÙ‡@2Š0U2a|Á.„NÜC,¥@2Š0U2a|Á.„NÜC,¥@2Š0U2a|Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøð@¬¨F$Ý/@¬¨.záI@¬¨F$Ý/@¬¨R:)Ç{@¬¨F$Ý/@¬¨H$ x@¬¨F$Ý/@¬¨B3œ¿@¬¨F$Ý/@¬¨>ÿ—%@¬¨F$Ý/@¬¨6Ov`@­6È´9X@­'+ I@­6È´9X@­8Që…@­6È´9X@­0|„µÜ@­6È´9X@­1Ä2ÊX@­6È´9X@­2n—P@­6È´9X@­+C•@5„¯O „M@5iá°‰ (@1—+ Iº@1™³Ð|„¶@11‰7Kƨ@106âë@0Eœàu÷@0B䎊qÞ@0Eœàu÷@0A‚©“ á@0Eœàu÷@0=Vlô"?›’qvš°•?®1Âe¾ +þ?«†‰X´‹?è}fУ?•BPbC¡©?—Q,Äš¤?„F/·ÿP5?«0ä,3?³C˜\ >?Ÿ=øU1WK?š+hd{ö?—é aÀ‹å?ªÇ,þâ?©¦/‰oš?¨Y²Y¬Æñ?—†0ÚŒ#?‘4hÆpÉ„?$Ìj½BÙ@@@@@,@(?ð?ð?ð?ð?ð?ð?_Þ¥÷ü?[I ¬?d`@¯Þ¾?P*»Ú¸¢@¬¨8§f@­,E w?‚:JBE!Ð?sjµ4q×Ú?ð^ëGˆßæ?ÙNhw|Jé@ŸkÈ9®K@ñ@­0äÝ/ @­1&$Ý/@­0äÝ/ @­0åÉä@­0äÝ/ @­0æ§ï²@­0äÝ/ @­0æÏAò@­0äÝ/ @­0äЩ*@­0äÝ/ Á.„€@Ÿøn—@Ÿøhr°"@Ÿøn—@Ÿø$Ý/@Ÿøn—@Ÿ÷ú^5?}@Ÿøn—@Ÿ÷ÿ|í‘h@Ÿøn—@Ÿ÷öý!ÿ.@Ÿøn—Á.„€@1 ]cˆe”@1Xè§æ›@.×KƧï@.Õ›=ÈK@/4ýó¶E¢@/87´¢3œ@.åÉä@.~ÿ—$u@.åÉä@.…F +¦L0@.åÉäÁ.„NÜC,¥?ËOƒÐÎl?äm°û0Ž?‘ŸÇSñ?ŒÇQ´¤µÜÆ@/$“t¼jÁ.„M‰ûçm@.]ó¶E¡Ë@&$.èLÈ@,ܾߤ@Á.„NÜC,¥@,ܾߤ@Á.„NÜC,¥@,ܾߤ@Á.„NÜC,¥@8 +Näy@8#˜?š`ém_B@8 >+@8Iç@8Ù@82rê@8Î÷?œ#¸(‘¾v@8Å@8S@8û—@8L@8 * ?мÅ&Ÿ|½@8¶@8 Ø@8 Ø@6?ðøøøøøøøøøøøøó@­G¿|í‘h@­G¿|í‘h@­G¿|í‘h@­G¿Ë’:+@­G¿|í‘h@­GÀ qv@­G¿|í‘h@­G¿|í‘h@­G¿|í‘h@­G¿b¶®}@­G¿|í‘h@­G¿;dZ@­Ë+…¸R@­Ë+ƧïŸ@­Ë+…¸R@­Ë+ÓÃa@­Ë+…¸R@­Ë+…¸R@­Ë+…¸R@­Ë+àÞÒ‰@­Ë+…¸R@­Ë+’:)Ç@­Ë+…¸R@­Ë,"h Ö@0½:’£@0½:’£@(…`A‰7K@(…`A‰7K@'íOß;dZ@'íOß;dZ@&³üPH@&³üPH@&³üPH@&³&Á½¥@&³üPH@&³üPH?É^žQ5P‚?Ï[äeñ>™JžÕ?$<'ε³@­G¿a<=ò@­Ë+ÛW¬ì?”½ªq<Ò?3%)¨U>û ¼ Ÿƒ—?`¢1¸<Î@Ÿs¶;Ï@ô@©<$Ý/Á.„€@©<$Ý/@©;ü¾ß¤@©<$Ý/@©;ü„µÜÆ@©<$Ý/@©;ô`ªdÄ@©<$Ý/@©;ëC,¥@©<$Ý/@©;ðU2a{@œ°î—OßÁ.„€@œ°î—Oß@œ°æµ (@œ°î—Oß@œ°å+ÓÃ`@œ°î—Oß@œ°äZ¬@œ°î—Oß@œ°Õ›=È@œ°î—Oß@œ°Õµsê³@3‡>«6zÁ.„>¤µÜÆ@/žùÛ"Ðå@/ìVÕϪ@-ãn—P@-Ö®}Vlô@-…oi@-q©ûçlŒ@-…oi@-@[À6ã@-…oi@-FÏAòØ@8J¨?äm°û0Ž?•¬¡´¯ÿ'?‘öJî¯Ê®?ª!ýgÚ7 ?±A+KÄW@8J¨?’ ·6Öc¤?’ÉÓDý?’_3Í\Æ?£Ö ¯†e‚?¢cšŠ5W@8p÷?þþoÀM?…/‡ÙX·³?…üðÿË÷?’3¨£„È?£Eóƒvn@@@@*@,?ð?ð?ð?ð?ðøøøøøøøøøøøøõ@«ögï²-@«öhr° Æ@«ögï²-Á.„€@«ögï²-Á.„€@«ögï²-Á.„€@«ögï²-Á.„€@«ögï²-Á.„€@­'"Ðå`@­'|í‘h@­'"Ðå`Á.„€@­'"Ðå`Á.„€@­'"Ðå`Á.„€@­'"Ðå`Á.„€@­'"Ðå`Á.„€@8Hè§æ@8"GE8ï5@4° Ä›¦Á.„M‰ûçm@3lj~ùÛ#Á.„QnÙ‡@2õµsê³hÁ.„NÜC,¥@2õµsê³hÁ.„NÜC,¥@2õµsê³hÁ.„NÜC,¥?}Ñ¿ž,@8#˜@8¾:@8 >+@8Iç@8Ù?š•§q!U@8Î÷@8i§@8Å@8S@8û—?‘c‚ׯ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøö@¬ÎÙ‡+@¬ÎÙ‡+@¬ÎÙ‡+@¬ÏùrGE@¬ÎÙ‡+@¬ÐbMÒó@¬ÎÙ‡+@¬Ð:û~‘@¬ÎÙ‡+@¬ÍBÃÉï@¬ÎÙ‡+@¬Íí(Œç@Ý;dZ¬@Ý;çl‹E@Ý;dZ¬@Ý:¬Ùè>@Ý;dZ¬@Ý:ÇË)@Ý;dZ¬@Ý:)Çy¨@Ý;dZ¬@Ý:¬Ùè?@Ý;dZ¬@Ý;˜Çâ‚@2ÿ–»˜È@2ÿ—$tS@/8“t¼j@/8ï4Ö¡b@. ƒn—@. ·€4mÆ@-QÑN;Í6@-R° Ä›¦@-QÑN;Í6@-Rn—Oß@-QÑN;Í6@-Ra|ÚR?É^žQ5P‚?ÖÈ ¼?‘"žæÆó¡?‹¹GüÞõ?òǹíT­?È2I/?ÐbV‡,?’&u÷E»@?†[‘'Í?6) }’ë?Ø¥²À<(?hï,ðà?€cPßQª?Œ²ÅŒÕ6?‚§W®ê ?ƒ ?ÿ½?†’Õaì+’?†£îž«î@@@@@&@*?ð?ð?ð?ð?ð?ð¿RΦ?3fŠB?AèXÒüêm?ìUcîÌ@¬ΪÞãô@Ý:¾õd ?Q6åI÷­Î? óÌ «ö?Z +Zóe?9°±ÊÔy@Ÿs4gK@÷@¨—e`A‰7@¨—kC•@¨—e`A‰7@¨—f?@¨—e`A‰7@¨—d¨ÁTÊ@¨—e`A‰7@¨—e”¯O@¨—e`A‰7@¨—dg8~@¨—e`A‰7@¨—eS&Â@­¹àÄ›¥ã@­¹ëƧïž@­¹àÄ›¥ã@­¹áTÉ…ð@­¹àÄ›¥ã@­¹àëíúD@­¹àÄ›¥ã@­¹á:’£@­¹àÄ›¥ã@­¹àªdÂø@­¹àÄ›¥ã@­¹á–R½=@5„¯O „M@5xÎp:û~@1.5?|í‘@1.Ñ·X@0v§ï²-@0v¸ºÇ@0?ò䎊r@0@:û~‘@0?ò䎊r@0@HðŽ@0?ò䎊r@0@:û~‘?˜ž^ƒÿ*ˆ?/³)sšÌ?‘WßÈDö@?‹ó#ƒt£?‘u×íËÄî?‘Iãd©ì«6z@5„•*™1@1µãS÷ÎÙ@1«’:)Çy@0ù7KƧð@0ëçl‹C•@0cÉîËû@0UãS÷ÎÚ@0cÉîËû@0T`ªdÂø@0cÉîËû@0TmÅÖ8†?}Ñ¿ž,?’bÓ}?™KÔ9\Ä?‘öJî¯Ê®?™'Ö™:0í?œ´‹ÛZ?}Ñ¿ž,?“-N•I`(?•ê?íuA?–a6io?£Žæ b×V?¤2R2'Ö•?…/‡ÙX·²?“ü”òÖÂ?†úŒz_–È?†k3`E`-?^²®':Ì?’Ì÷y\ÛÎ@@@@@,@*?ð?ð?ð?ð?ð?ð¿-³¼Ð?c'"&<?Eá’!Qà?N‡ÀOlr–@£„70áµ^@£gÒäæö?b¨Å(B o?hõØ[·ù®?ËŽ3*r?ÍÚßÍQ˜%@Ÿb–HΑ@ù@«úŽÙ‡+@«úŽÙ‡+@«úŽÙ‡+@«ú¸»@«úŽÙ‡+@«úoiDg@«úŽÙ‡+@«úå`A‰@«úŽÙ‡+@«ú£× +=@«úŽÙ‡+@«ú:û~‘@¡I¬1'@¡I¬1'@¡I¬1'@¡I‘ÑN<@¡I¬1'@¡Icˆe•@¡I¬1'@¡I\‘ÑN@¡I¬1'@¡I¥œà@¡I¬1'@¡I<64@0eöý!ÿ.@0eÜÆ?@*\j~ùÛ"@*["Ðå`A@)´ýó¶E¢@)³g ù m@)b¶®~@)Xâf@)b¶®~@)Xâf@)b¶®~@)eýŠÚ»?É_ð©«?ÉGãA­÷?‘K]Ã4?‹¦ ŸYÔ?‘2A¥Ø?âé¨ë7F?ÐbMçê_x?’ +‰¸Ì?¯éÊSÜ?0ÜN :s?ß’ºèh!?hï,ðà?€e@ˆ’„'?Œ¬Çëý ?‚q6tNø7?‚éXëLL÷?†ŠúЀ>(?†©b/bJö@@@@@*@,?ð?ð?ð?ð?ð?ð¿0é›X¿?7¢¡?\5Q6 +?°ó2BX@«ú‰ –@¡IÎ1Äç?(f:€†°†?$‡è^ûÂ?LùqþÕ´?BelôÙü@Ÿs¾TR@ú@¯:ë…¸@¯:È´9X@¯:ë…¸@¯: xF@¯:ë…¸@¯: +Ú¹õZ@¯:ë…¸@¯:®zà@¯:ë…¸@¯:Ðå`B@¯:ë…¸@¯:ýŠÚº@£-‡®zá@£-”9Xb@£-‡®zá@£-t‡ü¹$@£-‡®zá@£-t¼@£-‡®zá@£-wOß;@£-‡®zá@£-ròä@£-‡®zá@£-sœ¾à@8¥öý!ÿ.@8™“ àÞÒ@3£÷ÎÙ‡@3™0¾ í(@2È“t¼j@2¼j~ùÛ#@2 ¿±[W?@2Åo@2 ¿±[W?@2°‰ 'R@2 ¿±[W?@2ò䎊?|öOÿÝ?’¹KTŒDÄ?•Mq —¦?ŽAtùð¥t?’<_+fjä?“7ƒÆD +¹?²C¨y3?•\´jÒË?–Ðf·ËŒ‚?‘èÒ§ˆ„Æ?”¡S•Ÿ¯?˜—àÌÛÆ;?©[K-$›I?¬HO?‡}¤íþ?„Ö©Ú0?ˆ”Tj«›ª?•°QŸ?]Í@@@@@*@,?ð?ð?ð?ð?ð?ð¿q±´X¿p<,)sÀ?Ke3¸8/?b·±´hºI@¯:ûCGR@£-vfÔè?roÛ‡Î!?tTo£at?áf`}º^?Ö½ò“uº@ŸoðïEÛ¿@û@©õÊ=p£×@©õÈr° Å@©õÊ=p£×@©õŸQì@©õÊ=p£×@©õÉ^ž @©õÊ=p£×@©õË'»0@©õÊ=p£×@©õ¾ß¤?æ@©õÊ=p£×@©õƸºÆ@®Ï5?|î@®Ï Ä›¥ã@®Ï5?|î@®Ï¬2@®Ï5?|î@®Ï¾ß¥@®Ï5?|î@®Ï;dZ@®Ï5?|î@®Ï!$Ý/@®Ï5?|î@®ÏÌcñB@7D¯O „M@7Eéá°‰ @4c÷ÎÙ‡@4esê³g¡@4v§ï²-@4}ŠÚ¹õZ@3TmÅÖ8†@3X Ô•+@3TmÅÖ8†@3W1Å‚@3TmÅÖ8†@3Y 'RTa?’Óusÿ\Ã?›ŽÊ–SS?¤:Îrú ?’m’‹}©9?›«Âp°¦ý?—­l²â›}?ˆÿÀ)T¿Æ?—Œ,T®? Ü]^ß¿?–¼Š˜L¥ø?˜hüÁ¯Y?“®°ýYè@?‡»¢Øˆ‹?’Эs_ª`?’%Crì?ÓLÞ?æ?šÙ,yf’Y?•*†*Zû@@@@@@?ð?ð?ð?ð?ð?ð¿Jû5p¿<ÄŽ0?V„xØ_p?29¹–œo¬@©õÇiú~@®Ï¬F~ +?t©y°@ý?Sú •„.?ÞAüá@?¡z¨ŽÜl@Ÿj6µFø@ü@®ÿ;dZ@®ÿ|í‘h@®ÿ;dZ@®ÿåÉ@®ÿ;dZ@®ÿ;dZ@®ÿ;dZ@®ÿ¾vÈ´@®ÿ;dZ@®ÿ!-w2@®ÿ;dZ@®ÿ쿱\@§v¤Ý/ @§v¤›¥ãT@§v¤Ý/ @§v¦?@§v¤Ý/ @§v¦§ï²@§v¤Ý/ @§v¦§ï²@§v¤Ý/ @§v§+ I@§v¤Ý/ @§v¥®æ1ø@4`ØDЩ@4`ØDЩ@0‡ÎÙ‡+@0ˆð¸@/´ýó¶E¢@/µfÏAò@.ÿåÉä@.ÿ¾vÈ´:@.ÿåÉä@.ÿ!-w1@.ÿåÉä@/-à ?|öOÿÝ?ZÁ».œ?‘*"AaIÐ?‹×lÇ…N9?üEÙáõ{?ïˆ6ÏJ?1·†Æjñ?’#maЀ?™Îd0RÜ?;ß $Þû?‘c3¸cÜ(?‘¡ë Þf?‚s@ˆaÚ?ŒÛÏ·+?‚¯­Ù¤Á¶?ƒR¨º“JÞ?†µ°jÆÃ?‰Ü)@Jq«@@@@@*@(?ð?ð?ð?ð?ð?ð¿ƇÖ?:¾6«x?·U˜ëã?+§Ê8¥<@®ÿ^h¾@§v¥¢1Æ?2µK†5?L+Ú57Û?rªÊ ´ ?£*¬ZOëž@Ÿg2ÖxÂ+@ý@¨ßc× +=q@¨ß\¬1'@¨ßc× +=q@¨ßNV“@¨ßc× +=q@¨ßV_Ø­¬@¨ßc× +=q@¨ßVOv`@¨ßc× +=q@¨ß\64@¨ßc× +=q@¨ßW§†Â&@§$¶E¡ÊÁ@§$»dZ¬@§$¶E¡ÊÁ@§$ÛÍ5¨X@§$¶E¡ÊÁ@§$ÖâëC@§$¶E¡ÊÁ@§$Û=ÈL@§$¶E¡ÊÁ@§$ÆšÔ,=@§$¶E¡ÊÁ@§$Ò¼£@8T xFÜ@8SŠ Þ@3|í‘hr@3~Hè§æ@2Àå`A‰7@2­/Ÿ¾w@1Ì¿±[W?@1·éùrH@1Ì¿±[W?@1Ã@N¤¨Â@1Ì¿±[W?@1¾žš?¨Ö_pP1?‘¡çL¤?šJØÜi«?”ƒSÌz?’Þäi]i?‘PÊÑ<Ýl?™™™™™™š?’{cü€øõ?šï/>¬¹’?•ãÿ§…|?•=ƒ™íx?‘ÔÄ÷Õ?£¾Æ¨'–È?Ó%y*£=?ˆ©CwBÅÉ?‰‹„áùO"?mŽÃÎŽ?ùDâΊ@@@@@*@"?ð?ð?ð?ð?ð?ð¿7F`?j„äª?Xo×9R0´?oZ îÙ@¨ßXôûÖ‚@§$Í ¬0Ú?oxz˜d ?ŠŒ|”ñT[?α¨œ¯v°@ I¹ªeÛ@Ÿp;N§ Ü@þ@®ËÍÒñ©ü@®ËÉxÔýô@®ËÍÒñ©ü@®Ëýó¶E£@®ËÍÒñ©ü@®Ëá–R½<@®ËÍÒñ©ü@®Ëñ4êK@®ËÍÒñ©ü@®ËÛ¥ãSø@®ËÍÒñ©ü@®ËÕ¨Xy?@¬Ö¨r° Å@¬Ö¬ÌÌÌÍ@¬Ö¨r° Å@¬Ö¯–»˜@¬Ö¨r° Å@¬Öà-à@¬Ö¨r° Å@¬Ö¹0¾ ì@¬Ö¨r° Å@¬Ö™Û"Ðæ@¬Ö¨r° Å@¬Ö™#¢œx@904mÅÖ8@9üFV?±>ÏÅósN?ÂÂo΃Ù?»¦SóDN?¾FMGô¯¦?°°¶ñÃ9?¤þýª¢Í‘?··#qÉ¥?¼ƒžxåÈê?¥}ç›–Z?ža—㸂?˜F†éôâß?¢2ðø:Uù@@@@@,@(?ð?ð?ð?ð?ð?ð¿=¦@¿r'Áí&?u,®·Ü^?aåܼÔ-Y@®ËÚ¡rJL@¬Ö s×:?޲ƒˆÛ¾»?€¿1Ïà l?õÒŽæå€?ÂÇþh,þX@Ÿp8:T@ÿ@¥ŽV“@¥”9Xc@¥ŽV“@¥›~ÿ—@¥ŽV“@¥“¶E¡Ë@¥ŽV“@¥ޱÄ2Ê@¥ŽV“@¥ˆ§æ›@¥ŽV“@¥†€IR@£$3¶E¡Ë@£$.V“@£$3¶E¡Ë@£$)Çy¦µ@£$3¶E¡Ë@£$(Œç°@£$3¶E¡Ë@£$1hr° @£$3¶E¡Ë@£$*ŒL˜@£$3¶E¡Ë@£$,L˜_@7 ØDЩ@7Ÿ|í‘hr@3óS÷ÎÙ@3ê¬Ùè>B@2A‰7KÇ@2w1Å@23&Á½¥@20£× +=q@23&Á½¥@21œàuöý@23&Á½¥@21Þi­BÄ?–ªÎ­¡?¡³¡Bš™?•ÝFê˜}é?ŽÆv‹‰k?‘èÒ§ˆ„Å?‘_ Ýß?ª[Xxöp?› —/Ù‘?•Ó%Øc~?‘!¥zt9Û?’W;„zY?Éöm/w+?¸ïµ(ýd?Íù7„¯ây?Œs¤DÅÐ@8Î÷@8i§@8Å?¹(¿¢÷SÐ?ÀH{’íŽ? “˜¯ÃÛ@8 * @8p÷@8¶?¨“‘¬?Âè*—NÔ@@@?ð?ð?ðøøøøøøøøøøøø@¬Ÿn—OßÁ.„€@¬Ÿn—OßÁ.„€@¬Ÿn—OßÁ.„€@¬Ÿn—OßÁ.„€@¬Ÿn—OßÁ.„€@¬Ÿn—OßÁ.„€@¦1È1&éyÁ.„€@¦1È1&éyÁ.„€@¦1È1&éyÁ.„€@¦1È1&éyÁ.„€@¦1È1&éyÁ.„€@¦1È1&éyÁ.„€@8ÖšÔ,<ŸÁ.„>¤µÜÆ@5+ IºÁ.„M‰ûçm@4Æ“t¼Á.„QnÙ‡@4._oÒ Á.„NÜC,¥@4._oÒ Á.„NÜC,¥@4._oÒ Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø@Ÿ:MÒñ©üÁ.„€@Ÿ:MÒñ©ü@Ÿ:hä`‡î@Ÿ:MÒñ©ü@Ÿ:]”‰*@Ÿ:MÒñ©ü@Ÿ:N×ù*7@Ÿ:MÒñ©ü@Ÿ:S{Gâ¸@Ÿ:MÒñ©ü@Ÿ:Q>9ˆç@¢Ž´¼j~úÁ.„€@¢Ž´¼j~ú@¢Ž°LLÆ@¢Ž´¼j~ú@¢Ž£næ–@¢Ž´¼j~ú@¢Ž¶|ºËû@¢Ž´¼j~ú@¢Ž¸:¶hÎ@¢Ž´¼j~ú@¢ŽÀfE_ž@3cg ù lÁ.„>¤µÜÆ@/.V“t@/-.™‘ˆ@.Ó¶E¡ÊÀ@.½jô@-QÑN;Í6@-?‰ +!@-QÑN;Í6@-B÷þdzF@-QÑN;Í6@->:•È@8J¨?èr€W?‘•¤Ñ禛?Ž*’ý&?‘á„h Þ?‘Mm,bzý@8J¨?’ýhî­?‘W  âï?˜#Ì~\•ê?•ö.Ø—?•Ü=óÝ@8p÷?@c ÃMQ?‚“¾'¥¤<íöÃ?ýÿ3…ô"@%»‘¯@Ÿj§rZ~[@@®B>ùÛ"ÑÁ.„€@®B>ùÛ"Ñ@®BDM:“@®B>ùÛ"Ñ@®B?±[W@@®B>ùÛ"Ñ@®B5*™2@®B>ùÛ"Ñ@®B3t¼j€@®B>ùÛ"Ñ@®B¤µÜÆ@3ðÄ›¥ãT@3øï4Ö¡b@3—ï²-@3£Ð|„µÝ@3!:’£S@37€4mÅÖ@3!:’£S@32MÒñ©ü@3!:’£S@32a|ÚQ@8J¨?”·'‚5â–?¡ ×1èB?¡ÈFªû"b?¤áøl‡ä(?ŸÁÝ·®Š@8J¨?› —/Ù‘?«Þô¯®€?³˜¬6öl@0=cˆe”°@0<ÓZ…‡”@0=cˆe”°@0‹ÿp`¿L^-m?[¢ÿÎc‚û?QÄÔåãÒY@¦8å’¤@® +äfõà?k©p·Î ¤?i¼ÛíD!á?Î\ÖzÏ?ÉB4ü¹H@Ÿqk]áè¿@@®k»çl‹D@®k­BÃÉï@®k»çl‹D@®k¸üPH@®k»çl‹D@®k»À6ã@®k»çl‹D@®k»‹¬q@®k»çl‹D@®k¹Û"Ðæ@®k»çl‹D@®kº–½@lyÛ"Ðå@l\(õÄ@lyÛ"Ðå@lzÇË)@lyÛ"Ðå@lxï4Ö @lyÛ"Ðå@lrGE8î@lyÛ"Ðå@lxl"h +@lyÛ"Ðå@lxQë…@7¨†YJôñ@7 ñ/y¦'@3Š^5?|í@3«ŸU›=@2©Û"Ðå`@2¬Ùè>B[@1œÚQÎ@1žvÈ´9X@1œÚQÎ@1ž!–R½=@1œÚQÎ@1  Ä›¥ä?|çµB &€?—޼½:?•XYäý?îZ¼!ÇŸ?’¥.Kn Í?’?=ÆþÎò?¤ïŒ7娠?–øÐ°€l?“?T¾¹µ ?’:u.ý ?“m^÷´?’j“O’I?™4f5×…?‘Žèã&!+?D/ +b°Þ?…”rsw?ˆW|¶DC?‰]³ß’Ý@@@@@,@,?ð?ð?ð?ð?ð?ð?j¢ú¿NéB›Ä?LÐûØÄôS?[dö›=…@®k·Ý(§Ç@lx™1_I?rÃ_¢}ò?r[$ÕâQ?ã¶ïjïLË?Ö¦/’‡iŽ@ŸnÊ*3{@ @¬†1©ûçm@¬†+Ƨïž@¬†1©ûçm@¬†/ „M@¬†1©ûçm@¬†4•*˜@¬†1©ûçm@¬†0£× +=@¬†1©ûçm@¬†1A [¿@¬†1©ûçm@¬†1ë…¹@¡>ž¸Që…@¡>›dZ¬@¡>ž¸Që…@¡>›ô‡ü¹@¡>ž¸Që…@¡>ÌcñA@¡>ž¸Që…@¡>ã¼Ó@¡>ž¸Që…@¡>ŸoÒó@¡>ž¸Që…@¡>›À6ã@7‚ò䎊@7{)^ž@3\Iº^5?@3`ªdÂø8@2iÛ"Ðå`@2o;dZ¬@1úÔ,<ží@2ÿ—$tT@1úÔ,<ží@2× +=p¤@1úÔ,<ží@2•éá°Š?1·†Æjñ?–[‹Å ?’ª®pµ?Ž‚¨Ø†{~?”NtyÞ"§?’u¹k‚=?„F/·ÿP5?˜¢K½š?’üüšë‚J?“%¾ . »?”ýó¶E¡Ë?’9ñ9¶ò8?”&¥1“V?ª‚eûƒ+?ˆìûIèœlûe?JŒ¤µÜÆ@4B° Ä›¦Á.„M‰ûçm@3A‰7KÇÁ.„QnÙ‡@3uµsê³hÁ.„NÜC,¥@3uµsê³hÁ.„NÜC,¥@3uµsê³hÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø @ªÍ6È´9X@ªÍ8Që…@ªÍ6È´9X@ªÍ*Ížƒä@ªÍ6È´9X@ªÍ 4mÅÖ@ªÍ6È´9X@ªÍ%Ö8†X@ªÍ6È´9X@ªÍ'ï²-@ªÍ6È´9X@ªÍ6“u@ª¥~ùÛ"Ñ@ª¥„›¥ãT@ª¥~ùÛ"Ñ@ª¥8­«ŸV@ª¥~ùÛ"Ñ@ª¥'ü¹#¢@ª¥~ùÛ"Ñ@ª¥GÕfÏB@ª¥~ùÛ"Ñ@ª¥>«6z@ª¥~ùÛ"Ñ@ª¥dÝ/ @7ý:’£@7ýcˆe”°@33S÷ÎÙ@3 Ë)^ž@2M²-V@2<¾ß¤@@1YŒ~($ @1KC,¥{@1YŒ~($ @1MÈK]Ì@1YŒ~($ @1N¾ß¤?æ?«á¬å÷‰?®ÖJ éf?³X€Õ‡s_?¬fJ5 ?¦KÊbo¨Þ?šèïdË?Œs¤DÅÐ?¿µ,i›ª?ÃĽ²;!?¿]«$_2.?»¼¸ölƒ?²m(~ 2ø?·–†»µ½D?“[ ·S?‹’Ú[ßõ?ˆ»ñJî¯Î?‰_uñšó?—ã ËÄž@@@@@,@(?ð?ð?ð?ð?ð?ð?7€cܰ¿„"ëÈ€?i2\  +ÀÎ?q@ñ\ð)@ªÍ1ö"d@ª¥k‚Z?ЏœD‰??”ùjL›¨Ò?àÍ#y+b?êÖcg:@Ÿi£‘y6Ø@ @®j¹XbN@®j³*À¥ô@®j¹XbN@®j¶ºóŽv@®j¹XbN@®j´ãM'@®j¹XbN@®j¶Ê'CÇ@®j¹XbN@®j¶¦«Ë@®j¹XbN@®j´û€’é@“9ÌÌÌÌÍ@“9Óv=ƒ@“9ÌÌÌÌÍ@“9¾’@“9ÌÌÌÌÍ@“9×­í´@“9ÌÌÌÌÍ@“9É<]y@“9ÌÌÌÌÍ@“9Á°O @“9ÌÌÌÌÍ@“9ºŽŒb@8£g ù l@8ŸÈGvÔ@4ahr° Ä@4c?²úrz@3“t¼j@3  zã¢@2ÏO „M@2ÒvðAª@@2ÏO „M@2ÔM™Ø{@2ÏO „M@2Õ¦2´?—‡ŸTVm?’-½Z?‘^ìç¤I•?¤¹èž?’Û±[âVÞ?’*JÛ“†·?–¼À›÷=?“'a¡÷ž?‘poØ?’¸S.ã&?”`´úñ½?‘çM…{3i?™­‹#B?6¢•c?…¿[ÁŽK?„⹯ò{?Š›ìC9ˆ?צmˆ8@@"@"@*@7@3?ð?ð?ð?ð?ð?ð?6l6(¿dUU/?A7¨*0l?2cr×R¡c@®jµ¯§É@“9Ån8š?[K¬ ¿«?O_6 Ûï?±BÁ³Ô:?”`ˆµv½@Ÿm¡-]½G@ @©„çï²-@©„î—Oß@©„çï²-Á.„€@©„çï²-Á.„€@©„çï²-Á.„€@©„çï²-Á.„€@©„çï²-@©„˜DЩ@­ Û¥ãSø@­ ‡+ J@­ Û¥ãSøÁ.„€@­ Û¥ãSøÁ.„€@­ Û¥ãSøÁ.„€@­ Û¥ãSøÁ.„€@­ Û¥ãSø@­ ±Î_@7ý:’£@7›C•%@3#÷ÎÙ‡Á.„M‰ûçm@2Ct¼j~úÁ.„QnÙ‡@1¸DЩ*Á.„NÜC,¥@1¸DЩ*Á.„NÜC,¥@1¸DЩ*@1ªdÂø8?¦Ï±úQm‡@8#˜@8¾:@8 >+@8Iç?ÎN5“‹W¢?îŠõ @8Î÷@8i§@8Å@8S?ÐÜÜ»ã¸?”³Ž+k@8 * @8p÷@8¶@8 Ø?æ®SH²@@*?ð?ðøøøøøøøøøøøø@«—äZ¬@«—䛥ãT@«—äZ¬@«—ãÉîËú@«—äZ¬@«—åÉä@«—äZ¬@«—äM:”@«—äZ¬@«—ãˆe”®@«—äZ¬@«—äg8~@¨÷F§ï²@¨÷G+ J@¨÷F§ï²@¨÷GæšÔ@¨÷F§ï²@¨÷G“Ý—ö@¨÷F§ï²@¨÷GæšÕ@¨÷F§ï²@¨÷Fffff@¨÷F§ï²@¨÷H1&éy@3Âò䎊@3Áÿ.Hè¨@1+¥ãS÷Î@1,L˜_@0±‰7Kƨ@0²3œ¾à@0¨è§æ›@0©XbMÓ@0¨è§æ›@0©Q‚©“ @0¨è§æ›@0©^žš?|öOÿÝ?jú‚<·™?‘yß]³Õø?ŒÇQ´?cvóJz×?€bõ•C?Œ´3‚n”'?‚€.]Øå?‚ù]f¼ÃÈ?†“‚I—²?†œ¶•ÒZ@@$@&@,@4@6?ð?ð?ð?ð?ð?ð¿E·Ènð?4p ·9?#»´?Û?Ü?'ôUt¸‘÷@¬…¦ ¿r…@šnvÇFÖ?2òœµö?6¦efæ"¨?a:êƒ4”?f+qtoþ @Ÿs æ"ø„@@¢à¨õÂ\@¢à¡G®{@¢à¨õÂ\Á.„€@¢à¨õÂ\Á.„€@¢à¨õÂ\Á.„€@¢à¨õÂ\Á.„€@¢à¨õÂ\Á.„€@ ‡+ J@ ‹C•@ ‡+ JÁ.„€@ ‡+ JÁ.„€@ ‡+ JÁ.„€@ ‡+ JÁ.„€@ ‡+ JÁ.„€@7Q|ÚQ@7bGE8ï5@2°Ä›¥ãTÁ.„M‰ûçm@1’Ðå`A‰Á.„QnÙ‡@1hè§æ›Á.„NÜC,¥@1hè§æ›Á.„NÜC,¥@1hè§æ›Á.„NÜC,¥?ð°–Ž]@8#˜@8¾:@8 >+@8Iç@8Ù?ð°–Ž]@8Î÷@8i§@8Å@8S@8û—?ð*wjs—@8 * @8p÷@8¶@8 Ø@8 Ø?ð?ðøøøøøøøøøøøø@¢MáÊÀƒ@¢Mâ Iº^@¢MáÊÀƒ@¢Mϲ-@¢MáÊÀƒ@¢MØï4Ö¡@¢MáÊÀƒ@¢MÆÜ]c‰@¢MáÊÀƒ@¢MÅÉä@¢MáÊÀƒ@¢MµÏªÍ @®Î 7Kƨ@®Î®zá@®Î 7Kƨ@®ÍùõY³Ð@®Î 7Kƨ@®ÍþOv_Ù@®Î 7Kƨ@®Í²äŽŠs@®Î 7Kƨ@®Í¾vÈ´9@®Î 7Kƨ@®Íаò{²@6#g ù l@6!ÊÀƒn@4c÷ÎÙ‡@4Q–R½<6@3;Ƨï²@34?åÉ@4TmÅÖ8†@4/ß;dZ@4TmÅÖ8†@41Î_p@4TmÅÖ8†@4,wškP²?|öOÿÝ?Ÿø5Õb&?˜g± ÓË?°Ëm$.ž?¤F™¢þ¸?´9Uð·d?€‚ñêã ?¢n4Ñ?£¯ðï?³øæp:ì2?§ò0û˜/f?¯íÉv8' ?ˆdÁ +,?«R²QFÆ?Vrÿä?P Ž)k?·C$\ûj$?¶ºjË)™@@@@@ @$?ð?ð?ð?ð?ð?ð¿€>îÍÀ¿ºe€ ?J<]éà?q;½WÛ@¢MÙyfÀK@®ÍõË/hÞ?_\Å*Kb?…?èî`¾?²{êîm&?ýØó‡®6@Ÿ^_ÉU~@@¯…‡+Á.„€@¯…‡+@¯‡=<64@¯…‡+@¯‡SMj@¯…‡+@¯‡QÅ‚@¯…‡+@¯‡sMj@¯…‡+@¯‡• '»@¦»Ù™™™šÁ.„€@¦»Ù™™™š@¦º­¸ºÇ@¦»Ù™™™š@¦ºÅœàw@¦»Ù™™™š@¦º·škP°@¦»Ù™™™š@¦º“üPH@¦»Ù™™™š@¦º$oi@9ãg ù lÁ.„>¤µÜÆ@5ÜIº^5?@5#FÜ]cˆ@5`A‰7L@4Qä÷eý‹@4fYJôðØ@3—€4mÅÖ@4fYJôðØ@3›6z—@4fYJôðØ@3žp:û~‘@8J¨?àÞ;gFÙí?áC>Ó¾S?ᾡ;¦?ÚV…¾Ò¾?Ø8‹R} +.@8J¨?Æîíä”$a?È ŒªgƒA?Æ„@l|L?ÌÙÒ¨PÝ'?Ô9Y14ó5@8p÷?ž°« /I#?˜èò_?þËæ¨Ý?¤¦”x£b?¡!¥zt9Û@@@@,@(?ð?ð?ð?ð?ðøøøøøøøøøøøø@¦›(õÂ@¦›E¡ÊÂ@¦›(õÂ@¦›àuöþ@¦›(õÂ@¦›"MÒñª@¦›(õÂ@¦›)­BÃÊ@¦›(õÂ@¦›쿱\@¦›(õÂ@¦›ã¼Ò@¨sD“t¼@¨s8Ôýóµ@¨sD“t¼@¨s?åÉ@¨sD“t¼@¨s@·€4o@¨sD“t¼@¨s«6z@8Y*0U2b@8aÿ.Hè§@3W+ Iº@3UÜÆ?@2lj~ùÛ#@2n쿱[W@1ºÔ,<ží@1·ÈK]Ìd@1ºÔ,<ží@1³üPH@1ºÔ,<ží@1¶”FsØ?¸bÌk0ÀÕ?‘ĵS…ç_?’µ<ëvar?Ž £Ú?– ÷œ È?–äm¦Qȳ?¯ò5}'Î?’LÁŒÀ´a?”Qä\‰Õ?ni"Í š?“«YNÚ˜°?’ ÃCÀ`ú?«†CRvÉÂ?”~ªd•?D/ +b°Þ?'dÂã—…?“KÌ&¨Í?“!S{uu@@@@@(@(?ð?ð?ð?ð?ð?ð¿r‰g¿ @?X"±¹j?eœ»‘W·?_âxî,*Ã@¦›#ú´ùF@¨s?B$­?u¥ýòªêp?qôýüŒÐ?ßüLþQ??Ø Y”%…è@ŸqAH˜w@@¦ä›"Ðå`@¦ä›¥ãSø@¦ä›"Ðå`@¦ä›˜Çâƒ@¦ä›"Ðå`@¦äIQ‚«@¦ä›"Ðå`@¦ä›"Ðåa@¦ä›"Ðå`@¦ä˜Ôýó¶@¦ä›"Ðå`@¦ä™ k¹Œ@¤ZNÙ‡+@¤ZN—Oß@¤ZNÙ‡+@¤ZNæ1ø¡@¤ZNÙ‡+@¤ZPbMÒò@¤ZNÙ‡+@¤ZTÉ…ðo@¤ZNÙ‡+@¤ZTSŽóM@¤ZNÙ‡+@¤ZRñ©ûç@4™*0U2b@4˜üPHð@0õãS÷ÎÙ@0õÖ8†YJ@0¬j~ùÛ#@0¬"h Ô•@0(è§æ›@0'l‹C•€@0(è§æ›@0'ÕfÏAò@0(è§æ›@0'®záH?}Ñ¿ž,?Kb½™×?‘WßÈDö@?Œ^:Òf?îú/´`?‘)]•\¬?1·†Æjñ?’4 "ëžØ?ö”iåó¨?‘jýÚXÜ?‘Oyn¥Ïj?‘fû›1-&?ƒ´],m÷?‚ù…žÄ`x?ƒR¨º“JÞ?‡ã ËÄž?†Óß +tõ@@@@@&@*?ð?ð?ð?ð?ð?ð¿A¤n\?Sø{"?%!P¸<d?<î¶ê1bc@¦äšŠû¾@¤ZQå(-?EPÐ }?]b}»Ö?— Á.+?Äðn`@Ÿg%Ú\æ"@@¥V“@¥—OÞ@¥V“@¥Ë’:@¥V“@¥üj~ùÚ@¥V“@¥›¥ãS@¥V“@¥r° Å@¥V“@¥§æ›@©8:áG®@©8:Ÿ¾vÊ@©8:áG®@©814êK@©8:áG®@©81Ä2ÊW@©8:áG®@©8=æšÔ,@©8:áG®@©85L˜_@©8:áG®@©84FsØ@3žHè§æ@3ž.±Ä2Ê@0E?|í‘h@0<¹#¢œx@0`A‰7L@0ðØDÐ@.b¶®~@-ü]cˆe•@.b¶®~@-þ«6z’@.b¶®~@.6âë?žˆ2}?—É·R©Ï?¥é+(³?žÑá•®ö0?Ÿ0 碽ü?Ÿò5}'Î?|öOÿÝ? ·yÈG³?¡œåVÉh?”Ò}“® ?Ÿé„ærrl?¢íÐFW?‚nâwfÿ?îŠõ ?†úŒz_–È?‡¯½.SM?‹ ˜1 D@?™/ã̽`ª@@@@@,@,?ð?ð?ð?ð?ð?ð¿[iP¥(¿B u ?FÆpQ˜?Mý®Ðg +@¥ žˆˆ@©89ìÉ/¦?d1žºDt ?i,ŠÞu‰)?Ã3Ÿº±ä?ÒŸo>Èa@Ÿbí›"J£@@£I7KƨÁ.„€@£I7KƨÁ.„€@£I7KƨÁ.„€@£I7KƨÁ.„€@£I7KƨÁ.„€@£I7KƨÁ.„€@/ð£× +=Á.„€@/ð£× +=Á.„€@/ð£× +=Á.„€@/ð£× +=Á.„€@/ð£× +=Á.„€@/ð£× +=Á.„€@6½:’£Á.„>¤µÜÆ@2½‘hr° Á.„M‰ûçm@2V”Á.„QnÙ‡@1ò䎊rÁ.„NÜC,¥@1ò䎊rÁ.„NÜC,¥@1ò䎊rÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø@¢¸éxÔýô@¢¸êÀƒo@¢¸éxÔýô@¢¸ìEÈõí@¢¸éxÔýô@¢¸ß} Ê[@¢¸éxÔýô@¢¸ÁO~¦@¢¸éxÔýô@¢¸Ø´˜:)@¢¸éxÔýô@¢¸×_oÒ@˜¤t¼j@˜¤ñ©ûç@˜¤t¼j@˜¤<éu>@˜¤t¼j@˜¤B‹ÔÊÈ@˜¤t¼j@˜¤â9†î@˜¤t¼j@˜¤?ÏÑç@˜¤t¼j@˜¤3=¥øº@6IÎ_oÒ@6G1Å@4 Ä›¥ã@3þcÈb•@3]V”@3qÄQØdñ@30–»˜Çã@3?§}á@”@30–»˜Çã@3:úZÆ@30–»˜Çã@3@¬CHÞ±?}õ¬#„­?˜öð÷v¥§? CÊa›&?‘C`ÞvgÝ?˜yÃó±å?¡ÂdövÁ?€‘gQÚÃ?šg'Ú*/³?«À%/Ï´? ˜TM–G¢?™£ähè—?ŸîÃÈçe’?„væc0·?ÈÞGÈ?§Wyì•+Î?©½I ‡?£oû»yì?¥pÞøA‰Õ@@(@(@"@7@7?ð?ð?ð?ð?ð?ð¿ë«É ?qTû÷?€?qÑ—~?™i1Æ?°ˆÉÕ–z?œ26d®æ?ž‚l{ð :?©:ŠÊÙ?¢D( ?›Àß·Ú™T?’&'Þ’c?Ÿ&ÌZ—ô€?ž÷çî!«?¥vöôÛ-?“¿ŽÁ{¢?“£ïHŸÛë?‘?Ðü ?“qþægu?÷(6 ˜+@@(@*@$@<@9?ð?ð?ð?ð?ð?ð?Oj +Bt?wãa·£??¦à®ª±›?w¶¢ònÓB@¤I…Û°åE@˜lõ…¦‡z?\þ±ÄRj?[…}Ö\?©)ÖëÔ,@§Ñ&%ª@Ÿm-½ÅÚ1@@¤>^¸Që…@¤>V‡+ @¤>^¸Që…@¤>Rñ©ûç@¤>^¸Që…@¤>L"h Õ@¤>^¸Që…@¤>?b¶®}@¤>^¸Që…@¤>\C,¥z@¤>^¸Që…@¤>P°ò{³@©i•$Ý@©i–“u@©i•$Ý@©iŸ¾x@©i•$Ý@©i†€IQ@©i•$Ý@©i·éù@©i•$Ý@©i•›=È@©i•$Ý@©iœÆ?@7¨†YJôñ@7©*0U2b@2T›¥ãSø@2R•éá°Š@1Õ`A‰7L@1Ï!-w1@1B‚@·€5@1:=p£× +@1B‚@·€5@1E$Ý/@1B‚@·€5@1<ô!-w?ð°–Ž]?¾¢`ƒ?ž´g–Ow? l§s¼C^?’dÓÙiº?•ŠàuVº`?ð°–Ž]?“¶†ÿê¡?žËcÃoŸ?¤9Û6 ó?‘†óèJL\?‘õe\Š«p?ð*wjs—?ŒÖ +ÄȲ?ŠÇÿú?Šˆ€!B®?‰G±±ZÎ?IÏáå$?ð@@@@$@"?ð?ð?ð?ð?ð?ð?tœª¹€?y{ÏH?Ž:ìû +?HE¢Ÿ&33@¤>SUWÈ@©i–ÄôÝ7?ŠM½ ]?Q‡¨¾4V@㺚\,?ŽsG 5—Ü@Ÿup²;f¹@@¬D¡ÊÀƒ@¬DŸ;dZ@¬D¡ÊÀƒ@¬D sºPo@¬D¡ÊÀƒ@¬D£~<#@¬D¡ÊÀƒ@¬D¡ÁñÀ@¬D¡ÊÀƒ@¬D¢«Æb7@¬D¡ÊÀƒ@¬DŸµN‡@—|ixÔýô@—|_ycZy@—|ixÔýô@—|€×ÆM9@—|ixÔýô@—|mÂÒþÈ@—|ixÔýô@—|msxÞ@—|ixÔýô@—|kŸ„ce@—|ixÔýô@—|kRö(Ñ@8D¯O „M@85”Ï-¦@4i‡+ @4k—ƒiŠF@3RÐå`A‰@3VK ÿà@2s&Á½¥@2w˜>Éáx@2s&Á½¥@2võ¢å°@2s&Á½¥@2w +‰O)?°cÖ÷ГA?3ª?qJ?‘k<º…EÅ?Óê¸Üð—?“‰·I¯s?‘œnÛùŠ?Ž\Õl6Ò?’ $4;}?‘ÑM uÝ?“©&úSÙ?“có{ç?“)¥ö‚HV?œ9Àåáñs?‘p¦òÝA?†]"ïŠ_/?†OÙ3—¯?ˆ9cjRkÄ?‡Þß 3ª@@$@@*@<@:?ð?ð?ð?ð?ð?ð¿:£Íè?UÐy5?FÜ©Ü6âè?A-̹ @¬D¡TËæø@—|js6\?Yå‘P£†B?bT£µì† ?©híÛÍ¢?»¿p²j´@Ÿpr;ß@@«ñë…¸R@«ñðå`A‰@«ñë…¸R@«ñíÒñ©û@«ñë…¸R@«ñçÈK]Ì@«ñë…¸R@«ñì~($ @«ñë…¸R@«ñëàÞÒŠ@«ñë…¸R@«ñëjçÕg@­Ë‘hr°!@­Ë”9Xc@­Ë‘hr°!@­Ë“ àÞÒ@­Ë‘hr°!@­Ë“Ð|„¶@­Ë‘hr°!@­Ë’ÊW§ˆ@­Ë‘hr°!@­Ëÿ—$t@­Ë‘hr°!@­Ë“ÃaA@6ëµsê´@6âMÒñ©ü@2©‡+ @2©ã¼Ó@2¶§ï²-@2¶§ï²-@2œàu÷@2¼j~ùÛ@2œàu÷@2ŽŠqÞj@2œàu÷@2g ù l?„F/·ÿP5?W[†?‘K]Ã4?’ {½4?’êÔÒ?ø·-/ge?˜ž^ƒÿ*ˆ?’“ºƒ;Nû?üÓqÔN‰?‘ˆ¶´M=?‘®7Ö=^9?·t¤¢‚K?³p}Ù[^8?Žâç.¡È?…íŽ(þÇ?„•ˆG’Z¾?Š*ÊÔQãú?ˆ0&YÊEd@@@@@&@$?ð?ð?ð?ð?ð?ð¿S•a¨¿(ýÊ&@?'/™1òQ?@Æ÷»>Ã@«ñí3 e,@­Ë’ßmô“?IýZ‘T?[)¯§V7Š?•Vò©“,?°SuY4Þ@ŸmrÃ*­@@¨D´¼j~ú@¨DÂÐå`B@¨D´¼j~ú@¨Dµ$Ý@¨D´¼j~ú@¨D°oiDh@¨D´¼j~ú@¨DµY³Ð}@¨D´¼j~ú@¨D±&éxÕ@¨D´¼j~ú@¨D¯·éù@¨N¬1@¨N%`A‰6@¨N¬1@¨Néùs@¨N¬1@¨Nú¬Ùè@¨N¬1@¨NÁ½¥@¨N¬1@¨NÓZ…ˆ@¨N¬1@¨N64@8>«6z@8 Û"Ðå`@3R Iº^5@3Rø7´¢4@2,j~ùÛ#@2,cñA \@1£ÉîËû@1£ÉîËû@1£ÉîËû@1¢u%F +¦@1£ÉîËû@1£FÜ]cˆ?1·†Æjñ?‘Ü„ Þ(£?”4 bà5?‡{@áè?’<_+fjä?’ëÆ[2?™™™™™™š?“?xr¢I?“’OÕƒõ‘?@§[*^?’.<ù?‘–íÍQÜ?¸éÅR[SA?Ž»žä4?…íŽ(þÇ?„2ÌôÏ?ˆ +¿„r©Ý?‹&¸ê±fÂ@@@@@*@,?ð?ð?ð?ð?ð?ð¿q[áâ¿S¦›Ž?:Ç}%\3l?[Þšójö@¨D¶CJ¨«@¨N“Ô¬?_£6¤/?uãt§ #²?¿Û´$Z=ƒ?äò‡qàÐ@ŸlÑâ͸@@©. Oß;d@©.&éxÔ@©. Oß;d@©. ¥zxl@©. Oß;d@©. +=p£×@©. Oß;d@©. ÌÌÌÍ@©. Oß;d@©. 1&é@©. Oß;d@©. ’:)Ç@ži•$Ý@žiŽÙ‡+@ži•$Ý@ži›À6ã@ži•$Ý@ži¤%®æ2@ži•$Ý@ži™™™™š@ži•$Ý@ži—Ûô‡ý@ži•$Ý@ži—ö+jé@7>«6z@7+ÓÃa@1½‘hr° @1»Æ§ï²@1 "Ðå`B@1ÕfÏAò@.ÿåÉä@.üÓZ…‡”@.ÿåÉä@.ÿ.Hè§@.ÿåÉä@.þùÛ"Ðå?š•§q!U?:LÓá +í?‘:€¾¶ˆ?Œj6_?ùª¨?ÛF»0?žˆ2}?“-N•I`(?¯éÊSÜ?Ò–‚h±n?Ø¥²À<(?–’+¸¢d?žšÅö´^'?†¡HŸÊç?…µsê³g¡?ƒ!Ë *(?†Óß +tõ?‡?®\Âä@@@@@$@,?ð?ð?ð?ð?ð?ð¿P½¹%²?QÐ-{?1þ¯í?±Ü?6Œû/Y˜7@©. ísœ@ži•ê<É?JIŽà…: ?Z&"Û1 ú?‘¡u*<–?·f«5©S@ŸmR}ñ´J@@¦¹‰º^5?@¦¹šCYVþ@¦¹‰º^5?@¦¹‡ÏÂ+@¦¹‰º^5?@¦¹wÂÞ@¦¹‰º^5?@¦¹†áMšÖ@¦¹‰º^5?@¦¹…|vIÙ@¦¹‰º^5?@¦¹‹VgWW@˜üí‘hs@˜áÊÀƒ@˜üí‘hs@˜ŽÂ¿Ô @˜üí‘hs@˜áø½ @˜üí‘hs@˜êåSœ¯@˜üí‘hs@˜àòï(ã@˜üí‘hs@˜û„ @8?–»˜È@7ÖšÔ,<ž@3žÙ‡+@3¡‘ó>@2Ͳ-V@2ÍýÃV¢†@2Œ~($ @2#(rÅ8@2Œ~($ @2(fM°@2Œ~($ @2$ÌÆ¿ê6?‹œãµ,r—?dûþ»ÛÀ?’7¦m-§J?×îN*â°?”#Ô¶}_=?“™ kR?“x/0 ª?”ž«¸¹ÐŠ?‘œq(.ÛW?‘úû'®Œ¸?–#)X;?—UÙCJL?µ—bº§|&?‘—»eñ!?†DÁ‘uÞ?ˆ«(A›ë?Š +e»°û?ŒÓúS©À‚@@*@$@&@7@8?ð?ð?ð?ð?ð?ð¿oá¼\¼?[¡®(I?\Î;üXL(?XbeøŸÛ@¦¹WÅ@˜é¬±?|+TÐ~?!?u_²¥F/?õynŒÖ¿?á’»Ôg#t@ŸkAci†@@¬ Iº^@¬ Iº^@¬ Iº^@¬¿U›=@¬ Iº^@¬ÀÄ›¥ã@¬ Iº^@¬üÓZ†@¬ Iº^@¬¾š@¬ Iº^@¬½Ùb·@ªa$Ý/@ªa Iº^@ªa$Ý/@ªañA \@ªa$Ý/@ªaMÒñ©@ªa$Ý/@ªan.±Ä@ªa$Ý/@ªan.±Ä@ªa$Ý/@ªaëC-@5ÿ–»˜È@5ÿò䎊r@2° Ä›¦@2À4mÅÖ8@2 ²-V@2 )^ž @1£ÉîËû@1¡‚©“ á@1£ÉîËû@1£× +=p¤@1£ÉîËû@1¤¨ÁTɆ?‚á²Olºü?ÖÈ ¼?‘e +!ßC?Uÿyu”#?‘¯GàBm?“”üU§<­?‚á²Olºü?’4 "ëžØ?‘8“‡«G?‘¼Øzé±ï?‘êë·áþA?‘fû›1-&?ˆïhƒEõ¦? $gú‡v?ƒÚ@êA²?ˆ6‘F:™Ê?ˆÔÞÑ—æJ?‘p&Æ ç–@@@@@&@&?ð?ð?ð?ð?ð?ð¿Gؾ?1ÚóÐ?BaÌç)¡?yö#Í º@¬ÀÁ&6º@ªaÀ'@?bw")sÄ??Xƒ‰§Z·?ÉšÕ˜¨Î?‚û}]°;Ð@ŸhAž’†¬@ @®ðíV@®ðâ\(õ@®ðíV@®ðç¼¢ã«@®ðíV@®ðæÿÍSã@®ðíV@®ðê¸MI@®ðíV@®ðí¬NYA@®ðíV@®ðäM:“@˜4m‘hr°@˜4l1&è@˜4m‘hr°@˜4W0E@0@˜4m‘hr°@˜4t¨êäµ@˜4m‘hr°@˜4 •| + @˜4m‘hr°@˜4‚x¹ù@˜4m‘hr°@˜4r×s@8:qÞi­C@81äQ›>®@5» Iº^@5µ–Ó3@5Z~ùÛ"Ñ@5d¡×Íd~@5:Ô,<ží@5;«V©+:@5:Ô,<ží@5@-¥¸§S@5:Ô,<ží@5=¸ºÇË?‘w×vHf?›Íîç +?¤°"RÙÃ? Œ—È­â»?¤h?zF?²ù-VñŸ4?“O‹}Ìe?£,d†@Ÿe&i`ôO@!@¤ž³3333@¤¢ÂMÒñª@¤ž³3333@¤¡QÄ2ÊW@¤ž³3333@¤¡-w1@¤ž³3333@¤¡¬"h Õ@¤ž³3333@¤¡7Xâe@¤ž³3333@¤ Ó3333@®|«…¸R@®{‚Ðå`A@®|«…¸R@®|¸»@®|«…¸R@®| Oß;d@®|«…¸R@®{ùXbN@®|«…¸R@®|ŠÚ¹õ@®|«…¸R@®|BÞÑ·@8G>«6z@7+ Iº^@5£÷ÎÙ‡@4NcŠ @4éÛ"Ðå`@3ÒGE8ï5@4œÚQÎ@3aø -à@4œÚQÎ@3_Š Þ@4œÚQÎ@3[~ÿ—%?¢F^ì¼Sð?ØøÛtð?¶§U…A”ô?ÄøÃç÷%?»°Â„Þ ‹?Ø üRAøQ?œä%—ëš?²¦Î^Ï?—Àó%â­?§7&Öcè?šâ6¿°P?§‘§ß±Zî?°*?Ú±P?œFg*V¿3?¤1މ,j†?«~?‹]B0?©CRù¼U?™/ã̽`ª@@@@@ @&?ð?ð?ð?ð?ð?ð¿¹Ìi@?¤´@?Wf>h—ß?^ì==QVÓ@¤¢C³x¯@®{ÄWÁ&Ð?soª0æ‡?€(O-hhÆ?˜ˆÑÑ’³?Ø4P— ¬@Ÿb¤]|å9@"@­š-‘hr°@­š-Òñ©ü@­š-‘hr°@­š.óMj@­š-‘hr°@­š.záH@­š-‘hr°@­š,¿±[V@­š-‘hr°@­š+]Ìcñ@­š-‘hr°@­š+…¸R@­Ï•$Ý@­Ï–“u@­Ï•$Ý@­Ï–È´9Y@­Ï•$Ý@­Ï—>«6z@­Ï•$Ý@­Ï”¢3œ@­Ï•$Ý@­Ï”9Xc@­Ï•$Ý@­Ï—süP@3÷â‚@·€@3÷â‚@·€@2!hr° Ä@2!½¥œà@1çKƧïž@1ç€4mÅÖ@1\ÚQÎ@1\¿±[W?@1\ÚQÎ@1\j~ùÛ#@1\ÚQÎ@1\¾ß¤@?1·†Æjñ?ß‹’bÏ?“­læ>®€? Ìç,Z?‘§›ßÉîj?‘_ Ýß?|¬Çëý ?’LÁŒÀ´a?’hÕü‰­?‘!¥zt9Û?‘¦‘=W?‘C å;Ã?ƒ/‹ÍY}‘?Œáò¯ž¼ù?„ò—TËÄ?ƒiñj6Â?‡L8õASÎ?‡YÍ_@@@@@(@*?ð?ð?ð?ð?ð?ð¿@¼0¿Þ T?s@óå(?5Q[v|@­š,½ Ũ@­Ï•Êwů?3[F"3a«?UÂï±?'?rTrb Éz?·Ð5D¤@ŸfìNÈãk@#@¦bšŸ¾vÉ@¦b›"Ðå`@¦bšŸ¾vÉ@¦b°Ë)^ž@¦bšŸ¾vÉ@¦b¤Z¬@¦bšŸ¾vÉ@¦b©“ àß@¦bšŸ¾vÉ@¦bv®}Vl@¦bšŸ¾vÉ@¦c ¹Œ~)@ª…âMÒñª@ª…â Iº^@ª…âMÒñª@ª…úQÎ@ª…âMÒñª@ª…öðº@ª…âMÒñª@ª…ýŠÚ¹õ@ª…âMÒñª@ª…±hr°!@ª…âMÒñª@ª†i­BÃÉ@7 ØDЩ@7 -à r@3º^5?}@3+…¸Që@1þV“u@2 õY³Ð|@1«xFÜ^@1¼j~ùÛ#@1«xFÜ^@1A‰7KÆ@1«xFÜ^@2zxl"h?‘â%ì˜ ä?¢L +xNCõ?‘–”«ëó?˜Ë=ð½ìÔ?µ—5"Ž?¾ZF,U?’Óusÿ\Ã?¥|ë-ÈJÐ?‘Ûcu%ç+?•è­¸‡?²´Xxeü?Ŷüë'þ?‚‘´…=Ca?÷¾I1;?„‘Za¹Q?ƒžÂâk,?¡S1Êz?GÅ?‘jÐÅx?‘yÃúCŠ?én™‘=Î?Œþ%å_D?ƒ/‹ÍY}’?ƒR¨º“JÞ?‡¤o„C?‡´*žZ}Õ@@@@@(@*?ð?ð?ð?ð?ð?ð¿ZÖt$?Q÷™3?4™ó4Bå?^f¹0Òû½@¬’±yÞÄ@©„WûvÆ?Qu³I$æé?ryFÁáé? ë¾%Lw$?Ú¢‡þ|!@Ÿo¯’¤å@'@©ahõÂ\@©aixÔýô@©ahõÂ\@©ah§æœ@©ahõÂ\@©an;Í5©@©ahõÂ\@©ai*0U2@©ahõÂ\@©ai7Kƨ@©ahõÂ\@©ae¼£n@ ƒmV@ ƒl‹C•@ ƒmV@ ƒiûçl‹@ ƒmV@ ƒféxÔþ@ ƒmV@ ƒl/ƒ{J@ ƒmV@ ƒnËûµ@ ƒmV@ ƒncŠ @6°4mÅÖ8@6¯O „M@3Ìí‘hr°@3ÍVlô!@3ˆ“t¼j@3ˆË’:*@2ž«6z‘@2ÈK]Ì@2ž«6z‘@2<64@2ž«6z‘@2«ŸU›=?ð°–Ž]?”Øÿ4ÙKl?‘e +!ßC?Hð¹?˜¡4wˆŒ?“¾Ž¿ô€?ð°–Ž]?”=øŽî‚}?低NëU?‘ǧ?D6?–›·†ø?‘fû›1-&?ð*wjs—?†¡HŸÊç?‰~}œ…o_?…bv{3dZ?Š`½i=ÓØ?‰G±±ZÎ?ð@@@@,@(?ð?ð?ð?ð?ð?ð¿VwqÉá?P,sPqÀ?B/ù©%Ù?:òno'b¶@©agç‘(@ ƒm˜ÞJ?R8£<Ši}?J~Ùûd¨·?”æ”@èÊë?‡Ó%SŠEk@Ÿsup$z@(@¯âwKƧð@¯âwÎÙ‡@¯âwKƧð@¯âxQë…@¯âwKƧð@¯âx_ö•@¯âwKƧð@¯âwXâd@¯âwKƧð@¯âvOv`@¯âwKƧð@¯âv+jçÔ@¡À­‘hr°@¡À®V“@¡À­‘hr°@¡À­„M;@¡À­‘hr°@¡À®záH@¡À­‘hr°@¡À®cŠ @¡À­‘hr°@¡À­ÅÖ8†@¡À­‘hr°@¡À­úCþ]@1eöý!ÿ.@1e”¯O „@,Çï²-@,ÇÈK]Ìd@+´ýó¶E¢@+´•*™1@+3üPH@+2䎊qà@+3üPH@+2{²þÅn@+3üPH@+2° Ä›¦?Éa—Ã(Ê?ÉGãA­÷?‘ŸÇSñ?‹ë¤½?‡á?òǹíT­?¼‚Ë¡K?ÐbV‡,?’ ÃCÀ`ú?ŽËÜ¿€?@§[*^?ë,YÁ?R g!Ú¢?ma7Î?Œ°¶.Ä+Æ?‚uÞ@>N ?‚äÍ“½E'?†ŠúЀ>(?†–f_ÔŠŠ@@@@@,@*?ð?ð?ð?ð?ð?ð¿Aù  ˜¿(àÂð?'×:Œe’N?!Få çØ@¯âv¡ž‘p@¡À®$Q›?6êº„Š¢?06üÊX0d?i™ÙEì\?Vï*§¨è<@Ÿs j8 .@)@¦‘Ä“t¼@¦‘ÎÙ‡+@¦‘Ä“t¼@¦‘Õ%F +¥@¦‘Ä“t¼@¦‘Î;Í5§@¦‘Ä“t¼@¦‘Æ€IR@¦‘Ä“t¼@¦‘Ð-à @¦‘Ä“t¼@¦‘ÀªdÂ÷@­/z^5?}@­/|j~ùÚ@­/z^5?}@­/s@N¤©@­/z^5?}@­/d›¥ãS@­/z^5?}@­/{~ÿ˜@­/z^5?}@­/gü¹#£@­/z^5?}@­/zÇË)@7·â‚@·€@7µsê³g¡@53S÷ÎÙ@5/U›=È@4Àå`A‰7@4ÇRT`ªe@4 ¿±[W?@4JŒL˜@4 ¿±[W?@4üPH@4 ¿±[W?@4 '»/ì?‚á²Olºü?žÒ·Ì‚? 6K¼Xææ?˜öÔþ¹û?§pˆ/™Š?™òc¾ÿ:e?îŠõ ?Ÿ.Í +üò?¡¿®ªã‹B?ŸjÝá3(?£ù°‘ +sï? ö«ö'ƒ?6´×–°?W<Óܾo?¢Ì÷y\ÛÎ? ²j÷v ?™t#‰$ ?”NtyÞ"§@@@@@,@(?ð?ð?ð?ð?ð?ð¿d„˦ú¿T~ŸØ?M +s7ý£?cÜX«‘@¦‘ÈSÁ @­/x±I8þ?pù=œÍ?ƒŒ:8í?ѧ‡ÀÛû?ç` ºl@Ÿj6®´wË@*@¨k‹Æ§ïž@¨k‹…¸R@¨k‹Æ§ïž@¨k‹ïU©Œ@¨k‹Æ§ïž@¨k‹ŸU›=@¨k‹Æ§ïž@¨kŒx›'@¨k‹Æ§ïž@¨k‹àÞÒ‡@¨k‹Æ§ïž@¨k‹áØv@›^cS÷ÎÙ@›^cS÷ÎÙ@›^cS÷ÎÙ@›^b’Tâg@›^cS÷ÎÙ@›^b¨a@@›^cS÷ÎÙ@›^bñfà@›^cS÷ÎÙ@›^cÑTvw@›^cS÷ÎÙ@›^e|*§þ@3ò䎊@3¥µ0Ï@/\j~ùÛ"@/]ët´`@-òn—Oß@-ò̱Qð•@,žžš@,žì.‚@,žžš@,žéÿ<0G@,žžš@,Ÿ °½1å?|Ñb×¶@?רéª÷4?‘"þ(#*m?‹ªO*j«e?ðÖì¶-?·Œ“Ͷ?|¬h2:“?’’ÛR‘?ŒJà“:?9ÍÇ~FÀ?Ú¥ªÔW?Jö²U4?‚pDøïRg?Œº“zí+‡?‚xþuhy¿?‚éST)FS?†‘Ò®â­c?†Š®ÚH„ð@@*@(@*@3@,?ð?ð?ð?ð?ð?ð?§öl€?"òˆ`?Í|$HÊÓ?}c[ª.@¨k‹Ù@›^cÑ‘Ê?9«–Y×iØ?8÷o}šý—?‚ …$f¾?€X’*¯ @Ÿfø>E@+@£ƒâÐå`BÁ.„€@£ƒâÐå`BÁ.„€@£ƒâÐå`BÁ.„€@£ƒâÐå`BÁ.„€@£ƒâÐå`BÁ.„€@£ƒâÐå`BÁ.„€@bMÒñªÁ.„€@bMÒñªÁ.„€@bMÒñªÁ.„€@bMÒñªÁ.„€@bMÒñªÁ.„€@bMÒñªÁ.„€@4‚ò䎊Á.„>¤µÜÆ@2T›¥ãSøÁ.„M‰ûçm@1È“t¼jÁ.„QnÙ‡@1a:’£SÁ.„NÜC,¥@1a:’£SÁ.„NÜC,¥@1a:’£SÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø,@§w<í‘hs@§w6‡+ @§w<í‘hs@§w:¹õY´@§w<í‘hs@§w:ÇË)@§w<í‘hs@§w<Æ?@§w<í‘hs@§w:Ô,<Ÿ@§w<í‘hsÁ.„€@ž+È´9X@ž+º^5?}@ž+È´9X@ž+ÂÞѸ@ž+È´9X@ž+Ì~($ @ž+È´9X@ž+Çü¹#£@ž+È´9X@ž+¾($ x@ž+È´9XÁ.„€@7*0U2b@7Ô•*™@3 Iº^5@3:’£S@1ñ‰7Kƨ@1ñ-w1Å@1µµsê³h@1¶4êK@1µµsê³h@1µS&Á¾@1µµsê³hÁ.„NÜC,¥?˜ž^ƒÿ*ˆ?*£|3Né?‘°&޲P?‹ÑqÔ@vÿ?‘×´<î¯j@8Ù?}Ñ¿ž,?’[ KÄ0R?‘[RK¶ËE?RLnj?” E®!—@8û—?“²pÅâ-Ý?’òÌ&Œ®3?„W;RT?„À"aËô??‰_uñšó@8 Ø@@@@@,?ð?ð?ð?ð?ðøøøøøøøøøøøø-@¡I¡ÊÀƒ@¡I A‰7L@¡I¡ÊÀƒ@¡I¨õÂ\@¡I¡ÊÀƒ@¡I´¼j~ú@¡I¡ÊÀƒ@¡I±Å@¡I¡ÊÀƒ@¡I¸7´¢4@¡I¡ÊÀƒ@¡IÁaä÷f@ ]A‰7KÇ@ ]@Ä›¥ã@ ]A‰7KÇ@ ]S÷ÎÙ@ ]A‰7KÇ@ ]I“ àß@ ]A‰7KÇ@ ]=¿HÌ@ ]A‰7KÇ@ ]ZáG®@ ]A‰7KÇ@ ]YŒ~(#@7uS&Á¾@7uzxl"h@2À Ä›¥ã@2¹Û"Ðå`@1´“t¼j@1°–»˜Çâ@1B‚@·€5@1F¸ºÇ@1B‚@·€5@1.Ù‡+@1B‚@·€5@1/|í‘hs?“Æ×q„nï?•Íñ¤Ý q?–™@^Ú¢?‘´CF õ?­Ê޽˹ÿ?£¸½X—Œ?–ªÎ­¡?”n‹rÕ|?“®ÂrVŽx?“ä$š„…œ?®õw¸æd«?›Œ³¶Ñ×?‹ÛÛÐïE?‘ +òtMŠ?“„*0x)Æ?ˆW„hðQ?—H—‹‰ +0?‘ýÂHåÅÐ@@@@@,@$?ð?ð?ð?ð?ð?ð?zã¸?r¢|?)O_‘úöÙ?j"n¯þ¡q@¡I¯üâfb@ ]FCt M?EIM”;¶ ?‡‚§íâBò?v.Ù)«ª?ú½Óù²·õ@Ÿh¸È@.@¬ +î—Oß@¬ +íöÓa*@¬ +î—Oß@¬ +æ=x@¬ +î—Oß@¬ +Þ’,ü@¬ +î—Oß@¬ +ÖNûü@¬ +î—Oß@¬ +Ðu¶b@¬ +î—Oß@¬ +Ï@`¦@“J,1&é@“J+jçÕg@“J,1&é@“J&šÔ,<@“J,1&é@“J+?ÅI¦@“J,1&é@“J&©ùJß@“J,1&é@“Jo-LP@“J,1&é@“J ¨Ž‚ß@5ý:’£@5û‡ò~Æ¢@3žÙ‡+@3™Öµþf@3 ²-V@3€9à@2ÿò䎊r@2ðìîÀ<Í@2ÿò䎊r@2ñ´c9n@2ÿò䎊r@2ñ"Áš?„ÜNó7·å?“´QzjÇ‹?•· ˜Ùn&?‘Xã‹`Ó?¤µÌ¤ŽÎm?¢ '4&%?|çµB &€?“ultCé?”œ×ŒÇ?=ͱl•8?špU,»?”M€ä ÷?‚¹ !€¶¸?Ž@y‡‘;?‡)T;‹?‡[ž=9á?É´i­Åw?Gr±¼_@@&@$@"@8@3?ð?ð?ð?ð?ð?ð¿~Ͱ¶&¿g…n;?Pù{ƒA?Lr×>ön @¬ +ßGÑÿ4@“J!k·¿X?m—®øË‰é?j°ž;1»?ÓQÍeSÇz?Þ»Šÿçˆ@Ÿd£¼ý®¦@/@¢C•%@¢,ÌÌÌÍ@¢C•%@¢j¦L/ƒ@¢C•%@¢IÔ•,@¢C•%@¢\PHð@¢C•%@¢]ã¼Ó@¢C•%Á.„€@§¯/Ÿ¾@§¯;dZ­@§¯/Ÿ¾@§®üj~ùÛ@§¯/Ÿ¾@§¯ˆÎp;@§¯/Ÿ¾@§¯WXâ@§¯/Ÿ¾@§¯Q4êK@§¯/Ÿ¾Á.„€@9>«6z@9#33333@6 Ä›¥ã@5߃{J#:@5t¼j~ú@5"MÒñ©ü@4‘Þi­BÄ@4ÄŽŠqÞj@4‘Þi­BÄ@4¡ë…¸R@4‘Þi­BÄÁ.„NÜC,¥?|öOÿÝ?¹Lxé5BL?¿ +¢“Šôì?»lE ƒ]?ÛÄÒ®Uš@8Ù?µŸ£'Ñ&?ªvðj?›R?±ÝF͵sS?¶éÖŽyPâ?¶Ý”J {×@8û—?ÅT”#¨ ?¹W»¥ÿ$B?¹§Âƒj?¹é›÷Kûä?Â11õÔ6©@8 Ø@@@@@,?ð?ð?ð?ð?ðøøøøøøøøøøøø0@«€¬1&é@«€¸0 +¢T@«€¬1&é@«€ªˆI:‚@«€¬1&é@«€¦R½<6@«€¬1&é@«€±†©Ô@«€¬1&é@«€²^uÆ–@«€¬1&é@«€¯›]@”é·KƧð@”éÎ Ëåd@”é·KƧð@”é´ö“Î@”é·KƧð@”鳋÷@O@”é·KƧð@”é¶õH.c@”é·KƧð@”é¬Ò °1@”é·KƧð@”é©ÜŸøú@7Ì]cˆe”@7À¡·˜žŒ@3f‡+ J@3li.pÄ@2A‰7KÇ@2Bžy@2‚@·€5@1û¦ƒ)Û.@2‚@·€5@1ûèM{å@2‚@·€5@1úpKÔ?–…­à Ø—?’°weŒ ?“bº|ÄS?ŒuÓ)Pnf?’²¶!©ã=?’臫¡°?‚Ú¡ËG7?%üdêË?%üdêË@@@@@(@(?ð?ð?ð?ð?ð?ð?A~8ü?L(T ?0yäÆ/L®?D}Û_*ù@«ÝpØÚ§@«ºùÃ/=é?NMÿ?A³?b€‰35ê?šun«”'2?»7%@ +“Z@ŸdF¡:þg@2@¨+…¸R@¨{#@¨+…¸R@¨&•Ê8X@¨+…¸R@¨')n“@¨+…¸R@¨%º°õ@¨+…¸R@¨ +̯Q@¨+…¸R@¨$[ŸÚ@˜óvÈ´9X@˜ðÿ;?F|@˜óvÈ´9X@˜óyâ–„@˜óvÈ´9X@˜ó~°é€;@˜óvÈ´9X@˜óxiagØ@˜óvÈ´9X@˜óoäÓ@˜óvÈ´9X@˜ónÇ~y@8ÞHè§ç@7ã/è¦>m@3W+ Iº@3SÁ<¸Ñû@2éÛ"Ðå`@2äð“Fªj@2hè§æ›@2_JrêÎz@2hè§æ›@2WlêgŸ@2hè§æ›@2^ùïÑK?ä¦ÂFæ?ÁEê `?”·¯ZZ/?”M2êñæ?¨Ë„Ve*?›hÆSG?î·¬µ8ˆc?“Ž¿Ñà™f?“¦:s +íÊ?›+¹ï< ?¤ž¨ß}]?œ¸pD³D?õ›4<ý?êö‰°wú?ˆ¿ñ:[ì?‘µÓƒÀÏ?žAVøq[?‘EH ~ +@@(@*@,@8@6?ð?ð?ð?ð?ð?ð¿yw¿fz@¿]S’×À?v:ö΄?p5·§ð:@¨?‘Κ@˜ós!_'ò?‡=CIJ–?€…‰¦œ§?ñVìj­T8?Û¢‚Ãë+@Ÿró¦,­W@3@£õ?|í‘@£õ?|í‘@£õ?|í‘@£õfÏAò@£õ?|í‘@£ñÄ2ÊX@£õ?|í‘@£ù k¹@£õ?|í‘@£íjO@£õ?|í‘@£î¾ß¤@@¨cáÊÀƒ@¨cãS÷ÎÙ@¨cáÊÀƒ@¨cçl‹C•@¨cáÊÀƒ@¨cæ$Ý/@¨cáÊÀƒ@¨cã× +=q@¨cáÊÀƒ@¨câëC-@¨cáÊÀƒ@¨cá [À@4” xFÜ@4“¢œwšl@0®5?|í‘@0°¾ í(Œ@06§ï²-@09k¹Œ~(@/½Vlô"@/Á:’£T@/½Vlô"@/¹³Ð|„¶@/½Vlô"@/¸FÜ]d?€‚ñêã ?jÝ‚È?‘WßÈDö@?U›=ÈK?“>û{Ñø~?’ŒZzˆZ”?€‚ñêã ?’áÄïÃõ?‘8“‡«G?‘!¥zt9Û?“m^÷´?‘ éñ^?ƒ~¨õ/¥M?Ž•ýÙ—±?‡»¢Øˆ‹?†k3`E`-?‘  ¶‚3?’Ž<Dxƒ@@@@@*@"?ð?ð?ð?ð?ð?ð¿Rd/ïÄ¿1õtˆ€?QÈÑ*_†®?+Íü•S-@£ógˆ·4@¨câÜA?qЉkÁì•?LX­õrÖª?êÞÀ¦X[? û„©0ˆ@Ÿg:o¨™C@4@©b« Iº@©b°£× +=@©b« Iº@©b¶lô!@©b« Iº@©b³ê³g @©b« Iº@©bÒGE8ï@©b« Iº@©b…‡“ݘ@©b« Iº@©bº–¼@¦ÝZ¬1@¦ÝZ^5?}@¦ÝZ¬1@¦ÝX -à@¦ÝZ¬1@¦Ýa@N¦@¦ÝZ¬1@¦Ý4Ö¡b@¦ÝZ¬1@¦ÝŠ Þ@¦ÝZ¬1@¦Üü„µÜÆ@7‡>«6z@7ƒŽóMj@4æ‡+ J@5 'RT`@4ÐA‰7KÇ@5aä÷eþ@4:Ô,<ží@4¥Éã½@4:Ô,<ží@4ùÎ_oÒ@4:Ô,<ží@4ÈK]Ìcò?Œs¤DÅÐ?­gžóÉ?¯qÏ}è ?•ƒäôKwö?ÉW±çOrÙ?ÁMȳYh‚?„F/·ÿP5?¶2MÄ®î?²vux"ÕE?™Ç“y”[½?ƨuf +?ÉÓ‰‚?™“ÇÙ¸?°˜­á=­?§C9«ã?ÀY 0–™?Ôý >"Q?Ó!7Ù~.W@@@@@*@,?ð?ð?ð?ð?ð?ð?†É û¿›ît²€?nÁ7’5R?dôÕòÇØ@©b¾Ÿ)œ@¦Ý9{õ‚?ƒÚŸ‰\í?y¥Íÿ´š?õ*† ¢\?à×yü±@Ÿ_Os§² @5@«úáG®@«úáG®@«úáG®@«ûdZ¬@«úáG®@«û‹¬q @«úáG®@«û‹¬q @«úáG®@«úîcŠ@«úáG®@«ú…‡“Ý@®$:áG®@®$;¥ãSù@®$:áG®@®$;˜Çâƒ@®$:áG®@®$;W>«6@®$:áG®@®$;‹¬q @®$:áG®@®$<(õÂ@®$:áG®@®$:Cþ\’@5­¥œàv@5­Ùb¶®@0ý‘hr° @0ý¿HË’@/XÔýó¶F@/XÇâ‚@¸@.£¼ÓZ…ˆ@.¤ xFÜ@.£¼ÓZ…ˆ@.£¼ÓZ…‰@.£¼ÓZ…ˆ@.¤“t¼j?}Ñ¿ž,?õ¹Ëh?‘ÌË>¯f?‹×lÇ…N9?‘çG¸?ß-tT?|öOÿÝ?’NÛˆV(?«'Q™µ?K·‘d]?üÓqÔNŠ?lINõÕ„?ƒ¡É^&Ö?ŒÖ +ÄȲ?‚¸“Îè ø?‚ù8 ±^?†©b/bJö?†Óß +tõ@@@@@&@$?ð?ð?ð?ð?ð?ð>¥5E ¿ }søÀ?\pnìÀ?%FŽcCç@«úõeÙ1@®$;luTÞ?<46#?E{#}Ï?„þSQ¾ëƒ?—µùÐÜ2@Ÿgãœä@6@¯ý6E¡ÊÁ@¯ý5Â\)@¯ý6E¡ÊÁ@¯ýG{þ@¯ý6E¡ÊÁ@¯ýK¯I+@¯ý6E¡ÊÁ@¯ýcêO÷@¯ý6E¡ÊÁ@¯ýfÊO@¯ý6E¡ÊÁ@¯ýdñli@˜Yçl‹C–@˜YéxÔýô@˜Yçl‹C–@˜YáPÉYa@˜Yçl‹C–@˜Yò9@˜Yçl‹C–@˜Y÷¶Þ‡`@˜Yçl‹C–@˜YïèQ­@˜Yçl‹C–@˜Yöa%@6Q|ÚQ@6RÀƒn˜@3ÇÎÙ‡+@3Ì®@RÏ’@3®ùÛ"Ðå@3ª™ÙƒuH@3ÚQÎ@3‡e¤Á@3ÚQÎ@3þ‘~‘Á@3ÚQÎ@3…ðžä?|¬h2:“?“"i!¦¨?”¶zðB"?—.)/­I?§ Éîò–¬?ªC .½?€Ã{s°úi?”tð”»,?“TÂmÕœ?’oh˜¹$?“¿k¡‡±‚?›à.jd·Y?ƒ²üQå€?ŽŸ¡áÉŒ±?‚«s¼r•?…%ÇbÈœ?Ž“:9³Â‚?+[+ +â~@@*@(@$@:@:?ð?ð?ð?ð?ð?ð?‹ò›•?VÊOé?e,*Ã;Ž?D.H ©Ø@¯ýK|S¼Ò@˜Yî,û=X?€…nÁ4sT?a¡èl~8Ë?öAŽwô*?ÈúŸ¹Þþ@Ÿb%Æ÷Ÿî@7@§ÇKC•@§Çu?|í‘@§ÇKC•@§ÇKƧïž@§ÇKC•@§ÇH´9X@§ÇKC•@§ÇKC•@§ÇKC•@§ÇIûçl‹@§ÇKC•@§ÇKƧïž@¯ ŽÙ‡+@¯ ¬1&é@¯ ŽÙ‡+@¯ å`Aˆ@¯ ŽÙ‡+@¯ ²-@¯ ŽÙ‡+@¯ úCþ\@¯ ŽÙ‡+@¯ ²-@¯ ŽÙ‡+@¯ bMÒò@9¹Œ~($@9 ¿HË’@1©‡+ @1¨ -à @0ƒt¼j~ú@0ƒn—P@/ÑÑN;Í6@/Ñ·Xâ@/ÑÑN;Í6@/ÒÊW§†Ã@/ÑÑN;Í6@/Ó àÞÒ‰?ÈÙ þT?ß‹’bÏ?‘Ûü†Nã?‹ó#ƒt£?éDEâ©×?±ŒR°?¸!q Ý?’‡Iš÷?€s8rÅ?9ÍÇ~FÀ?ÏtP°*?H, +r_? ânIð?ŒÐ¤Âÿê?‚† SFò?ƒ!Ë *(?†¼Š˜L¥÷?‡×7°º@@@@@@?ð?ð?ð?ð?ð?ð¿.´†/À¿Gç<à?Wè 칸?`áö§<«@§ÇK"Ì¡ˆ@¯ šA|:?føšŒ_Ë?pëàhú»‰?ÉÑ ˆº×?ÙWß÷÷@Ÿrºï Þ¥@8@§j£× +=q@§j‘ë…¸@§j£× +=q@§j¯hÛŒ@§j£× +=q@§j¡ÊÀƒ@§j£× +=q@§j¨r° Ä@§j£× +=q@§j§æšÔ@§j£× +=q@§j¥8ï4×@®Û?|í‘h@®Û<í‘hs@®Û?|í‘h@®Û:¹õYµ@®Û?|í‘h@®ÛD2ÊW©@®Û?|í‘h@®ÛB&€I@®Û?|í‘h@®ÛCFÜ]d@®Û?|í‘h@®ÛGï².@9Q|ÚQ@9AN;Í5¨@4|í‘hr@4 è>BZî@3—ï²-@3’Ðå`A‰@2æYJôðØ@2â¶®}Vm@2æYJôðØ@2ã9Àëíú@2æYJôðØ@2äêJŒ?ð°–Ž]?’Mj…•Ì‘?™%LÑ”Ô?‘ÔþÆvI‡?”] +° ?’ŒZzˆZ”?ð°–Ž]?”V ìi!¾?¤`á1Bí(?’„÷ò¸?”*v7¹¿?’vMëôUu?ð*wjs—?’žÿ§:­?‡9Â@0wç?ˆÝíá‰?ŒXk-¯‚7?Œúq‘?ð@@@@@?ð?ð?ð?ð?ð?ð¿Vk‰Ùb?cÿ#c?0íÃüíË?Gm9šV'Ý@§j¦ó%²P@®ÛDs³íä?@(¯ãz :?V-˜¬ð{?q­ýí¥€? Ufî–3@Ÿs»Þ¼’@9@§x«…¸R@§x¬Iº^4@§x«…¸R@§x­í(Œç@§x«…¸R@§x¬¿±[W@§x«…¸R@§xª0U2a@§x«…¸R@§x®V“@§x«…¸R@§x¯ƒ{J#@ª º^5?@ªŒù™™™š@ª º^5?@ª xFÛ@ª º^5?@ª «ŸU›@ª º^5?@ª¸ºÇ@ª º^5?@ª + Þ@ª º^5?@ª;Í5¨@97â‚@·€@9(1&éxÕ@3ÇÎÙ‡+@3Åsê³g @2ûƧï²@2úÇË)_@2œÚQÎ@2šQÎ`@2œÚQÎ@2›"Ðå`B@2œÚQÎ@2šçÕfÏB?¾„CÚ–•F?•tæïá,•?”ñ-a} ?ŒôƒA˜c ?’Æ÷Xê†?•½0 +Žø?±>ÏÅósN?”&OÖýæï?—>4ôgŒ9?‘Ò–¬q?’˜£“µ~Ð?“X<‡÷Ú?³iû÷òx.?êzŽx?‡9Â@0wç?Šˆ€!B®?Œ8¸wx¯?޹Þwò,@@@@@*@*?ð?ð?ð?ð?ð?ð?bv2Lú?mJîé?C` Ð3.‹?;Ø><ëU@§x¬¤éc÷@ª "¦?R™÷Õrüê?N}„Ãïë?›róG¸?±êý¥fJ@Ÿq 4ÓÛd@:@§3{çl‹D@§3|j~ùÚ@§3{çl‹D@§3t‡ü¹$@§3{çl‹D@§3y k¹Œ@§3{çl‹D@§3wsüP@§3{çl‹D@§3*Àƒn@§3{çl‹D@§3fÜ]c‰@¡ J=p£×@¡ NzáI@¡ J=p£×@¡ L¿±[W@¡ J=p£×@¡ D xG@¡ J=p£×@¡ Iûçl‹@¡ J=p£×@¡ '†Â&@¡ J=p£×@¡ 2-V@6įO „M@6ȧæšÔ@4sS÷ÎÙ@4v$Ý/ @3ìj~ùÛ#@3è­«ŸU›@3Š0U2a|@3‹ûµsë@3Š0U2a|@3n«6z‘@3Š0U2a|@3u8ï4Ö¢?ˆÿÀ)T¿Æ?ŸoÝ ÷6}?¨¬âö'?’m’‹}©9?Á³jâräz?¢Ø@<š˜*?|öOÿÝ?&”ðÚ˜?°Œ“ ¹‡?–sZ -™ø?¹ƒ:ýw±?°V Õy?³&Ô,ô?Ÿß‹’bÏ?ªÞUWºci?”AXÄ|åy?´kJÂJ¥¶?µ'˜ÒD@@@@@*@ ?ð?ð?ð?ð?ð?ð¿m@Qjö¿k cj?c”˜Y¶=‚?_ºj#@§3wå·qš@¡ Ipí]ˆ?B=âé^?vos=Òb?ò¶Êe½¢ê?áa.ãŽÛ@Ÿa\‹øEÂ@;@¡w•%@¡w‰7KÈ@¡w•%@¡wSœ¾à@¡w•%@¡xʳg ù@¡w•%@¡vþ5?|î@¡w•%@¡vÿoÒô@¡w•%@¡vþOv_Ù@©àÄ›¥ã@©àÄ›¥ä@©àÄ›¥ã@©ÌIº^5@©àÄ›¥ã@©ÔmÅÖ9@©àÄ›¥ã@©ã•%@©àÄ›¥ã@©Û=ÈK@©àÄ›¥ã@©ÛdZ«@7Î쿱[X@7ÍÅÖ8†Z@3©‡+ @3ã,¥zxl@2â-V@3ÍÈK]Ì@2+xFÜ^@2&L/ƒ{J@2+xFÜ^@2+ûµsë@2+xFÜ^@2+)^ž ?…ÅBðrç?µ‡:úÎ ?ϰ.¶48?Ž £Ú?”˜Ié‚%5?’€ú¤ˆ4 ?›’qvš°•?’7Îf¬ps?Â:–Ád¯¢?“AúìÊ„?” E®!—?“{P»á?¨še ?‘D‡>S9?¿¹²Çò?¨Æ# +3/g?ˆÔÞÑ—æJ?гá‡}@@@@@(@&?ð?ð?ð?ð?ð?ð¿F¬Yм¿Z¸?1–,ñWë?SB#No@¡vÿ>@ÙX@©ßP?RÊp‰áh?o¦©}PÌ?¤£œ¢Yžr?Ñš¬ªƒ±ò@ŸlßßèG‘@<@ Æ‰7KÇ@ Æ‰7KÇ@ Æ‰7KÇ@ Æ„-BH@ Æ‰7KÇ@ Æeðõ¡@ Æ‰7KÇ@ Æ? h@ Æ‰7KÇ@ ÆÃãÖ@ Æ‰7KÇ@ Æ[“@©Iñ©ûçm@©Iñª¢Ú@©Iñ©ûçm@©IñªFbü@©Iñ©ûçm@©IñÞSX+@©Iñ©ûçm@©IòYù7þ@©Iñ©ûçm@©Iò"S·)@©Iñ©ûçm@©Iñèáœ@3?–»˜È@3?x5›Ã@@0Œí‘hr°@0åã12@0“t¼j@0l"h Ô@.½Vlô"@.½–ÉV6@.½Vlô"@.½½DFô@.½Vlô"@.½¨½# ž?}@T˜ÁÎ¥?Ä @þ¿ ?‘"®šñÅ?‹ªtš§þ€?ô0 ¼¢s?È®`e˜ú?|¬Æ Væ?’Ï Ó«I?‘8ο?/ÌÔSϵ?ÞW#&-¿?\Ûüøî–?‚pDøïRg?Œ²ßÛ’f?‚–Ë)¬j?‚ìf GA?†—¤ž[w?†“‚I—²@@$@*@(@7@5?ð?ð?ð?ð?ð?ð¿þÔ[?¨t£À?<äf׎»?t—Q0Ûß@ Æ¾{´@©Iñéµ¢?\¸2¦³³w?0ǵée8?ÆGmj‰· ?mj¹ Þ@Ÿg´r™@=@­ˆ´9X@­•$Ý@­ˆ´9X@­ˆÁTɆ@­ˆ´9X@­ˆõÂ\@­ˆ´9X@­Œ/ƒ{J@­ˆ´9X@­ˆÁTɆ@­ˆ´9X@­ŠdÂø7@­£Ã•%@­£Ë…¸Q@­£Ã•%@­£ËÓÃa@­£Ã•%@­£Èð@­£Ã•%@­£ÇRT`«@­£Ã•%@­£Ã{J#;@­£Ã•%@­£Ãa@N@8šÔ,<Ÿ@8ÞѸ@3pÄ›¥ãT@3oŠ Þ@2ˆ“t¼j@2†ö”Fs‚@1Ì¿±[W?@1Ê6âëD@1Ì¿±[W?@1Î쿱[X@1Ì¿±[W?@1Ï–»˜È?}Ñ¿ž,?”"¶²'Ýþ?’Gßk;m?‘sNX„êÒ?“XMHñëž?’IåŠú?гá‡}?›ªÊît…?‘Ç€˜­r?“ ç¥Íç&?’.<ù?’j“O’I?„ò—TËÃ?•ÙK°FÑ?ˆìûIèpÝ"Á<Ô?+?wllé™@­ŽªÊJ@­£Ç.„Ù?`€eÐ}w?JúŽŠÄ¾­?Äô·€Û©¯?”ÖpmRÏð@Ÿig¹²@>@¯>‡+ @¯>“t¼i@¯>‡+ @¯>b¶®}@¯>‡+ @¯>ÇË(@¯>‡+ @¯>!ÊÀƒ@¯>‡+ @¯>záG®@¯>‡+ @¯>5?|ï@¨Ä“t¼@¨Ƨï²@¨Ä“t¼@¨Ïß;dZ@¨Ä“t¼@¨ËC,¦@¨Ä“t¼@¨Ï4Ö¡b@¨Ä“t¼@¨ÅãS÷Ð@¨Ä“t¼@¨ÚkP°ò@2T xFÜ@2Z…‡“ݘ@/²-V@/„g8}¿@/*Àƒn˜@/"@·€4n@/Bu%F +§@/7ö+jçÖ@/Bu%F +§@/DÂø7´£@/Bu%F +§@/1&éxÔþ?É^žQ5P‚?“Ž3ò1p?”Uy*ž¬ˆ?ˆAᆽÃí?‡¯½.SM?гá‡}?qÂ' +Bœ@@@@@,@&?ð?ð?ð?ð?ð?ð¿cfÑJô?l‰'H +?qZõ¶dÿ?xßlŒoø@¯>›;׫@¨Í̉F9?)u h÷j?…Åp:¯ú@?íJãõ½ç?ù‹Až ëY@Ÿrågƒ<@?@©ìë…¸@©ìÈ´9W@©ìë…¸@©ìn—O@©ìë…¸@©ìzáG®@©ìë…¸@©ì×sý@©ìë…¸@©ìN;Í6@©ìë…¸@©ìÄ2ÊX@®ãF§ï²@®ãHr° Å@®ãF§ï²@®ãDg8~@®ãF§ï²@®ãG®zá@®ãF§ï²@®ãG“Ý—ö@®ãF§ï²@®ãEðoiD@®ãF§ï²@®ãFÂ&€@7zqÞi­C@7xÁTÉ…ð@1Ô›¥ãSø@1ÔêJŒ@0¤¼j~ùÛ@0¤Âø7´¢@0Vý!ÿ.I@0W +=p£Ø@0Vý!ÿ.I@0WË)^ž@0Vý!ÿ.I@0WsüPI?‡YÍ_?•ìspîî?‘Ûü†Nã?‹ÝÉ!ë#?‘#6‰¥_?‘C!ƒžÈ?”¼íÒh??’CòO…?Œqç©Fü?siÅqe?ñ«Ý„ Õ?ó‹P=´?ŸÇKÆ‹?Œþ%å_D?‚oÁÆÜ§÷?ƒ!Ë *(?‡L8õASÎ?†©b/bJö@@@@@@?ð?ð?ð?ð?ð?ð¿S+†¿<6ûx?,ôág÷0?+ )Má³@©ì0Û@®ãG0á$?L©VCë?FÉó”ò…?œÜóÐøû?ŠO n©ç>@ŸlX|Ôƒ@@@¦¥bÐå`B@¦¥dÝ/ @¦¥bÐå`B@¦¥eœàv@¦¥bÐå`B@¦¥`hÛ‹¬@¦¥bÐå`B@¦¥bMÒñ©@¦¥bÐå`B@¦¥`ëíúD@¦¥bÐå`B@¦¥c,¥zx@ jàA‰7L@ jæffff@ jàA‰7L@ jÜ„µÜÆ@ jàA‰7L@ jÞ í(Œ@ jàA‰7L@ jÞÒˆÎp@ jàA‰7L@ jÞ\‘ÑN@ jàA‰7L@ jÝÈK^@6ÞHè§æ@6ÜÆ?@2° Ä›¦@2Ä?åÉ@2“t¼@2ýŠÚ¹õ@1ò䎊r@1‚{²þÅn@1ò䎊r@1‚ Iº^6@1ò䎊r@1ÿ.Hè§?ð°–Ž]?­hX™*?‘£Ä›è?Wø0 ¥?‘PÊÑ<Ým?‘•S‚üJ?ð°–Ž]?“£PuòN?ˆ9²0?‘.“¥?‘x9ξÞO?‘ÔÄ÷Õ?ð*wjs—?vùv“?‚ù…žÄ`x?„l¯¸‰ŒÎ?ˆ +¿„r©Ý?†ùadô|?ð@@@@(@&?ð?ð?ð?ð?ð?ð?-„ã’È¿H«ËÐÔ?DRwûö0?*˜ ¬…ø@¦¥b)ò¬@ jÞÀ´é?S4ïQÆá??8Ð×íѬ? jO¹ÀiŠ?f¶šäaf@Ÿs].²G@A@­;…¡ÊÀƒ@­;ŽV“@­;…¡ÊÀƒ@­:JÀƒp@­;…¡ÊÀƒ@­:Næ1ø¡@­;…¡ÊÀƒ@­;;dZ@­;…¡ÊÀƒ@­;Vlô @­;…¡ÊÀƒ@­;V®}Vn@ŸßÀƒn˜@ŸßØ“t¼j@ŸßÀƒn˜@Ÿß‡®zá@ŸßÀƒn˜@ŸÝï4Ö¡b@ŸßÀƒn˜@Ÿß–8†YK@ŸßÀƒn˜@Ÿß3œ¾â@ŸßÀƒn˜@ŸßäÝ/ @8£g ù l@8¢GE8ï5@4#÷ÎÙ‡@3­V“@3Ðå`A‰@2µ8ï4Ö¢@1Þ«6z‘@1¥ãS÷ÎÚ@1Þ«6z‘@1¯v_Ø­¬@1Þ«6z‘@1µzxl"h?®í©@Šþ?ÙÒ."Õ$?à×*;k|?¥‘¢Ñ4À?¸ö*©U¯ +? 1\*]Á?˜ž^ƒÿ*ˆ?ÛGæ²0ÓÎ?æ‹ó®AÇD?¯,lBQÆF?¶c92åMò?¦kxÜ““?œ^:Òe?¾ef×l+?¶ͰöÐ{?µðE@Rsi?«íy#œ®?˜/QBu @@@@@ @*?ð?ð?ð?ð?ð?ð¿t ™±¿cy¦Â?Ž}´ãÄm?{â ùFy'@­;N™¥OX@ŸßÅUøó?«\˜B^4ë?¡4â´Ë@#[òÖ­c@»F+ÌF@ŸlK{éAÔ@B@ŸIRñ©ûç@ŸID“t¼@ŸIRñ©ûç@ŸIV®(,@ŸIRñ©ûç@ŸIScË+@ŸIRñ©ûç@ŸIQqî59@ŸIRñ©ûç@ŸIVo½ @ŸIRñ©ûç@ŸIV +;b^@§ö•%@§ö•%@§ö•%@§öß +îÇ@§ö•%@§ö¶É@@§ö•%@§ö +d––s@§ö•%@§ö“®@§ö•%@§öñA¸r@7¨†YJôñ@7ªÙ¹]„@2sS÷ÎÙ@2vl­Ò9@1@å`A‰7@1B»LÆÑu@0ýcˆe”°@1ÈçĨ@0ýcˆe”°@1 èS©2@0ýcˆe”°@1O®:ù?ƒ_ÿKt˜à?¦a]MmÒ?‘ÍÔVÂi?Œû“äÀW?‘ÝëèÎ?’*Í«[?‡‡á´WÉ?“¨f{¯?‹¬tK±»?‘@EK¶?Þÿð‚>ú?‘-g³½fQ?ƒCgE ?ŒÊ=U +3¤?…?iAÊAþ?‚æÅÙêÿì?ˆÂ_ÑPV ?‰LµQÏ9@@$@ @ @3@7?ð?ð?ð?ð?ð?ð?`ü9' ?¦ø$à?2ÇhÅ{êW?PmÊév @ŸINð(X@§öþ!TJ?Rƽëa—E?p`eo Y?«§Ü¹]ª?â‚+Ø" @Ÿir#:êò@C@§gWOß;@§gNzáI@§gWOß;@§gU%F +¦@§gWOß;@§gUÜÆ?@§gWOß;@§gU*™1@§gWOß;@§gT¼j~ù@§gWOß;@§gS3333@©»(õÂ\@©»&ffff@©»(õÂ\@©»/'»/ì@©»(õÂ\@©»,‹C•@©»(õÂ\@©»%Éã@©»(õÂ\@©»&¸ºÈ@©»(õÂ\@©»* Þ@7åöý!ÿ.@7ælô!-@33S÷ÎÙ@34mÅÖ8†@2lj~ùÛ#@2j…‡“ݘ@1ÿò䎊r@2‰ 'RT@1ÿò䎊r@1ÿHË’:@1ÿò䎊r@1ý‘hr°!?|öOÿÝ?×s·IÓ?’,³Zêª?Ú¾ÉÛ²º?’š'†­`í?’ß5H>d#?‘]Ë™$ë>?–.¨ÿ\?”ïœ`µPŽ?ƒúʳ_Ä?…®×__C?‡Ä­‹›Ü?‰]³ß’Ý@@@@@*@*?ð?ð?ð?ð?ð?ð?X±‡—?;*¨?A_ޝÞVÂ?6P ŠÐÇ}@§gQ”²¤¿@©»'ò?aÇÇI?V”¸°u?Ì3èz‘?¸#ÐO̸^@Ÿf{v8®N@D@§3A‰7KÇ@§3AÊÀƒ@§3A‰7KÇ@§3B¶®}U@§3A‰7KÇ@§3B\(ö@§3A‰7KÇ@§3B\(÷@§3A‰7KÇ@§3@hÛ‹¬@§3A‰7KÇ@§3@[À7@¤yŸ¾vÉ@¤yŸ¾vÉ@¤yŸ¾vÉ@¤yQÎ@¤yŸ¾vÉ@¤yJ#9À@¤yŸ¾vÉ@¤yÇË)@¤yŸ¾vÉ@¤yû~‘@¤yŸ¾vÉ@¤yáG®@0ÞHè§æ@0ÞOv_Ø­@+`A‰7K@+m\ú¬Ù@*rn—Oß@*r{²þÅm@)õ¨Xy=Ú@)õ¨Xy=Ú@)õ¨Xy=Ú@)õÂ\(ö@)õ¨Xy=Ú@)õÂ\(ö?Ébª¸'Ñf?Òç{íj?‘!!Ø×‹7?‹¹GüÞõ?÷6r In?·t¤¢‚J?ÐbMçê_x?’¼  g¶?ˆ9²0?@§[*^?Ø¥²À<(?]#ÍìO¤?€bMÕky?Œ­·Ž~('?‚s@ˆaÛ?‚éXëLL÷?†‰Oú|q?†ŠúЀ>(@@@@@,@,?ð?ð?ð?ð?ð?ð¿Pmöo? +vXWÐ?4ºã½°M? +FŽùxž@§3AC¬}@¤yß#é¨?CL´;Š?ž?Ús<ã¢k?‚BÑÍe(ò?*÷JI¬r~@ŸsÝv†@E@ŸA« Iº@ŸA« Iº@ŸA« Iº@ŸA¯—¥q@ŸA« Iº@ŸAºV7‚@ŸA« Iº@ŸA¹Wõ +/@ŸA« Iº@ŸA­Mßh@ŸA« Iº@ŸAªpŸ ,@ª D“t¼@ª C,ÌZ@ª D“t¼@ª Gý@@ª D“t¼@ª FšzÊ@ª D“t¼@ª Eöº!@ª D“t¼@ª J…bƒ@ª D“t¼@ª OÆE2P@6¯O „M@6cúlr@3{ Iº^@3~R'HÏ@3Z~ùÛ"Ñ@3YLCZ%õ@2‚@·€5@2Ãä‡$²ô@2‚@·€5@2ÄØB$*2@2‚@·€5@2úm’^?~ì“?ÕÒJ?'XtM,È?‘œ$Oªní?‹¦ädá?‘‚(¥B?’ÿÚ»ý ?e™”XWø?’bãsÊâí?Œfuw©?Q’Ý蹟?“= pô*?“-Þå?¡‡?†³Di¿?Œµ¤!„??Œð”÷<½€?…Ê|ƒÜº˜?‹1«[Ü*?‰èHIy:H@@ @"@"@4@5?ð?ð?ð?ð?ð?ð?AwÏXà?aW| +?P:<¹Ýá??÷(ô7@ŸA®§¦"(@ª Go¹ó?oRw”~ª2?_æ§! Ú?çúsÅ™Õ?ÅœjÍW<@ŸfÄZó/D@F@®ÖÄ“t¼@®ÖÅ¡ÊÀƒ@®ÖÄ“t¼@®ÖĨÁTË@®ÖÄ“t¼@®ÖÄ÷eý‹@®ÖÄ“t¼@®ÖÅ8ï4Ø@®ÖÄ“t¼@®ÖÃ,¥zx@®ÖÄ“t¼Á.„€@«¸Që…@«¸“t¼j@«¸Që…@«¹ k¹Œ@«¸Që…@«¸†YJõ@«¸Që…@«ºáG®@«¸Që…@«¶E¡ÊÁ@«¸Që…Á.„€@2G>«6z@2D•*™1@0³S÷ÎÙ@0²©“ àÞ@0å`A‰7@0‰ 'RT@/Öð¸»@/Ö4êK@/Öð¸»@/Ø­«ŸU@/Öð¸»Á.„NÜC,¥?É^žQ5P‚?dYûë„{?’,³Zêª?ŒGZ0eê;?‘ñ•/m£{@8Ù?ÐbV‡,?”V ìi!¾?‘}7ˆ.Ñ?ø,~[´?’we °÷¬@8û—?‚i ú?¨,?ލf†)"?„›‹ÖO?…”rsw?ŒC ãSG@8 Ø@@@@@*?ð?ð?ð?ð?ðøøøøøøøøøøøøG@£+ J@£1&éy@£+ J@£’{²þÅ@£+ J@£éá°Š@£+ J@£X_ö”@£+ JÁ.„€@£+ JÁ.„€@ 6;dZ¬@ 6@@ 6;dZ¬@ 6M(Œç@ 6;dZ¬@ 60 Ä›¦@ 6;dZ¬@ 6ÑA [À@ 6;dZ¬Á.„€@ 6;dZ¬Á.„€@1òÃÉîËû@1ï—$tS@0‡ÎÙ‡+@0ã¶E¡ÊÀ@/¿;dZ¬@/ÖâëC,@/¸7´¢3œ@/8“t¼j@/¸7´¢3œÁ.„NÜC,¥@/¸7´¢3œÁ.„NÜC,¥?ðO­W¬ÃÆ?ÆO'q|õù?žG)ñ†Ü?ÒónxŠˆ@8Iç@8Ù?ð„ƒ;0?Ã’Â7•=œ?Ÿª3’®ý?ÐæÛ!ü¢@8S@8û—?ð!̃?Ü®©á|\?ˆÌ7^|Â?ÁÞ’7:ʪ@8 Ø@8 Ø?ð@@@?ð?ð?ð?ðøøøøøøøøøøøøH@©³På`A‰Á.„€@©³På`A‰Á.„€@©³På`A‰Á.„€@©³På`A‰Á.„€@©³På`A‰Á.„€@©³På`A‰@©³d%®æ3@’÷Y‡+Á.„€@’÷Y‡+Á.„€@’÷Y‡+Á.„€@’÷Y‡+Á.„€@’÷Y‡+Á.„€@’÷Y‡+@’÷†s×Ü@8Û¹Œ~($Á.„>¤µÜÆ@3’ Iº^5Á.„M‰ûçm@2×ï²-Á.„QnÙ‡@1á:’£SÁ.„NÜC,¥@1á:’£SÁ.„NÜC,¥@1á:’£S@1áë…¸R@8J¨@8#˜@8¾:@8 >+@8Iç?Ÿ‚ ˆÃ@8J¨@8Î÷@8i§@8Å@8S?œâ™:;{ˆ@8p÷@8 * @8p÷@8¶@8 Ø?•XðküÏ@&?ðøøøøøøøøøøøøI@¤Ý/Ÿ¾@¤Þ5?|ï@¤Ý/Ÿ¾@¤ÝæšÔ-@¤Ý/Ÿ¾@¤ÝæšÔ-@¤Ý/Ÿ¾@¤Þžš@¤Ý/Ÿ¾@¤ÛquŽ"@¤Ý/Ÿ¾@¤Û˜Çâ‚@¤æ²-V@¤æ²n—P@¤æ²-V@¤æ²ÊW§‡@¤æ²-V@¤æ°ØDÐ@¤æ²-V@¤æ±Ä2ÊX@¤æ²-V@¤æ²£S&@¤æ²-V@¤æ²äŽŠs@4Q|ÚQ@4Q[W>«6@0‚° Ä›¦@0‚GE8ï4@0]V”@0\C,¥zx@/”`ªdÂù@/“œ¾ß¥@/”`ªdÂù@/”záG®@/”`ªdÂù@/”!-w2?€‚ñêã ?õ¹Ëh?‘RsÈW?‹ÑqÔ@vÿ?‘Dj?¾ƒìÈÁ?|öOÿÝ?’ +‰¸Ì?ÀpMºÅ?@§[*^?‘&”T¦mÂ?b¶­-Óx?‚§W®ê ?ŒÆò/¢äÍ?‚Ÿ JŠÆ?‚ôhBì^?†ÃÛSPã?†Ë¢L1Ù@@@@@,@$?ð?ð?ð?ð?ð?ð¿@7Ô?=GÀ?2¡[°?+ýètî@¤ÝMÑ£@¤æ²vÓ­Û?R{¡á +dM?<Kåt³µ?°äM½?ƒÁGqÍ@Ÿg| kdº@J@ 4¼j~úÁ.„€@ 4¼j~ú@ DüóĈ@ 4¼j~ú@ =ÈÄ¥ @ 4¼j~ú@ X’;yÖ@ 4¼j~ú@ O +‡œp@ 4¼j~ú@ @OvÁØ@›r™™™™šÁ.„€@›r™™™™š@›rž«ƒv¢@›r™™™™š@›rÔû²Ô0@›r™™™™š@›r®ÅÌÎ.@›r™™™™š@›r¹\%ÿÚ@›r™™™™š@›ríͳB @4Y*0U2bÁ.„>¤µÜÆ@0ý‘hr° @0ã’"‚h@0'KƧïž@0õ8@05µsê³h@0 Wš§åª@05µsê³h@0 +saØ@05µsê³h@/þõº +@8J¨?›ø…;‹…??‘¡tpÿš{?“”ÆgoA?•u;ßVží?“ú‚Hö@8J¨? á,ØEæ?|™ŠQHf?‘=Øæ B0?™hã<ÛÛ?˜0T,Ái@8p÷?W9cS­Ò?„•ƒaåm?†Fö,lQo?’EõQxƒÄ?Œ”Þ%·þÒ@:@0@6@?@??ð?ð?ð?ð?ðøøøøøøøøøøøøK@£ËyXbN@£Ë}p£× +@£ËyXbN@£Ëm„M<@£ËyXbN@£Ër-V@£ËyXbN@£Ëy=Ùc@£ËyXbN@£Ë|žì¿±@£ËyXbN@£Ë}Ùb¸@¡HîzáH@¡Hú^5?}@¡HîzáH@¡Hí5¨Xy@¡HîzáH@¡HêÀƒo@¡HîzáH@¡Hò䎊r@¡HîzáH@¡Hó@N¤©@¡HîzáH@¡HöÕϪÎ@6įO „M@6¶lô!.@1}‘hr° @1}Ùb¶®@0Wï²-@0U`A‰7L@.ð‰ 'RU@.îËûµt@.ð‰ 'RU@.öR½<6@.ð‰ 'RU@.ìq ²•ê?…ÅBðrç?•tæïá,•?”^RžpX?ŒR‹w#z?‘,IÝ Áé?’_‘Oo¨Ž?‚á²Olºü?—áZk·×?•ûú·ø¨?£û,Ɇ?‘ ÛÌÏõA?‘1鄽 Ú?Šó¿á§E?’®ã‘\’?‡z"2Úù)?„€ã$V?„å;m7.?qÂ' +Bœ@@@@@@$?ð?ð?ð?ð?ð?ð¿'´tÀ¿T}QžÀ?EEℌ–Û?Gó°ö‚@£Ë|<€‹@¡Hö­[;½?d}<˜ØPÁ?h« žæe:?Ð VFº±À?Ø&úÿ&1@ŸiÛmî@L@¢Ä Òñ©üÁ.„€@¢Ä Òñ©ü@¢ÃáohÜ@¢Ä Òñ©ü@¢Ä Iº^5@¢Ä Òñ©ü@¢ÄëíúD@¢Ä Òñ©ü@¢Ä VÕÏ«@¢Ä Òñ©ü@¢Äp£× +@¥Ä$Ý/ Á.„€@¥Ä$Ý/ @¥Äˆe”¯@¥Ä$Ý/ @¥Ä,‹C•€@¥Ä$Ý/ @¥ÄfÏAó@¥Ä$Ý/ @¥Ä2•éá±@¥Ä$Ý/ @¥Ä1[W>«@8·â‚@·€Á.„>¤µÜÆ@3\Iº^5?@3­ÌcñA @2’Ðå`A‰@2¥¡ÊÀƒ@2O „M@2D2ÊW§‡@2O „M@2®æ1ø¡@2O „M@2"@·€4n@8J¨?À%ß°¸…?žX‹<ìu?¨3íçyà?™7reiü? ¡ì„Ìá˜@8J¨?½FÚËlÉ›?”ÿŒÙÿIí?­×4="Ø ?X2»æÕ$?ž…–½´Ö@8p÷?÷Ýù‰Ÿ¿?—’h…b?¤+|¯Ï4E?´~Äé?œè¢ü V@@@@ @(?ð?ð?ð?ð?ðøøøøøøøøøøøøM@§ Ƨïž@§ ƧïŸ@§ ƧïžÁ.„€@§ ƧïžÁ.„€@§ ƧïžÁ.„€@§ Ƨïž@§øy=Ù~@§ ƧïžÁ.„€@¨/Ÿ¾@¨í‘hs@¨/Ÿ¾Á.„€@¨/Ÿ¾Á.„€@¨/Ÿ¾Á.„€@¨/Ÿ¾@¨#{J#9@¨/Ÿ¾Á.„€@5¿–»˜È@5¿ß;dZ@1» Iº^Á.„M‰ûçm@1š~ùÛ"ÑÁ.„QnÙ‡@0𖻘ÇãÁ.„NÜC,¥@0𖻘Çã@0ê’£S&@0𖻘ÇãÁ.„NÜC,¥?€‚ñêã @8#˜@8¾:@8 >+?ž?=€T^@8Ù?„F/·ÿP5@8Î÷@8i§@8Å?•=ƒ™íx@8û—?‚ù…žÄ`w@8 * @8p÷@8¶?”¼íÒh@@8 Ø@@ ?ð?ðøøøøøøøøøøøøN@£ß·KƧð@£ß«åæ–K@£ß·KƧð@£ß–ù@£ß·KƧð@£ß¦"–îˆ@£ß·KƧð@£ß»«.’@£ß·KƧð@£ß8ï4Ö @£ß·KƧð@£ßYPšIþ@—˜¥ãSø@—˜&fffe@—˜¥ãSø@——ß×ÿµm@—˜¥ãSø@—˜LK÷Lþ@—˜¥ãSø@—˜ó§—@—˜¥ãSø@—˜½¿HÌ@—˜¥ãSø@—˜·0µa@6ÞHè§æ@6¾¿Ã]{.@4GÎÙ‡+@4=]j¢†o@3v§ï²-@3bÙ׃Â@3QÞi­BÄ@3Sùâ÷¾r@3QÞi­BÄ@30oiDg8@3QÞi­BÄ@3%Hˆ­ú?‘ 1˜Ó ?±;¤µÜÆ@3×+ IºÁ.„M‰ûçm@4~ùÛ"ÑÁ.„QnÙ‡@2ÏO „MÁ.„NÜC,¥@2ÏO „MÁ.„NÜC,¥@2ÏO „MÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøP@ iäÝ/ @ iæ$Ý/@ iäÝ/ @ iâòù‡@@ iäÝ/ @ iâýi8ˆ@ iäÝ/ @ iäó¢(@ iäÝ/ @ iä>£Ô(@ iäÝ/ @ iâòf“@¤Ì¸Që…@¤ÌCS÷ÎÙ@¤Ì¸Që…@¤Ì!ˆ%@¤Ì¸Që…@¤Ì+MéÚ‘@¤Ì¸Që…@¤Ì'Ž’>s@¤Ì¸Që…@¤Ì&4¬Ãœ@¤Ì¸Që…@¤Ì'ÌÃ’@8™*0U2b@8ŽŒ“ç˜:@3&‡+ J@3%÷Ff2@2;Ƨï²@29ˆäý¹_@1¦YJôðØ@1¤raÏ¥•@1¦YJôðØ@1¢É5–fÜ@1¦YJôðØ@1¤¡™_?Ÿ>KtAÿ?4Tÿ±N?’¸vô|*f?ŒxL’É€?‘§Jß/ ?‘‘ë^L~õ?ŠÊuq•ú?’] mœ?‘å p â«?‘…x_á½?‘xŸ7m¥#?‘?Ö™DÌQ?¢IÍ‘Q?Žp ž›Ì?†“k° ›¸?ƒÄÑŽf@?ˆÎ#ë&z?ˆ¦^§Ð°~@@ @(@(@5@6?ð?ð?ð?ð?ð?ð¿F@¿zÊ[V€?"z&CJò?\€Ëψ@ iäˆ99-@¤Ì-MÐÏJ?9F\”*\?}{f±pƒ§?nmèQÇj?ø¾;šEAG@Ÿn~Œ5p@Q@¢›èõÂ\@¢›è´9X@¢›èõÂ\@¢›ì‹C•@¢›èõÂ\@¢›êOv@¢›èõÂ\@¢›ï'»/ì@¢›èõÂ\@¢›ìL˜`@¢›èõÂ\@¢›ì˜_÷@ ×H´9X@ ×HõÂ\@ ×H´9X@ ×H1&éy@ ×H´9X@ ×K¬q ³@ ×H´9X@ ×LÌÌÌÍ@ ×H´9X@ ×L‹C•‚@ ×H´9X@ ×KC•@3Ç>«6z@3ÇeýŠÚº@1³S÷ÎÙ@1²{²þÅm@1©Û"Ðå`@1¬àuöý"@1}cˆe”°@1}jOv@1}cˆe”°@1zÀƒn˜@1}cˆe”°@1zŒL˜_?|öOÿÝ?‘¡çL¤?‘ojVrnBZî@4’ Iº^5@4”µÜÆ?@4’Ðå`A‰@4‡8}¿H@4‚@·€5@4êJŒM@4‚@·€5@4—$tS@4‚@·€5Á.„NÜC,¥?š•§q!U? …BÓ÷ ¡?¯&)_?¢Ö +ƒ«Y?µÝ\†¶Ç¿@8Ù?Œs¤DÅÐ?›–ë•ñ^?± ·uå¦?ªZ¯åf?¬B<…ª'­@8û—?…™ï ufÝ?Ÿ ‰$FÓ)?§òÄ U¸?™Á7²1lQ?´WÑÞ1x‹@8 Ø@@@@@*?ð?ð?ð?ð?ðøøøøøøøøøøøøS@¦žú^5?}@¦žønØ¢Ô@¦žú^5?}@¦ŸRº~à@¦žú^5?}@¦Ÿ ¯Ý9@¦žú^5?}@¦ŸÇËP@¦žú^5?}@¦Ÿ\A³2@¦žú^5?}@¦ŸD=F²@™§å`A‰7@™§çl°^@™§å`A‰7@™§õ}T˜¹@™§å`A‰7@™§÷f çÜ@™§å`A‰7@™§ô¿ÔGD@™§å`A‰7@™§èU÷¸Í@™§å`A‰7@™§÷n¼!Ê@6²ÃÉîËû@6´33Ü@2E?|í‘h@2C&g/@y@1ƒt¼j~ú@1|‘è¢@0ÔmÅÖ8†@0ÐUÀÕ‘B@0ÔmÅÖ8†@0Ò5†›“*@0ÔmÅÖ8†@0ËfGˆ)ô?‚Ú¡ËG7â?“ï ;m° ?’שÎå;?|¬Çµƒç9?” %M‡}?’j‚B/™œ?=Àaêk3?“ï)RÆPã?”B³ÔL¼ù?”¿éÂÊ?: O'·m?†³!2â{?†ô ‹LÆ?Š­-•üóè?Œg²p¡ý0@@"@ @"@3@2?ð?ð?ð?ð?ð?ð?g vD?UHÈKð?PžWp´ý(?Hˆ­.œQ@¦žÿxxYU@™§íc¬ø?p>¿BñúÅ?h®Þ]whÀ?äà 5Tøø?ÙÍŠ?ÿˆ@Ÿfõ(¥yï@T@ :ýó¶E¢@ :×ð X©@ :ýó¶E¢@ ;µ[?@ :ýó¶E¢@ ;ñJÅÜ@ :ýó¶E¢@ :üi¦½§@ :ýó¶E¢@ ;}ò̇@ :ýó¶E¢@ ;®†E@®•(õÂ\@®•;²Ìú@®•(õÂ\@®•+"»v@®•(õÂ\@®•.5)jÙ@®•(õÂ\@®•'c3Äj@®•(õÂ\@®•!­« @®•(õÂ\@®•&ù* @8h†YJôñ@8C;p@4!hr° Ä@4#%ÚW@3´“t¼j@3±sÙž]@2£ÉîËû@2¥·¿‚V@2£ÉîËû@2¦Öóhèb@2£ÉîËû@2¦Q!¾ùø?«ìÕMoÃ?Îòc +_È?”ÏY«ž&?õÿâ¢?‘jëŸÜ6Ý?‘X¬ ù‡ã?’àÕÂÎ7½?“0f–?“ç%¤%Þ?”BTV„®?Ø›HúN?“»Hò_³? —J£ó?”ªU’n?‘Ŷ0šlW?‡ƒèÏœ˜?ŠÊ@ i2?‹Û)B¢}@@&@(@,@"@(?ð?ð?ð?ð?ð?ð?x×Ýì@@¿t0XU·?b•O +óÇ?[müL x@ :ýŸ±ò@®•(PÜ·&?ub©'Ü/?yP×㞺 +?â–{-—ŠÔ?ìH;Ò}@ŸpCÒ7@z@U@ E0£× +=@ E0å`Aˆ@ E0£× +=@ E1¯:Ï@ E0£× +=@ E1'®+Ÿ@ E0£× +=@ E2+ìÇ­@ E0£× +=@ E.ŽþÇ@ E0£× +=@ E.uÁµµ@§üíV@§üí‘hr°@§üíV@§üì@¯‹@§üíV@§üì(ŸÐ@§üíV@§üí.Øï@§üíV@§üì<íà]@§üíV@§ü쪗éb@1‚ò䎊@1‚ò䎊@,€A‰7KÆ@,Òòä@+ªÀƒn˜@+ªû“‰¶@*õ¨Xy=Ú@*ôSü÷º@*õ¨Xy=Ú@*ôã¼ÓZ†@*õ¨Xy=Ú@*ô÷2#n?É_¦›ùôä?Ëû–´²R?‘ÛêÊlj?‹¦É¯}?ê˜çŽ?´O×û÷«?ÐbMÝn½?’Îð•§Œ?±vÍþ?-õ4ø¦?ÓJ/51^?Tð`0?€bîF¾§?Œ¬ßâýªr?‚nÚ¨´8Ñ?‚æp²ßÆ?†Š%ip¹-?†ŠYæ­p–@@ @"@ @:@8?ð?ð?ð?ð?ð?ð¿[³‚С¿)T0®p?@ʶ•n¨?*«Ž¾N!1@ E/ýʨú@§üì¯¯Š¡?P%¹"æ,?9= +BVàT?™­#~cyp?kö1'€a@Ÿs]¿Q‰@V@ªìŸ¾vÉ@ªí—Oà@ªìŸ¾vÉ@ªì9XbN@ªìŸ¾vÉ@ªì4•*™@ªìŸ¾vÉ@ªì,‹C•@ªìŸ¾vÉ@ªì*JŒM@ªìŸ¾vÉ@ªì,L˜_@­y®—Oß@­z¦éxÔþ@­y®—Oß@­yãþ\‘Ð@­y®—Oß@­y·§†Â'@­y®—Oß@­y¿!-w3@­y®—Oß@­y¸“t¼j@­y®—Oß@­y¾ÿ—%@8eöý!ÿ.@7Ýw1Å@5žÙ‡+@5¼<žì¿±@4þV“u@5Ñ·Xâ@4&YJôðØ@44%®æ1ù@4&YJôðØ@40å`A‰8@4&YJôðØ@4-ÅÖ8†Z?ìå™'• ?¯Ç0¾!©?£À¹¿1?¥¢‹WÕÜ?§5Ç•÷?š”JpÃT"?ð{ä6O?¬ûjŒ{­–?¥ûS]:°¸?ŸY`òƒë?«/móâ“?ž*“ÀMõL?ðÙ§µü??©¿[¡e'?¢€Âï7ÏÅ?˜$– Ñê?š3 ˜ÔDš?y½¼ŸŽ@@@@@,@(?ð?ð?ð?ð?ð?ð¿CI¡‰²¿Dà›?nl~*€€?k6wÇ…‰n@ªì,$VJÀ@­y¾¶Ù‹?}¾Éíé?|x°›ó?Ï%{c”—8?Ϫ]1I @Ÿtj¦ñ¨°@W@ ËC•@ ÅÀÊ@±@ ËC•@ ÐCó~ª@ ËC•@ Ï’ygz@ ËC•@ Êl~¹¦@ ËC•@ Ê’T3 @ ËC•@ ÊÙ_j˜@©¸œ¬1'@©¸œj~ùÛ@©¸œ¬1'@©¸ÉæK¿@©¸œ¬1'@©¸›':K'@©¸œ¬1'@©¸š  @©¸œ¬1'@©¸›×²@©¸œ¬1'@©¸š*Y$O@7m¥œàv@7hG~#Rè@3B° Ä›¦@3Dí†Bí$@2t“t¼j@2uQ“pŠ­@1n_oÒ @1oFŸ@1n_oÒ @1n+(ô+H@1n_oÒ @1n+kÏþw?Ž\Õl6Ò?’@-ï?U?‘+@8Iç@8Ù?¾lO»x#@8Î÷@8i§@8Å@8S@8û—?Äü8ïä$É@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøZ@¥ÆMÒñ©ü@¥ÆPØ_@¥ÆMÒñ©ü@¥Ç”záG®@¥ÆMÒñ©ü@¥Ç”¼j~ù@¥ÆMÒñ©ü@¥Ç†€IR@¥ÆMÒñ©ü@¥ÆÑ‚©“ @¥ÆMÒñ©ü@¥Æzxl#@›häZ¬@›hæºI<‰@›häZ¬@›i&Á¾@›häZ¬@›iM„M;@›häZ¬@›i“t¼j@›häZ¬@›hì1&ê@›häZ¬@›h×Á½¥@6wâ‚@·€@6vÜ=6›ö@3J^5?|í@3y=Ùb@2Ú~ùÛ"Ñ@2¡4êJŒ@2TmÅÖ8†@2>BZîc@2TmÅÖ8†@2·éùr@2TmÅÖ8†@2xFÜ]d?…ðE[i)?¿h(©O‡¬? Þ‘KOî¦?™ ­:>Co?ºFILòXT?—À °Ø§ ?~Ov_Ø­«?šKËlÖ€?¦² ͉«?¨ÿÛ¦k®Q?¡G÷fx^K?“®°ýYè@?‚ˆóºRÉ?‘ûKá•)†?¢ïJ8ÈŸ?šÿh1oS?Žrø·óæ?Š|)-}í(@@@@@@?ð?ð?ð?ð?ð?ð?{˲N¿K{µ†ð?¦q¥Ÿ,„?ZÞ.ò7©‹@¥ÆtmIæ@›hä^Ûá•?ÅRïF*?z€b^f•ë@‚æËv ?ör´Úúb­@Ÿd!1<@[@£R`A‰7L@£R`Ä›¥ã@£R`A‰7L@£RTÖ¡aå@£R`A‰7L@£RWškP±@£R`A‰7L@£RV_Ø­¬@£R`A‰7L@£Rzu%F@£R`A‰7L@£R¾vÈ´@¢W +=p¤@¢S÷ÎÙ@¢W +=p¤@¢KC,¥@¢W +=p¤@¢P©*0@¢W +=p¤@¢G†Â&@¢W +=p¤@¢wÎÙ‡@¢W +=p¤@¢ohÛŒ@6ºqÞi­C@6º³g ù +@3”›¥ãSø@3¡A [À@3 ²-V@3cŠ @2‘Þi­BÄ@2¤M:’£@2‘Þi­BÄ@2£a@N¥@2‘Þi­BÄ@2¡ø -à?€‚ñêã ?“”üU§<­?£|Á±ûŸ?’ {½4?¡ áãà³?¢û‰˜·‡]?‚á²Olºü?–gÝ3ýø’?—uæË}üI?Œ°1Ù?ªä¬¯kF?œ –sPf¤µÜÆ@3 í‘hr°@2[Cô K@2U`A‰7L@1®Œºµ6@1¸DЩ*@1!9üíÎ@1¸DЩ*@1"8aáÒö@1¸DЩ*@1$£õ_*Y@8J¨?°ò û:ºŽ?ËMži1¬ç?ƦJG?Ì ’Ï×’3?Îí^ùºM”@8J¨?ÌEò¹ÞW¾?Ùìç9‡™V?ØnŒÂY§¤?Óó÷su*o?ß­À%Üß@8p÷?—Ö¢úŸö?‘CJã…"h?•J¨€PÖ?œˆ#÷™©_?¥¹p?Í8>@&@,@,@<@;?ð?ð?ð?ð?ðøøøøøøøøøøøø]@©òdÝ/ @©ò\í‘hs@©òdÝ/ @©òBZîc!@©òdÝ/ @©òñA \@©òdÝ/ @©òSMj@©òdÝ/ @©òca@N@©òdÝ/ @©òkC•@£]­V@£]™Û"Ðå@£]­V@£]½}¿H€@£]­V@£]®p:û@£]­V@£]Á:’£@£]­V@£]¾žš@£]­V@£]¹õY³Ð@8‡>«6z@8}cˆe”°@5œIº^5?@5²-V@4V”@4‰…ðoiD@3ÑÞi­BÄ@3ÅŽ!–R¾@3ÑÞi­BÄ@3ÄtSŽóN@3ÑÞi­BÄ@3Á [À7?–ªÎ­¡?¦Ld{±õ6?·•¡°¯äÚ>?œä%—ëš?žãîôÑU˜?’ã0eʪv?’.p»Cþ? ¨„¨ƒZ?¡â/‡ßü+?Šó¿á§E?”܉a^±‚?—M3§´ ?‰Ò–(?”ø™¾?—ÂÔèÄè@@@@@*@(?ð?ð?ð?ð?ð?ð¿[˜¿v[æ€?Fq¥ö®u%?[ñíl·t@ª—Æï^)‰@¤d<ŠR?eÔÂ;…NÊ?u$ˆŸÅÞ?¹Ŷ ù»?Õ6FV$c‹@ŸjyQè/ @`@§h‰º^5?@§h‰ûçl‹@§h‰º^5?@§h‹C•@§h‰º^5?@§h‹Æ§ï@§h‰º^5?@§hŠ=p£×@§h‰º^5?@§hˆÛ‹¬r@§h‰º^5?@§h‡ÕfÏB@©9©ûçl‹@©9ª~ùÛ#@©9©ûçl‹@©9©º^5?@©9©ûçl‹@©9© 'RT@©9©ûçl‹@©9© 'RT@©9©ûçl‹@©9ª¦L/ƒ@©9©ûçl‹@©9©*0U3@3ý:’£@3üô!-x@0Ô›¥ãSø@0Ô¯O „N@/ÉxÔýó¶@/ÈõÂ\)@0«6z‘@0}Vlô @0«6z‘@0Aò×t@0«6z‘@0Aò×t?|öOÿÝ?¦Ì '?‘G¿yÛ?ï?ŒR‹w#z?‘#6‰¥_?ïˆ6ÏJ?|¬Çëý ?’?Á• ñ:?»Þ‹"è?UÕh;·Å?‘ÞIŸö?sxÙ/T?‚íWçé„?ŒÆò/¢äÍ?‚¯­Ù¤Á¶?ƒR¨º“JÞ?†©b/bJö?‡”_Õ­çW@@@@@,@(?ð?ð?ð?ð?ð?ð¿4h¶(à¿'¨¾¦@?&ÍPDüß?!(K´%¤@§h‰l²ÝÔ@©9ª¨Rp?F³[M.šÈ?Ax4ÇY#©?›Œ}Ø!â?¦X*ö¾l@Ÿfæ v³@a@ª9NV“@ª9MV@ª9NV“@ª9YÎ_q@ª9NV“@ª9?Š Þ@ª9NV“@ª9Kûµt@ª9NV“@ª9UÜÆ?@ª9NV“@ª9WÎÙˆ@ªèÙ‡+@ªèØÔýó¶@ªèÙ‡+@ªèÌ¥zxl@ªèÙ‡+@ªèÎ_oÑ@ªèÙ‡+@ªèÈ1&éz@ªèÙ‡+@ªèϪ͞ƒ@ªèÙ‡+@ªèÌ¿±[X@6µS&Á¾@6¶8†YJõ@3æ‡+ J@3Ã9Àëíú@3²-V@3R¼£n@2ÔmÅÖ8†@2¸Îp:û@2ÔmÅÖ8†@2Ô¯O „M@2ÔmÅÖ8†@2Ò䎊qÞ?„F/·ÿP5?¦2ð¥?·¨÷³±FI?¢º™ÁLŠ?“eð7Õ@?™S:Ъ;5?’Óusÿ\Ã?«z]藍Ð?¾Üœžõ?´lyxƒ?•]ÅvüM ?š>[F»h?ƒ!A +mº¸?”3®èÚ ?“àÕèéa‚? ÁpLµAÑ?”¦”x£b?˜§zy@@@@@@ ?ð?ð?ð?ð?ð?ð?aΫ¿cªÄÄÏ?Aân&ן·?@£E|–ó@ª9RQ¯v@ªèÒ®UÁ?câüØèk?a’ðU:©P?Áo³%Œ7^?°SÉQ0þ@ŸišÉˆ=ä@b@¦Që…¸Á.„€@¦Që…¸@¦Xy=Ù@¦Që…¸@¦Qhr°!@¦Që…¸@¦Y‡+@¦Që…¸@¦UL˜_@¦Që…¸@¦QN;Í6@­× Òñ©üÁ.„€@­× Òñ©ü@­×Îp:û@­× Òñ©ü@­×|„µÝ@­× Òñ©ü@­× ¹Œ~'@­× Òñ©ü@­× ²•éâ@­× Òñ©ü@­× ùrF@8è†YJôñÁ.„>¤µÜÆ@4µãS÷ÎÙ@4·ï²-@41‰7Kƨ@42¶®}Vm@3TmÅÖ8†@3\(õÂ\@3TmÅÖ8†@3ZÔ,<ží@3TmÅÖ8†@3YQ‚©“ @8J¨?•˜Qi{cj?œñ=¼™Õ›?¡ÔZûto?™¼wX¬?›ß‘@rY@8J¨?š¾ˆè ”?œlôU °?–…%j»a?™B°*Z?˜]'ŠÎØY@8p÷?’+0ê­ìT?=Ÿo +F?{ЇÞ?“vuØcʲ?™/ã̽`ª@@@@*@,?ð?ð?ð?ð?ðøøøøøøøøøøøøc@¢^7ÎÙ‡@¢^6È´9X@¢^7ÎÙ‡@¢^0|„µÝ@¢^7ÎÙ‡@¢^$Z¬@¢^7ÎÙ‡@¢^%8ï4×@¢^7ÎÙ‡@¢^#¢œwš@¢^7ÎÙ‡@¢^3 àÞÓ@®pîzáH@®píV@®pîzáH@®pÑë…¹@®pîzáH@®pî±Ä2Ë@®pîzáH@®q$Ý/@®pîzáH@®q*³g ù@®pîzáH@®qîcŠ@7‰Î_oÒ@7‡¯·é@5‡ÎÙ‡+@5¦ +¦L/ƒ@56§ï²-@5St¼j~ú@4‚‚@·€5@4‰Q‚©“ @4‚‚@·€5@4„ohÜ@4‚‚@·€5@4n.±Ä2Ê?€‚ñêã ?—A«ª°×Z?­"à‹åÈÞ?¤×%I _¨?¯QW᎕?¢Ì€¬ím?—¤o„C?›ªÊît…?£Å„œ ¹ô?£_™*ã>?«Å0ì7á\?¢übÉ&‘…?˜èò_?¦ªÎ­¡?³ß"xþ?­O‰Mññy?¥pZ;d?³-oÀä@@@@@*@$?ð?ð?ð?ð?ð?ð¿b¦³(7?…¥$€?\¾tý÷G¥?e/æ~†Q>@¢^1»U»h@®qR— ?} 9Šž‹?…U-wX^/?â/ocÍÿ?éo@<@Ÿfs[¨ñ@d@¦ç\¬1'@¦ç5?|í‘@¦ç\¬1'@¦çо í)@¦ç\¬1'@¦íòn—P@¦ç\¬1'@¦çèr° Å@¦ç\¬1'Á.„€@¦ç\¬1'Á.„€@¦Õ­‘hr°@¦Õ”¼j~ú@¦Õ­‘hr°@¦ÕÔ!-w@¦Õ­‘hr°@¦Ó²-V@¦Õ­‘hr°@¦ØO–»™@¦Õ­‘hr°Á.„€@¦Õ­‘hr°Á.„€@8åöý!ÿ.@8Þ.±Ä2Ê@4|í‘hr@35ðoiDg@3È“t¼j@2Í‘hr°!@2ó&Á½¥@2DµÜÆ?@2ó&Á½¥Á.„NÜC,¥@2ó&Á½¥Á.„NÜC,¥?³‰ÑpEIt?àÒÄ©ßaö@åx¾Ë–?Û9ü¸1GÁ@8Iç@8Ù?ºmÇXÿÖ?Ùókbû?ïm e\£?Ûû &Þ÷@8S@8û—?¿d¹ÖÏû?ªî —[b?ßËDø;?¶ôõÝiä,@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøøe@­‹C•@­|í‘hs@­‹C•@­”Ö¡aå@­‹C•@­˜bMÓ@­‹C•@­žƒä&@­‹C•@­”É…ðn@­‹C•@­“ÃaA@¤ÙvÈ´9X@¤Ù‡ï²-@¤ÙvÈ´9X@¤Ùr½<6@¤ÙvÈ´9X@¤Ù‚&€I@¤ÙvÈ´9X@¤ÙzîcŠ@¤ÙvÈ´9X@¤ÙxÔýóµ@¤ÙvÈ´9X@¤ÙxüPH@8h†YJôñ@8iº^5?}@4ðÄ›¥ãT@4ïò䎊r@4V”@4 'RTa@3«xFÜ^@3£÷ÎÙˆ@3«xFÜ^@3£S&Â@3«xFÜ^@3£33334?£È‰·akû?¦¢:<ƒ§²?™Ô/©[wÚ?œw!·E3?£¬3¥ê©©?—Ò¸ùBz3? Eˆ‡ðó‹?—·f;m?¤W8K?œ¨…2Œ?£kj \Ä™?˜æØ.ô?±4^Ê ¥T?”~ªd•?¿N†Ï¹?'dÂã—…?›hB1ÌËí?–¿nè$„@@@@@,@"?ð?ð?ð?ð?ð?ð?r5Asw¿h*2RW?Px ö½X?KÅ á ÞÜ@­JÇe’@¤Ù|Ï@+kjçÕfÐ@+kC•%@+kjçÕfÐ@+k’:)Çz@+kjçÕfÐ@+kŸU›=?É^žQ5P‚?Čۨ1A?‘$Cê¡@í?‹¨þ„/š?ëÎ@ A2?À­Õß}º?ÐbV‡,?’Ï>`Ï?†[‘'Í?3.Ylî?ÔÒ@úˆ‘?Z˜°,aÝ?€b¡´ñ@?Œ­·Ž~('?‚‹¡8*ú?‚äÍ“½E'?†½ª»—?†l&þ@@@@@(@*?ð?ð?ð?ð?ð?ð¿Mý+d?%À”?4qmœC? Gϼ>óB@¡Å‡<ç´@«’ý™Õy?C¦ÕÎ9«4?.΃¬ð±N?‚ø¬wXæ9?TÉAZÝ›´@ŸsSùè@g@¦–Rn—P@¦–cŠ @¦–Rn—P@¦–FL@¦–Rn—P@¦–RÞž@¦–Rn—P@¦–*—!7@¦–Rn—P@¦–/fn̉@¦–Rn—P@¦–(¥*è@š.7KƧð@š.>ùÛ"Ð@š.7KƧð@š.‰ί@š.7KƧð@š...n@š.7KƧð@š.kÈáW@š.7KƧð@š.r9$`’@š.7KƧð@š.H¼èj,@8ÿ–»˜È@9ÖO· Ö@4Iº^5?@4"—îí0@3PA‰7KÇ@3KšOy´@2O „M@2ˆò¡ëe@2O „M@2Ž »©t@2O „M@2’j¦ë=6?|çµB &€?—–·Í¼Ô¦?§ïÖòsó?¢sòN·Èº?ž5m;0 Õ?¥ŸÙ`š²¥?³E„ŒgŽ?”ù¯ò?«{.áV?“{ÕÀ€©?¥¶¡c°O(?¨aïÅ‘Õ ?¨KËo¨?›ïâ‹%j?™µö*ÿå?”ÜX³?–ð`oeÝ^?¡û!Žø8œ@@ @(@ @2@9?ð?ð?ð?ð?ð?ð¿Œ&ÃSäÀ¿<–IZÄ?cT¾§KŒF?tl +;ÒÙî@¦–9s–Õ@š.f¸3t9?‹¤] ¸?„d}È1Gˆ?öŠE< Ã?èé]03^@Ÿmq(¬Õð@h@¡—Oß;@¡¢MÒñª@¡—Oß;@¡03[ðÖ@¡—Oß;@¡}X‚ˆ@¡—Oß;@¡?~ÙÓ@¡—Oß;@¡VŒu1z@¡—Oß;@¡Yu%ù/@¬ðÖ‡+ @¬ð×Ç÷ñ›@¬ðÖ‡+ @¬ðÌ&f ­@¬ðÖ‡+ @¬ñðE¡µ@¬ðÖ‡+ @¬ðãY8òî@¬ðÖ‡+ @¬ð¬ûãá‡@¬ðÖ‡+ @¬ð{CìRs@7ÞHè§æ@7Û#ä©@@3ÇÎÙ‡+@4S ŠÇR½@2ûƧï²@2üUä´‘@2¡:’£S@3a`q"@2¡:’£S@2ǯKò¶@2¡:’£S@2ÇÙ°J™Å?‡©½(‡üÐ?«[e‘„?–x,Þöu?ª0±2¡B?­2¹e˜Hv?®&i;~Ô?Žì«ÍÊ#?¼táíáÇ?š;n ?¸ÜÌJqz?¥’è©0ôh?š Ó /?’¥æÀj?²MVÂNlF?•þ¨G’FQ?¡›y²¶©í?™qDÜðå?”%ÐóD¸b@@&@$@(@6@4?ð?ð?ð?ð?ð?ð¿”©z À¿‘ŽXžÃ@?yvXÕ‹£?lM¼ÈDœ@¡~ÄÖ†`@¬ð»°CŠb?–gQ 7Ö?޼/OåæŒ@1¬‡=@¢õG«óW@ŸcNbTè4@i@¡œwKƧð@¡œtýó¶F@¡œwKƧð@¡œt`ªdÃ@¡œwKƧð@¡œu '»@¡œwKƧð@¡œwÎÙ‡@¡œwKƧð@¡œwXâe@¡œwKƧð@¡œiÞÒ@©Qhr°!@©Që…¸@©Qhr°!@©O'»/ë@©Qhr°!@©M„M;@©Qhr°!@©M(Œç@©Qhr°!@©OÅp@©Qhr°!@©@ÞÒˆÍ@7^Hè§æ@7aë…¸R@2» Iº^@2ºkP°ò|@2;Ƨï²@2=žƒä%¯@1Vý!ÿ.I@1VÁ½¥@1Vý!ÿ.I@1U¼£n/@1Vý!ÿ.I@1CÐ|„µÝ?„F/·ÿP5?ÎÁ¯‰t0?’#ç}iïë?Œ'õ‚$5ñ?’ðä¼_?«ûm÷0|?‘â%ì˜ ä?“¡ƒ[¤45?‘Jâ”âj?0ÜN :s?’˜£“µ~Ð?˜"ߨÇ>?¢ó6õ··?êzŽx?ˆ©CwBÅÉ?„•ˆG’Z¾?ˆÔÞÑ—æJ?¨*ކáÁ@@@@@,@*?ð?ð?ð?ð?ð?ð?9 …óP¿aÒÉç?M_d»É—?YñÈ %Š@¡œvJïÕw@©M½ùÏ`?k2Ê¢rP?v}–²:w\?Ôó™k³Â!?çÙ1QÛ(@ŸhŽÿ/òÍ@j@§ÛùXbN@§ÛöÈ´9X@§ÛùXbN@§ÛùXbM@§ÛùXbN@§Ûü„µÜÆ@§ÛùXbN@§ÛùÛ"Ðå@§ÛùXbN@§ÛøFÜ]@§ÛùXbN@§ÛøQë…@¤èyÛ"Ðå@¤èz¬1@¤èyÛ"Ðå@¤è{šu@¤èyÛ"Ðå@¤è{µsì@¤èyÛ"Ðå@¤èyXbN@¤èyÛ"Ðå@¤èz)Çy§@¤èyÛ"Ðå@¤èyb¶®@6Ì]cˆe”@6ÉÎ_oÒ@2Ìí‘hr°@2ÌÌÌÌÌÌ@2~ùÛ"Ñ@2…‡“ݘ@1Š0U2a|@1‹…¸Qì@1Š0U2a|@1ŠW§†Â'@1Š0U2a|@1Š…‡“ݘ?…ÅBðrç?×s·IÓ?‘t‘ócjë?$Ìj½BÙ?’FL{öó?‘<ƒÜ_õ?|öOÿÝ?’Êå\tW?‘%gÇ¿µ?‘.“¥?‘ØèOÍ ì?低NëV?„ò—TËÃ?1·†Æjñ?ƒ~¨õ/¥O?„l¯¸‰ŒÎ?ˆCns¥ ?ˆ”Tj«›ª@@@@@*@&?ð?ð?ð?ð?ð?ð?8à]P¿}*ë`?5>œhcÄ ?6Èï÷Í@§Ûø{Æ@¤èyÙO–?Tþf|X1{?7„ß +6ü#?°Y¸ª^S?xôN „@ŸhmH¢ k@k@¥Oß;Á.„€@¥Oß;@¥±¢ Ì@¥Oß;@¥‚*†³@¥Oß;@¥£³²“º@¥Oß;@¥«Ð‡YV@¥Oß;@¥Æðçu@•+éxÔýôÁ.„€@•+éxÔýô@•+¾ãÙx~@•+éxÔýô@•)¾¢½êN@•+éxÔýô@•,~®yW@•+éxÔýô@•,xüg²0@•+éxÔýô@•,®±l “@8Žì¿±[XÁ.„>¤µÜÆ@4i‡+ @49=]?ê@3Æ“t¼@3KD‚àPŸ@2𖻘Çã@2¬¶oEí¶@2𖻘Çã@2žs%9s@2𖻘Çã@2£¦F¯h@8J¨?ºÂ2‘?¹!Ò±rå?Àó¼ceˆt?¹*- +QÊ?¼öaú@,@8J¨?¶Is|±¿?¿«Ì,ünš?Á^\Nb¾æ?ÅD?Þ?¿ “®†ùÝ@8p÷?¦ðsgá̘?¤u™ìc4ÿ?¦ûä7¡,œ?§áä<?¯þ+Ü̪W@*@&@(@;@8?ð?ð?ð?ð?ðøøøøøøøøøøøøl@ž{ÌÌÌÌÍ@ž{ÊÁÏKJ@ž{ÌÌÌÌÍ@ž{Þ³cû®@ž{ÌÌÌÌÍ@ž{é\NýÃ@ž{ÌÌÌÌÍ@ž{Ò4.@ž{ÌÌÌÌÍ@ž{ëÅØ%&@ž{ÌÌÌÌÍ@ž{ÚUöÏ–@£=p£× +@£=ó)4@£=p£× +@£K‚ç³@£=p£× +@£:œ 2ñ@£=p£× +@£=hH@£=p£× +@£BlJüa@£=p£× +@£A³fñ­@4” xFÜ@4”“t¼j@1õãS÷ÎÙ@1òB•Jv@1‹"Ðå`B@1‹±vG6è@0õµsê³h@0Ô%¯@0õµsê³h@0öy/rÆ@0õµsê³h@0õ0æã ?|¬Æ Væ?Õ|«2×8?‘€ÝøßN…?Œ‚±÷`?›]jÍõ­á?• P€+ü?|¬Æ Væ?’æl0þF?ŒjÃÙÖ?aËÝš¦?—Ÿ±¦p?’Ü OYbç?‚×—‘»®ÿ?Œî(åc€ª?‰Çˆ Âç?ƒ¨úž+@ì?‹“ª×1¿?‹ÆGØÊ@@@@ @2@,?ð?ð?ð?ð?ð?ð?`¿ùè?F<²ÿ?L×—Ô˜à«?9 3PØù@ž{Ò“ƒ)×@£?ðÿª?jÊ"<@D?XT×±ž!?ÞÐKõØw?º{ì­Ði@@Ÿe'b}Ïâ@m@¤LvE¡ÊÁ@¤Lv‡+ @¤LvE¡ÊÁ@¤LuÂ\)@¤LvE¡ÊÁ@¤Lv”Fs‚@¤LvE¡ÊÁ@¤LvR½<6@¤LvE¡ÊÁ@¤Luµsê³@¤LvE¡ÊÁ@¤Lu*™1@ªÝ’n—P@ªÝ’° Ä@ªÝ’n—P@ªÝ’:)Çz@ªÝ’n—P@ªÝ’¼£@ªÝ’n—P@ªÝ“Ãa@@ªÝ’n—P@ªÝ“3333@ªÝ’n—P@ªÝ“t¼j@304mÅÖ8@30:û~‘@0›¥ãSø@0¯O „M@/ÊÀƒn@/G®zâ@.̲•éá±@.̘_ö–@.̲•éá±@.̲•éá±@.̲•éá±@.̲•éá±?|öOÿÝ?é¥3i£ó?‘1f_¨Ï÷?ŒvHn&³?‘ ·èf?Ðýð^–Ö?|öOÿÝ?’¼  g¶?‘N÷J’?íu…XÚ?îCq$u?b¶­-Óx?‚nâwfÿ?Œ¯þuõí?‚uÞ@>N ?‚äÍ“½E'?†ÃÛSPã?†¯Mž684@@@@@*@(?ð?ð?ð?ð?ð?ð¿.³z–`?&Ì ?F §°?›^C¿ù@¤Lv^¯Ø@ªÝ“¬Œ?2>ù=q?5†ÃE?ù?qÔïø=ÔÍ?wÔï"œù‹@ŸføW½þ@n@¬ïŸ¾w@¬í³]þ×@¬ïŸ¾w@¬ò(R@¬ïŸ¾w@¬÷q5ç@¬ïŸ¾w@¬öôº(@¬ïŸ¾w@¬òqOhŽ@¬ïŸ¾w@¬ðÚ§}ª@™³"Ðå`B@™³$ˆ(*@™³"Ðå`B@™³'Lß>‰@™³"Ðå`B@™³$ÌqB@™³"Ðå`B@™³ À¾z@™³"Ðå`B@™³$[§ Ü@™³"Ðå`B@™³”î¦À@8 ]cˆe”@8cA&II@3Š^5?|í@3ˆ‰nÏš@2Àå`A‰7@2½Á[„@2zÔ,<ží@2t°R!LT@2zÔ,<ží@2vYt¹í@2zÔ,<ží@2vËVì?•'Z]Ô&?ä5;-?’`&בɽ?‘ÛÛ2K?‘Ë5‹Þ¸?‘šµû"®?™I'%ö«?’2S÷8žä?’“¿yŒÕ'?”ã‡EƒÑ?’JWV'ñ?‘aÓ¾?—%—º«?@w%±?‚ÝD÷3?…ÉvCy?‰ aç³7?Š®§ª*ç¶@@$@(@,@4@2?ð?ð?ð?ð?ð?ð?>Ðø¿C3º/Æ?Um_ÁsÇØ?Bñ^Ö0É@¬òkUò_@™³!V -?qïMy›G?_9óîßmÓ?ßKÖø`‚?³QÿJ†e6@Ÿn9@ym@o@¡  Iº^@¡ u a@¡  Iº^@¡ n—@¡  Iº^@¡ ÞÑ·@¡  Iº^@¡ …‡ ¨@¡  Iº^@¡ å`AŠ@¡  Iº^@¡ Ín;˜@£bPbMÒò@£bP£× +=@£bPbMÒò@£bPc^K@£bPbMÒò@£bP¡v7¢@£bPbMÒò@£bPô]0@£bPbMÒò@£bP ò1 @£bPbMÒò@£bP|„µÞ@4Û¹Œ~($@4Ü¥zƒ(Ø@.8“t¼j@.8¯ûÂjZ@-h1&éxÕ@-hˆ õÆß@+87´¢3œ@+8_ÌW›1@+87´¢3œ@+8•2&°@+87´¢3œ@+8†YJôð?}x—™Ö@¨Là‰C?d‚3r?p»œ‰Xìá?È—° ø?Ö9Gø¢Èü@Ÿm߀€@q@¨3Z¬1@¨3Z¬1@¨3Z¬1@¨3\]cˆf@¨3Z¬1@¨3XÔýóµ@¨3Z¬1@¨3Zû~‘@¨3Z¬1@¨3YJôðØ@¨3Z¬1@¨3YXbN@¤’« Iº@¤’ª~ùÛ#@¤’« Iº@¤’«¹Œ~'@¤’« Iº@¤’ª™0¾@¤’« Iº@¤’«xFÜ@¤’« Iº@¤’«6z@¤’« Iº@¤’«xFÜ@5>«6z@5+ Iº@1Ùº^5?}@1ÙÛ"Ðå`@0»Æ§ï²@0»ÚQÎ@0œàu÷@0”¯O „@0œàu÷@02a|Ú@0œàu÷@02a|Ú?}Ñ¿ž,?¥nÇx?)?‘°&޲P?Œ^:Òf?‘,IÝ Áé?Ðýð^–Ö?}Ñ¿ž,?’0nà=Q“?ÔCXsò?‡@Cvì×?‘Uç·Býi?]#ÍìO¤?…ÑTë0Ó?ŒïQ¼º“ã?‚ù…žÄ`x?‚ù8 ±^?†ÃÛSPã?†Ë¢L1Ù@@@@@,@&?ð?ð?ð?ð?ð?ð¿ò³¾?+‘^è0?'Râå¼ö? ï|X }@¨3Yÿ{äî@¤’ªý…hŽ?GP)&^²?-¡~}eí?œ^;ûI?eÝIº—¥q@Ÿg%ºã·u@r@£(õÂ@£(1&éy@£(õÂ@£"Ðå`B@£(õÂ@£ -à @£(õÂ@£À6â@£(õÂ@£l"h +@£(õÂ@£!ä÷eý@«òô9Xb@«òòñ©ûç@«òô9Xb@«òðoiDg@«òô9Xb@«òá½¥ž@«òô9Xb@«òôSŽóM@«òô9Xb@«òöÈ´9W@«òô9Xb@«òÿ½@7í¥œàv@7ì<žì¿²@3Ù‡+@3"3œ¾à@2Ë"Ðå`B@2Òn—Oß@1èè§æ›@1ì¥zxl"@1èè§æ›@1ôM:’£@1èè§æ›@1ó&Á½¥?–ªÎ­¡?’‚€‡d_s? Þ‘KOî¦?$¿ÀºÍ?[F»h?¥ñ.EkÐ?’Эs_ª`?ŽâS[ÞDí?ŒÅÐ7N³¬?°4\ɵ?ŠE§e,¤@@@@@&@*?ð?ð?ð?ð?ð?ð¿JX£|p¿c¼õûX?e%6À×¾?T\¤Ò®@¤v¿|„#Ò@­ƒçÿ8Pp?wÍN†÷I?nž‚&K¾?á¥ß'aM?ÇN¿Ú7Ù¤@ŸoHúwði@t@ ø8Ôýó¶@ ø8FÜ]@ ø8Ôýó¶@ ø7Ý0Vn@ ø8Ôýó¶@ ø9èG§¨@ ø8Ôýó¶@ ø7!÷nñ@ ø8Ôýó¶@ ø5ú(=«@ ø8Ôýó¶@ ø4¡…À @¦«r-V@¦«që…¸@¦«r-V@¦«q¦<Ú@¦«r-V@¦«ròæ‰@¦«r-V@¦«uÂ`/À@¦«r-V@¦«q·¹'@¦«r-V@¦«r±B¤@4*0U2b@4˜E¬å@1Œí‘hr°@1Ž£õ’@0ˆ“t¼j@0†ò‘V®¬@0TmÅÖ8†@0Rû~ÿ˜@0TmÅÖ8†@0TGa¹&Ô@0TmÅÖ8†@0S_g{µ‚?|çµB &€?Áù9§?‘e¨>ëc-?‹¯“'â?‘6θ„ À?‘€’9ñd?|Ñb×¶@?’ÎáëÕ~?‹>ºIA?-õHºD4?‘i¤”Ö­?x9f‰‰?‚t¢w{O?Œ·«HÍZS?‚Þþ̯.3?ƒ:I³l¬?†ð˜½#®?†æñŽŒ$@@@ @ @3@2?ð?ð?ð?ð?ð?ð¿Bòaw?/EÊ«à?DP®Ýp?<ŸydÏÝD@ ø6Öì@¦«r©æÜ?>þœÎ´“7?]úþ|•?‰Çc¬x‡š?Åõ>î––@Ÿfångb@u@¦åþùÛ"Ñ@¦åþ¸Që…@¦åþùÛ"Ñ@¦åÿ.Hè¦@¦åþùÛ"Ñ@¦åþùÛ"Ñ@¦åþùÛ"Ñ@¦åþvÈ´9@¦åþùÛ"Ñ@¦åý²-V@¦åþùÛ"Ñ@¦åýŠÚ¹õ@¥YÓ÷ÎÙ@¥YÔzáG®@¥YÓ÷ÎÙ@¥YÓÃa?@¥YÓ÷ÎÙ@¥YÓ÷ÎÙ@¥YÓ÷ÎÙ@¥YÔSŽóN@¥YÓ÷ÎÙ@¥YÓMj@¥YÓ÷ÎÙ@¥YÓ3332@3‚ò䎊@3‚&€IR@0 Ä›¥ã@/ÿU›=È@.DZ¬1@.CFÜ]cˆ@.Vð¸»@.U¨Xy=Ú@.Vð¸»@.UϪ͞„@.Vð¸»@.UfÏAò?|öOÿÝ?¦Ì '?‘šÕU#?Œ<…ÓÆÝ?ÿ £‰¸9?ÍàÊaùX?|¬Çëý ?’4 "ëžØ?«'Q™µ?˜ò¶Ðú?îCq$u?e¾DQ„Q?‚nâwfÿ?ŒÂ§dß±?‚|׿pZ?ƒ ?ÿ½?†¼Š˜L¥÷?†ÃÛSPã@@@@@(@*?ð?ð?ð?ð?ð?ð¿-d%°¿0YÖ½è? ŸLÑ¡F)?¸ï….}H@¦åþCj=Ü@¥YÓøYh3?+†nÔ¡]Ö?2$3Uì[?di\TÝù +?põ¬ LG¦@ŸfðIZw9@v@¢«ûdZ¬@¢«þå°êk@¢«ûdZ¬Á.„€@¢«ûdZ¬Á.„€@¢«ûdZ¬Á.„€@¢«ûdZ¬Á.„€@¢«ûdZ¬Á.„€@–Ò&éxÔþ@–ÒBÓ®ú!@–Ò&éxÔþÁ.„€@–Ò&éxÔþÁ.„€@–Ò&éxÔþÁ.„€@–Ò&éxÔþÁ.„€@–Ò&éxÔþÁ.„€@8%öý!ÿ.@8'¾ömÀ›@43S÷ÎÙÁ.„M‰ûçm@3Wï²-Á.„QnÙ‡@2Ê0U2a|Á.„NÜC,¥@2Ê0U2a|Á.„NÜC,¥@2Ê0U2a|Á.„NÜC,¥?}x—™+@8Iç@8Ù?’t D5·±@8Î÷@8i§@8Å@8S@8û—?¤«¥lˆï{@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøw@¦¥Â Iº^@¦¥¼í‘hs@¦¥Â Iº^@¦¥ÄtSŽó@¦¥Â Iº^@¦¥Ã{J#:@¦¥Â Iº^@¦¥ÀÞÒˆÎ@¦¥Â Iº^@¦¥Á-w1@¦¥Â Iº^@¦¥¿¾vȵ@­Û"Ðå`@­Ôýó¶F@­Û"Ðå`@­ØüPH@­Û"Ðå`@­Þžš@­Û"Ðå`@­Úû~‘@­Û"Ðå`@­Ú)Çy§@­Û"Ðå`@­Ú)Çy§@8 Î_oÒ@8s×Ûô@3° Ä›¦@3Ä9XbN@2Ãt¼j~ú@2Âø7´¢4@2…œàu÷@2„ã¼ÓZ†@2…œàu÷@2†z–¼@2…œàu÷@2†“t½?¢Æ÷Xê†?•tæïá,•?’Q/Èö +®?‹¬àÌ’Ç?“eð7Õ@?“7ƒÆD +¹?ˆÿÀ)T¿Æ?–9}»Ö=?• -o‡É§?£û,Ɇ?‘áÙž­ò?“å¡jÚ?oeư0?3ßa=„?ˆìûIè«6y@®=“u@®=“u@®=“u@®=*™1@¥~6E¡ÊÁ@¥~4ýó¶F@¥~6E¡ÊÁ@¥~7´¢3œ@¥~6E¡ÊÁ@¥~6z—@¥~6E¡ÊÁ@¥~5Y³Ð~@¥~6E¡ÊÁ@¥~5*™1@¥~6E¡ÊÁ@¥~4¢3œ@5ÞHè§æ@5Üàuöý"@2+ Iº@2_ö”F@1ÐA‰7KÇ@1Òu%F +¦@0?ò䎊r@0@ù k¹Œ@0?ò䎊r@0@Ñ·Xâ@0?ò䎊r@0@ Ä›¥ä?|öOÿÝ?Qdöÿô¼?“njĕ‹x?Œ'õ‚$5ñ?‘#6‰¥_?‘f]£àG?„F/·ÿP5?’[ KÄ0R?‘´"«Õa?Níú¾?‘<¸ö}½?Éöm/wª¸ ?€=P|@@@@@,@*?ð?ð?ð?ð?ð?ð¿ØØ€¾ûVTx€?*(ä‹43Ñ?=ç¨é~@®=0às«@¥~5Šˆ?JÝ„–inj?3Va‚”‘ê?¡Åg’Î?mð,÷!‚@Ÿh>ÐïË@y@¦ø“u@¦øS÷ÎÙ@¦ø“u@¦ø33334@¦ø“u@¦õ+…¸R@¦ø“u@¦÷Þ5?|í@¦ø“uÁ.„€@¦ø“uÁ.„€@§w½p£× +@§wÇ+ K@§w½p£× +@§w^ÿ—$@§w½p£× +@§vÚ¬1@§w½p£× +@§wQhr°!@§w½p£× +Á.„€@§w½p£× +Á.„€@8^Hè§æ@8`-à @3Œí‘hr°@3EãS÷ÎÙ@3v§ï²-@2šÚ¹õY´@2ÙŒ~($ @2OhÛ‹­@2ÙŒ~($ Á.„NÜC,¥@2ÙŒ~($ Á.„NÜC,¥?óA[ØïF?µpo‚_?ÓãPàQáÇ?¹f¨P¸Ëý@8Iç@8Ù?ªÝ8Ⱥ™J?³&àÖ`ç?Ð;+óå¬Ç?·øõЦûX@8S@8û—?ªÞUWºci?°ëç¡×4r?¦þ“ßH/b?ÇÓDZ›€@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøøz@¯ˆ:^5?}@¯ˆ;dZ¬@¯ˆ:^5?}@¯ˆ;šu@¯ˆ:^5?}@¯ˆ:^5?}@¯ˆ:^5?}@¯ˆ9Î_q@¯ˆ:^5?}@¯ˆ8ï4Ö¡@¯ˆ:^5?}@¯ˆ8“t¼j@ ¶ÌÌÌÌÍ@ ¶ÌÌÌÌÍ@ ¶ÌÌÌÌÍ@ ¶ÍjO@ ¶ÌÌÌÌÍ@ ¶ÍúCþ\@ ¶ÌÌÌÌÍ@ ¶Ì"h Õ@ ¶ÌÌÌÌÍ@ ¶ËÓÃa@ ¶ÌÌÌÌÍ@ ¶ËÓÃa@5[¹Œ~($@5\ô!-w@1Iº^5@@1Oß;dZ@0"-V@0"Ðå`A‰@/Ǔݗö,@/Çâ‚@·€@/Ǔݗö,@/É 'RTa@/Ǔݗö,@/É…ðoiE?ð°–Ž]?ûJ`ÕYð?‘"žæÆó¡?ŒÖ +Äȱ?‘'¬Å™» ?ë+ʦÜ_?ð°–Ž]?’p RN%Î?ˆ9²0?Hª¦ºón?‘ ·èf?›ªU3Îp?ð*wjs—?Å9–o?„ËD(ºp?ƒv_.^?†ÃÛSPã?ŠEÝ‹N?ð@@@@,@,?ð?ð?ð?ð?ð?ð¿Aéû¿ ¿"=cÁü? ÞkàÆõ™? Sgœ½>@¯ˆ9$7,@ ¶Ëðxþ?c)²xT)?kAêä\ó?2»¤ž!ö¼?%ÇPz÷XÖ@Ÿs~÷í@{@ªTr-V@ªT~vÈ´9@ªTr-V@ªToAò×@ªTr-V@ªTuL˜_@ªTr-V@ªTuéá°‹@ªTr-V@ªTp Ä›¦@ªTr-V@ªT‚h Ô•@ªµøÔýó¶@ªµöÈ´9W@ªµøÔýó¶@ªµô¼@ªµøÔýó¶@ªµó àÞÔ@ªµøÔýó¶@ª¶ðoiC@ªµøÔýó¶@ª¶œwšk@ªµøÔýó¶@ª¶SŽóM@8ãg ù l@8ÝÈK]Ì@4E?|í‘h@4Gâ‚@·€@3´“t¼j@3´÷eýŠÛ@3J0U2a|@3HÇâ‚@¸@3J0U2a|@3H´9Xc@3J0U2a|@3CŽóMj?—¤o„C? È»v\¶?–™@^Ú¢?—IW`g’?ž–n.õ}ø?¥ìõ`$-š?º,eª ™?•¤-'Ä,?™ ?G·W?•è­¸‡? !o‹j`?#°‘N˜?–í +e˜›ð?vùv“?“Vné?‹Ûu¤ó†4?¢Kà7~w>?žµ½èq¨®@@@@@*@(?ð?ð?ð?ð?ð?ð¿[u±Ô?upY-Ú€?að{ÎÎïÐ?hN<ñ¾Dd@ªTw:Âòp@ª¶c—Ä?½÷Zàáw?zú•›?ã蔊 w:?Ø‹þ?n@Ÿo4Rš6ž@|@¬šbÐå`B@¬š}/Ÿ½@¬šbÐå`B@¬šÙ0¾ ì@¬šbÐå`B@¬š­V@¬šbÐå`B@¬š×KƧð@¬šbÐå`B@¬›Ð©*@¬šbÐå`B@¬›ò×r@¬TÌIº^5@¬TÃn—@¬TÌIº^5@¬TºCþ\’@¬TÌIº^5@¬TÄÝ/ @¬TÌIº^5@¬TƧï²@¬TÌIº^5@¬T¬ç¯¸@¬TÌIº^5@¬T¬~($ @5åöý!ÿ.@5¾ í(Œæ@2° Ä›¦@2€ Ä›¥ã@2Ðå`A‰@1ã¶E¡ÊÀ@2ý!ÿ.I@1Í}¿HÌ@2ý!ÿ.I@1ÒÐå`A‰@2ý!ÿ.I@1Óˆe”¯O?žˆ2}?¹Rñão¬@?¬Œª:bËf?¢Š3?Úyd?¾w/á›F?¾Wºñø…í?“Æ×q„nï?@`WÓæ?¢zhû›\¾?”¡VòÄ\F?£Pr¶ã™?œŒ9•`}·?¼ÐÁß9&û?’žÿ§:­?™båïVý?…bv{3dZ?$Ìj½BÙ?’&Á¯»@@@@@,@*?ð?ð?ð?ð?ð?ð? ¦ÙÁA€¿pÆ +?aÈŠX¤µÜÆ@3B° Ä›¦@3@A‰7KÆ@2Ðå`A‰@2£n.±Ä@1ÑÞi­BÄ@1Ïß;dZ@1ÑÞi­BÄ@1Ðò{²þÆ@1ÑÞi­BÄ@1аò{²ÿ@8J¨?W[†?“=P™Ê?î®)„àµ?‘¿ÐÅu?’?=ÆþÎò@8J¨?“‚Û£0Τ?”p¶I”“ž?’„÷ò¸?‘ ^Íü?ÿ?“X<‡÷Ú@8p÷?3ßa=„?…/‡ÙX·³?„À"aËô??ŠEÝ‹N?Š—à `ž@@@@ @,?ð?ð?ð?ð?ðøøøøøøøøøøøø~@¤ª²-V@¤ª°£× +=@¤ª²-V@¤ª¥®æ1ù@¤ª²-V@¤ªÁTÉ…ñ@¤ª²-V@¤ªÂh Ô•@¤ª²-V@¤ªÆö”Ft@¤ª²-V@¤ª´!-w@« A‰7L@«¨´9X@« A‰7L@«¸FÜ]@« A‰7L@«£ñA \@« A‰7L@«‹ûµt@« A‰7L@«ˆ Ô•@« A‰7L@«¤%®æ2@7eöý!ÿ.@7e`A‰7L@4Š^5?|í@4”¼j~ùÛ@3ä¼j~ùÛ@3òœwškQ@3…œàu÷@3˜ÁTÉ…ñ@3…œàu÷@3±Î_p@3…œàu÷@3¬¹#¢œx?‘â%ì˜ ä?˜¶ÚæÁ€?”Ä0óçî?¤ïâ NŠ:?´¢¦è?²P£zjÊ?1·†Æjñ?¡Ú4\á2?¡)~Y¡6 ?ª*G„kì?¸û9]t`?·æ±/&?‘MM….äí?™:K²ïÏ?¡§~gN? C×.ΰ?¢ŠEÈ>g?°óËr:vI@@@@@,@,?ð?ð?ð?ð?ð?ð?n ¯¬<¿yùÞ`?b!ftB ?j0a$mT"@¤ª¶d4ˆÔ@«Ÿö:t?|#NÍ?ÐPÒãÅö?ÕÅ@l.d„?ဩ™·™P@Ÿ`‹¡Ôß@@«2wÎÙ‡@«2€ƒn˜@«2wÎÙ‡@«2|PHð@«2wÎÙ‡@«2v4é@«2wÎÙ‡@«2uéá°Š@«2wÎÙ‡@«2t!-v@«2wÎÙ‡@«2v“v@­·ƒn˜@­·Ä›¥ã@­·ƒn˜@­¶ÿ±[W?@­·ƒn˜@­·s×Ü@­·ƒn˜@­¶øï4Ö¢@­·ƒn˜@­¶ö“u@­·ƒn˜@­¶õϪ͟@8uS&Á¾@8kàÞÒˆÎ@3áhr° Ä@3ÝBÃÉîÌ@3Ú~ùÛ"Ñ@3Ô%®æ1ù@3mÅÖ8†@3Ñ·Y@3mÅÖ8†@3êJŒM@3mÅÖ8†@3·éùr?®í©@Šþ?’u~•Ñ?˜²éÃ_ÓÔ?’9ñ9¶ò8?™‰‰…Â?–yí+PYu?|öOÿÝ?”zòžÕÿ?¡âŠÊ +?•ãÿ§…|?•MšuVÑQ?˜6@(/ÇÝ?–uDJ‘`º?*øT?™“ÇÙ¹?‰‹„áùO"?‘\,‚†!?>LR_5@@@@@*@*?ð?ð?ð?ð?ð?ð¿Q¯r{>¿dŒlHL?QŸâ¶"ˆŒ?/U0ÛL¨@«2v<¦šê@­¶ø­"?eA1Ä‹Gµ?Uý˜ºTK‹?·[Éö2? q³8¢@ŸoBçM3@€@žŒp£× +=@ž‹Ã:ÉAÉ@žŒp£× +=Á.„€@žŒp£× +=Á.„€@žŒp£× +=Á.„€@žŒp£× +=Á.„€@žŒp£× +=Á.„€@–$´9Xb@–$ûÌFÂ<@–$´9XbÁ.„€@–$´9XbÁ.„€@–$´9XbÁ.„€@–$´9XbÁ.„€@–$´9XbÁ.„€@7*0U2b@7»¼Y×@3”›¥ãSøÁ.„M‰ûçm@3$¼j~ùÛÁ.„QnÙ‡@3ý!ÿ.IÁ.„NÜC,¥@3ý!ÿ.IÁ.„NÜC,¥@3ý!ÿ.IÁ.„NÜC,¥?•¬š3€å®@8#˜@8¾:@8 >+@8Iç@8Ù?€kz½ +~@8Î÷@8i§@8Å@8S@8û—?kŸsŽŸP@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@žÎ\(õÃÁ.„€@žÎ\(õÃÁ.„€@žÎ\(õÃÁ.„€@žÎ\(õÃÁ.„€@žÎ\(õÃÁ.„€@žÎ\(õÃÁ.„€@™*Ý/Ÿ¾Á.„€@™*Ý/Ÿ¾Á.„€@™*Ý/Ÿ¾Á.„€@™*Ý/Ÿ¾Á.„€@™*Ý/Ÿ¾Á.„€@™*Ý/Ÿ¾Á.„€@7Ñ|ÚQÁ.„>¤µÜÆ@3xr° ÄœÁ.„M‰ûçm@2Z~ùÛ"ÑÁ.„QnÙ‡@1𖻘ÇãÁ.„NÜC,¥@1𖻘ÇãÁ.„NÜC,¥@1𖻘ÇãÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø‚@©/Þ¸Që…@©/ñë…¸@©/Þ¸Që…@©/© 'RU@©/Þ¸Që…@©/ÍOß;e@©/Þ¸Që…@©/wéùs@©/Þ¸Që…@©/Ó&Á¾@©/Þ¸Që…@©/®cŠ +@®é¯Ÿ¾w@®ép£× +@®é¯Ÿ¾w@®é“¶E¡Ê@®é¯Ÿ¾w@®é¨´9X@®é¯Ÿ¾w@®é™0¾ í@®é¯Ÿ¾w@®é“@N¤©@®é¯Ÿ¾w@®ê™³Ð|…@9Y*0U2b@9N($ x@5®5?|í‘@5¾cŠ @5 "Ðå`B@5ÑN;Í6@4Œ¿±[W?@4»ÓÃa@@4Œ¿±[W?@4wÁ½¥@4Œ¿±[W?@4áœàuöý?ÁxgÀ?—µ”öŒqÒ?’´ýBI{?£ìߦË>?¤¦aR¢o?«ÿÄå3:?·à¦_ëý?°M\³Ù“@? Dñ£P?¨œ»ÁÔé?®ƒý{T»¯?°?6-Kò?Ò^áÁèw?¤A8 Kú¿?¹§Âƒj?¤„»•Uñ#?˜uqR¿7?¦Tј+‰@@@@@@?ð?ð?ð?ð?ð?ð?´>¶F@?¨¸º5 ?š3+0‘|\?¥>Hr&Ûø@©/¥u÷@®éÕPrf?¬pYÂfL?½Ùy1ŠÊD@#Ž›¶/†>@=rQÎȈ8@ŸosÄÕ–@ƒ@«aÊÀƒ@«aô±î#@«aÊÀƒ@«a’tûš@«aÊÀƒ@«e““L@«aÊÀƒ@«Šd……|@«aÊÀƒ@«ˆ6‹Lü@«aÊÀƒ@«Šè±0:@•jcS÷ÎÙ@•jR·ÏÀ€@•jcS÷ÎÙ@•iÍ[Y˜@•jcS÷ÎÙ@•iœ@Ϭ×@•jcS÷ÎÙ@•iÃU¾ +ß@•jcS÷ÎÙ@•iàê".Ä@•jcS÷ÎÙ@•iÒAÙ‚;@7›¹Œ~($@7ž+÷ë£p@3W+ Iº@2ú€e*ìA@1ÐA‰7KÇ@1ž¶;Ìù@1ž«6z‘@1jp|&Û @1ž«6z‘@1k åÉÌ’@1ž«6z‘@1pëœz&?~Ov_Ø­«?®ÅWMʨ ? íµß'N5?«ùšô1…ê?¦\?°ZÖl?§lhFB?‚Ú¡ËG7?†K@oþ?ŽƒuèÂ:d?’Á¡QËÙ?‘èÅ~òu‡@@&@ @,@:@9?ð?ð?ð?ð?ð?ð?ƒk±~ù¿ŽD뎀?XÊ´ÎÇè?fí2†™Ìü@«mGmù@•j/(?p¥û½Ú?}ë"5Æãy?׋à¨ùù:?älŒ“5òB@Ÿ_(—Š¿@„@¦]­V@¦]­Oß;d@¦]­V@¦]®p:û@¦]­V@¦]¸y=Ù@¦]­V@¦]·ÎÙˆ@¦]­V@¦]²:)Çz@¦]­V@¦]©^ž @ž3 Ä›¥ã@ž3¡G®{@ž3 Ä›¥ã@ž3©*0U2@ž3 Ä›¥ã@ž3™JôðØ@ž3 Ä›¥ã@ž3œú¬Ùé@ž3 Ä›¥ã@ž3¢œwšj@ž3 Ä›¥ã@ž39#¢œw@3Ñ|ÚQ@3Òe+ÓÄ@2n5?|í‘@2j¹õY³Ð@24“t¼j@23S&Â@1Ê0U2a|@1Ã× +=p¤@1Ê0U2a|@1ÈÇâ‚@¸@1Ê0U2a|@1°ÞÒˆÎp?|öOÿÝ?‘6 '8? ±ubÊÅ5?“U†žév?”#?3ÆÂƒ?¨ÅkÊL?|öOÿÝ?’馿œãj?œ*&Ækúµ?•{G_r¤V?“Ô¼2“#š?½«YÙ­ 8?‚|׿pY?•ŠPç<}¨?“„*0x)Æ?“äÐå÷à?ùDâΊ?ÇùØò¸@@@@@*@*?ð?ð?ð?ð?ð?ð?Yòú­~¿;á×óô?Tú:‡4À?WÙk3^"@¦]°òäª@ž3ŸüÌM]?p¦sHe·G?rüDç¯î?åpAKÇ|Ü?èÅxÙ…ª@Ÿaõc5U @…@¥ü4¼j~ú@¥ü4¼j~ú@¥ü4¼j~ú@¥ü5$Ý@¥ü4¼j~ú@¥ü6“u@¥ü4¼j~ú@¥ü5Â\*@¥ü4¼j~ú@¥ü5 '»@¥ü4¼j~ú@¥ü3œ¾à@¯F&éxÔþ@¯F'+ K@¯F&éxÔþ@¯F'l‹C–@¯F&éxÔþ@¯F)7Kƨ@¯F&éxÔþ@¯F'ï²-@¯F&éxÔþ@¯F)Dg8@¯F&éxÔþ@¯F(Xy=Ø@2Bò䎊@2Be+ÓÄ@-{"Ðå`A@-{çl‹C”@-%¡ÊÀƒ@-%+ÓÃa@,#¼ÓZ…ˆ@,#9Àëíû@,#¼ÓZ…ˆ@,"ÞÑ·@,#¼ÓZ…ˆ@,"‚@·€5?É^žQ5P‚?Æ¿5›7÷?‘ŸÇSñ?‹ËØ|*(?îú/´`?Å{¿Ž<¹?ÐbV‡,?’Ï>`Ï?€s8rÅ?-õI¸`K?ÔÒ@úˆ‘?M\³Ù“@?€cPßQª?Œµ3‰;šÏ?‚|׿pZ?ƒ^ ›¨¬a?†špk Y?†špk Y@@@@@@?ð?ð?ð?ð?ð?ð¿Lpð¢?-8"Ûx?)~˜WÃåÛ?8Šî•Ïù—@¥ü4ä=CÄ@¯F(xŸ)À?8€™¼õ?G<788Z?mWZª§á?‡·©l1@Ÿs +ú@†@¨ ¬1'@¨ ¬1'@¨ ¬1'@¨ ÓZ…ˆ@¨ ¬1'@¨ ¬1(@¨ ¬1'@¨ Æ?@¨ ¬1'@¨ àuöý@¨ ¬1'@¨ —ö+k@®Lèr° Å@®Lè´9X@®Lèr° Å@®Lä“t»@®Lèr° Å@®LäÝ/ @®Lèr° Å@®Lâh Ô•@®Lèr° Å@®Lß|í‘h@®Lèr° Å@®LãFÜ]e@4(†YJôñ@4(e”¯O@0‚° Ä›¦@0‚¼£n@/Ýó¶E¡Ë@/Ûµsê´@.̲•éá±@.Ç+ I»@.̲•éá±@.Ǔݗö+@.̲•éá±@.ȧæšÕ?|¬Çëý ?:LÓá +í?‘D&»ä?Ž‚¨Ø†{~?‘EÉ@Ú?ô Î]V?|öOÿÝ?’®> +fuæ?‘N÷J’?‘.“¥?•¯ÃþƒR?’ Óº^?‚¯­Ù¤Áµ?Œèsq‡#?‚ù…žÄ`x?ƒ*|š\/´?†µ°jÆÃ?‡L8õASÎ@@@@@&@&?ð?ð?ð?ð?ð?ð? hï ¿Z¢ô?ƒd²Óì~?@øõÐ5@¨ 笿Ž@®Lå(Ž(?/N££D?a q²:…8?j xG¸ë ?ɳ¿?¶@ŸfQñÑè@‡@¤4¼j~ú@¤+@8Iç@8Ù?ð°–Ž]@8Î÷@8i§@8Å@8S@8û—?ð*wjs—@8 * @8p÷@8¶@8 Ø@8 Ø?ð?ðøøøøøøøøøøøøˆ@¥Õ$Ý@¥Ö‡+ @¥Õ$Ý@¥Ó÷ÎÙ@¥Õ$Ý@¥ÔÉ…ðo@¥Õ$Ý@¥Ö+jçÕ@¥Õ$Ý@¥Öz˜@¥Õ$Ý@¥Öý!ÿ.@¬ÇuÂ\)@¬Çv“u@¬ÇuÂ\)@¬ÇvÈ´9X@¬ÇuÂ\)@¬Çxï4Ö¢@¬ÇuÂ\)@¬Çu*™1@¬ÇuÂ\)@¬ÇqÅ‚@¬ÇuÂ\)@¬Çsg ù @6Q|ÚQ@6Q4êJŒ@2Ù‡+@2í(Œç@1’Ðå`A‰@1‘aä÷eþ@0á:’£S@0Þ}Vlô@0á:’£S@0ßË’:)È@0á:’£S@0à?}Ñ¿ž,?¾¢`ƒ?‘RsÈW?‹ÁË…ÉT?’<_+fjä?‘®¬nÒMê?„F/·ÿP5?’ ,øÕC©?ö”iåó¨?@§[*^?“Æ×q„nð?‘"›ö?ƒM¬Öe—^?Œ°¶.Ä+Æ?„„OW°ó?ƒ3¸Î{Z?†Ü‘ °Ô?‡gϵ’õ@@@@@,@*?ð?ð?ð?ð?ð?ð>ù©¿Eýã‚`?«~sL+¥?2©wÌ}ò@¥Öˆ5*@¬Çt„Zl?4óªuëÑ?R½—õÆ6?uÛb`?©ñQ U…@Ÿgò!‰1È@‰@ d%ãS÷Ï@ d%ãS÷Ï@ d%ãS÷Ï@ d&™Î[@ d%ãS÷Ï@ d&$PR@ d%ãS÷Ï@ d''ÃA@ d%ãS÷Ï@ d%Yfa@ d%ãS÷Ï@ d$Ζ,Š@­÷ÎÙ‡@­øbMÓ@­÷ÎÙ‡@­ø®µ¾f@­÷ÎÙ‡@­øXz£x@­÷ÎÙ‡@­øhÄ@­÷ÎÙ‡@­÷´¢3œ@­÷ÎÙ‡@­ø}¿G@2ò䎊@2ò䎊@/Gï²-@/GéùrG@-|¬1&ê@-{–®E¸÷@-(Û‹¬q @-(fsøF@-(Û‹¬q @-)'WŒ{N@-(Û‹¬q @-(^¹‡§9?É^ž6õP?ÎÅ…ÐS?‘,žÔë5?‹Æ÷– ø?é4ôØ­5?¿óÈj?ÐbQë„›¦?’±5-¨?”Ùí˜6?8³QÁ9Ö?מ‚d?\j¥Ý4?€bwÄ' g?Œ·Zæ[?‚{›ÜL’‚?‚ì&{A‡ð?†”3†° ?†Žpu{,@@,@,@,@8@7?ð?ð?ð?ð?ð?ð¿PÒÙJ¿#dTX?)ÄãP‡"·?(ÐY˜9-@ d%éÌd@­øôi/?8ÃÎÿd?6È +voE?nôÂ)Õ?f²»Ï¹ÿ@Ÿs%[@Š@­ël°@3‚° Ä›¦@3ƒ/€Þ–Ô@2¹7KƧð@2ºÈ?ö¡2@2ò䎊r@2|`æÓºM@2ò䎊r@2€î¢ «@2ò䎊r@2~Ôð·)¤µÜÆ@3!hr° ÄÁ.„M‰ûçm@2ÒÐå`A‰Á.„QnÙ‡@2«6z‘Á.„NÜC,¥@2«6z‘Á.„NÜC,¥@2«6z‘Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø@­š¬1@­˜Që…@­š¬1@­¯Aò×@­š¬1@­¯hÛŒ@­š¬1@­¹b¶®@­š¬1@­¯\(õÃ@­š¬1@­±Þi­C@©Å 7Kƨ@©Ål‹C–@©Å 7Kƨ@©ÅÅ€@©Å 7Kƨ@©Åå`Aˆ@©Å 7Kƨ@©Å÷ÎÙ@©Å 7Kƨ@©Å#¢œx@©Å 7Kƨ@©Å¨Xy=@7Hè§æ@7±Ä2ÊW@3”›¥ãSø@3jOv@36§ï²-@3*Ÿ¾vÈ´@2s&Á½¥@2_—$tS@2s&Á½¥@2b3œ¾à@2s&Á½¥@2bò䎋?žˆ2}?ªi1Ÿ[„ñ?¢ž<³Óž?Ég(6ßð?¬¶Íl…ÿ?ªà—èðŒô?‡YÍ_?—Ð/ω(2?•ÙK°FÑ?—×:`‰?±ÂÍ–M?­87ÞŽ?‘¼Åâ<{?™î  lƒ?˜Ÿó6P¤?‹Bºá­?’Ì÷y\ÛÎ?–í +e˜›ï@@@@@,@,?ð?ð?ð?ð?ð?ð?„Ò4>?p™'³?fP•3?[×?Fœœê@­¨Z4Mf@©Å 뛑Æ?€è7ˆWê?a6 +ª?û¸9Ýÿ?°ya}Qò*@ŸbàOoò@Ž@ŸýÁ‰7KÇ@ŸýÂŽð@ŸýÁ‰7KÇÁ.„€@ŸýÁ‰7KÇÁ.„€@ŸýÁ‰7KÇÁ.„€@ŸýÁ‰7KÇÁ.„€@ŸýÁ‰7KÇÁ.„€@§eOß;@§eÕÉ»[@§eOß;Á.„€@§eOß;Á.„€@§eOß;Á.„€@§eOß;Á.„€@§eOß;Á.„€@7Q|ÚQ@7Q°ùEû@3Ìí‘hr°Á.„M‰ûçm@2’Ðå`A‰Á.„QnÙ‡@1¡:’£SÁ.„NÜC,¥@1¡:’£SÁ.„NÜC,¥@1¡:’£SÁ.„NÜC,¥?|¬Æ Væ@8#˜@8¾:@8 >+@8Iç@8Ù?…ðE[i)@8Î÷@8i§@8Å@8S@8û—?‚§jÃK¶@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@­%›¥ãT@­%~¹T@­%›¥ãT@­%*î€@­%›¥ãT@­%³Oÿ@­%›¥ãT@­%wåÆ@­%›¥ãT@­%…t5@­%›¥ãT@­%¥´á@“AøÔýó¶@“BáÔêé@“AøÔýó¶@“BM:“@“AøÔýó¶@“B¡û®@“AøÔýó¶@“Aö¥+³@“AøÔýó¶@“Aýé(a@“AøÔýó¶@“Aò#¥ËÅ@8zqÞi­C@8{Èh Ö@4 Ä›¥ã@4Y¼¶L@41‰7Kƨ@45ô-yÂ@3”mÅÖ8†@3˜)œÖqb@3”mÅÖ8†@3›Xè¹íC@3”mÅÖ8†@3 ó|ñÜã?‚Cš æI?ðÓ¡ãö€?“ÊÚgÅ?“¦î‘?™ ¶¦€_? Ç +å¸*?©Å°C°ýz?’â›üŸ?”ŽqP:6?™¶  +1Ê?›Ì¦Ú2ô?¡JS¢«6z?É^žQ5P‚?*£|3Né?’d3ð"7?ŽÝ¡uÒ(r?’<_+fjä?‘·díW‚?ÐbMçê_x?’#maЀ?–¬HðºDŸ?¡Ð`HÇi?—ÒGþUÀ?›öBhéÀ?€ÖùL[]–? $gú‡v?ƒM¬Öe—_?ƒR¨º“JÞ?‡<û¡71?†ùadô|@@@@@*@*?ð?ð?ð?ð?ð?ð¿]+ð?|!„V"À?G€ÛÄXZ¯?l°Öb^ç@¢LÙPߥ@¬Q]DK?@?V±þl‹«­?xËÑTR‘\?¥_H®Ëm ?ÑÆôUá›h@Ÿs&a@‘@ªƒn˜@ª%$]\@ªƒn˜@ªòEã©O@ªƒn˜@ªü"Á @ªƒn˜@ªïgÁ{}@ªƒn˜@ªøÉ)L¬@ªƒn˜@ªõ‹oˆ@›¶n—P@›¶[§ E@›¶n—P@›¶Û’R{@›¶n—P@›¶ ‹¬¿È@›¶n—P@›¶ ¤-W@›¶n—P@›¶Ÿ\B³@›¶n—P@›µæÕ#B–@8šÔ,<Ÿ@8A`M* @4óS÷ÎÙ@4öŸwô°@3îùÛ"Ðå@3ï>@¶ãO@3p–»˜Çã@3oÜa@Ø@3p–»˜Çã@3nOx4h@@3p–»˜Çã@3p³­j÷¬?¤c|iÅqd?Ã…tÁâ.?šXMXö?Œ4’“ê<~?‘?ïä7œÝ?’n¥³w‚e?ñ3<' ?’\PÏ‘?–Ì´ù?-õIâG?ÏQ7Ù?’E͵kò?¡Þ—f8§u?“K»jw˜?!× f†?‹Äñ|þäõ?è° ˆ¨›?ŽéºuŠÉT@@@&@ @,@,?ð?ð?ð?ð?ð?ð?6¦ðõ ¿qâxõò?gSZ iÕu?QíW L(@ªô\æ@›µÿöó¡A?|ˆ¦,œez?u…ˆfÑ’µ?ò†q˜+Öð?냣V Qî@ŸnÁØHÆ&@’@¨Ã« Iº@¨Ã©ûçl‹@¨Ã« Iº@¨Ã‡ü¹#£@¨Ã« Iº@¨ÃP‰ 'R@¨Ã« Iº@¨ÃC¼ÓZ†@¨Ã« Iº@¨Ã`ëíúD@¨Ã« Iº@¨Ãf$Ý/@§ Òñ©ûç@§ Ð Ä›¦@§ Òñ©ûç@§ ¨§æ›@§ Òñ©ûç@§ ŽÙ‡+@§ Òñ©ûç@§ ¡ohÛ@§ Òñ©ûç@§ Æffff@§ Òñ©ûç@§ ¿U›=@6í¥œàv@6æ_Ø­« @3õãS÷ÎÙ@3àU2a|@3‹"Ðå`B@3nvÈ´9X@2½cˆe”°@2šOv`@2½cˆe”°@2”ŽŠqÞj@2½cˆe”°@2™0¾ í)?™™™™™™š? )™È.‡ +?·‚L7œS?°ž‹<›Þ?½ø5eyèé?ºæ'Ýt?‡YÍ_?®@ ‰VBš?¹á æèóÏ?µZ]Éÿ·?Àž˜ &°Ô?µ¦’?³&Ô,ô?ž™€ZÁ£ç?¡ƒZ)Àˆ?’oÍb4U?y½¼ŸŽ?¥cp Ž@@@@@,@,?ð?ð?ð?ð?ð?ð¿–ßà{–€¿wé¥L;?°›ÔåŒ?p©Á›:@¨Ã‡i[¿Ù@§ Lj6ùQ?›Ýtî ;¾?ˆcú‹øå@›9‰Ü/â?äàOºBý,@ŸaSn>@“@ªTbMÒò@ªT£× +=@ªTbMÒò@ªT ²•ê@ªTbMÒò@ªT° Äœ@ªTbMÒò@ªTÒòæ@ªTbMÒò@ªTóMj@ªTbMÒò@ªTë…¸@ èÙ‡+@ è²-@ èÙ‡+@ è úCþ]@ èÙ‡+@ è÷ÎÙ@ èÙ‡+@ èŠqÞj@ èÙ‡+@ è :’¢@ èÙ‡+@ è í(Ž@5½:’£@5½æšÔ,<@2Ï|í‘hr@2Ð-à @2$¼j~ùÛ@2%zxl"h@2«6z‘@2! ²•éâ@2«6z‘@2"ˆÎp:ü@2«6z‘@2(õÂ\?žˆ2}?’‚€‡d_s?’,³Zêª?Ô@R’?“øâ#0ŸY?•½0 +Žø?1·†Æjñ?”ºu(†¼¦?•Q²rz¢ù?ð{¥âdû?—QÀ–Íù?–Ï9xä]e?…™ï ufÝ?ŽÎ"”`ù…?ÉÏt +j?ƒ¼9XNÄu?ˆ‹”âó?‘À³ûê%§@@@@@,@*?ð?ð?ð?ð?ð?ð¿#z?SüÀ†°?2 @;@{?W…)'ù´Ç@ªTd%/ß@ è¡K—T?Qú0ɳ´ß?vôþS[?©^¶±?òã])^3@Ÿf8K ³@”@¬¾ C•@¬¾ ÌÌÌÎ@¬¾ C•@¬½üC,¥z@¬¾ C•@¬¾ÇË)@¬¾ C•@¬¾¨Xy?@¬¾ C•@¬¾ŽŠqÞ@¬¾ C•Á.„€@£³þùÛ"Ñ@£´n—@£³þùÛ"Ñ@£³ô‡ü¹$@£³þùÛ"Ñ@£´DЪ@£³þùÛ"Ñ@£³÷§†Â'@£³þùÛ"Ñ@£³ãþ\‘Ñ@£³þùÛ"ÑÁ.„€@6ÿ–»˜È@7-à @3» Iº^@3¯Ø­«ŸV@3Ãt¼j~ú@3¾¤¨ÁTÊ@2õµsê³h@2ìžì¿±\@2õµsê³h@2øÎp:û@2õµsê³hÁ.„NÜC,¥?€‚ñêã ?­Ì£\C)»?³eI2·?¥Â²ãE…|?¢û`ÞŽ q@8Ù?›’qvš°•?¥¬ŽáíÛ~?¶ÚOTá?Ú@/@õ{?®8i¿=F @8û—?Ÿ|–„aQ?™Uîœsú?¡F·ˆõª@8 Ø@@@@@,?ð?ð?ð?ð?ðøøøøøøøøøøøø•@¥Å‹Æ§ïž@¥Å‹Æ§ïž@¥Å‹Æ§ïž@¥Å‹¬q ´@¥Å‹Æ§ïž@¥ÅŒ"h Ô@¥Å‹Æ§ïž@¥ÅŒ"h Ö@¥Å‹Æ§ïž@¥Å‹¹Œ~(@¥Å‹Æ§ïž@¥Å‹Æ§ï@«Ú†§ï²@«Ú†§ï²@«Ú†§ï²@«Ú†Â&€@«Ú†§ï²@«Ú†§ï²@«Ú†§ï²@«Ú†§ï±@«Ú†§ï²@«Ú†Ü]cˆ@«Ú†§ï²@«Ú†Â&€œ@0-¥œàv@0-¥œàv@*³t¼j~ù@*³×Ûôˆ@)´ýó¶E¢@)µ%F +¦L@*#¼ÓZ…ˆ@*#× +=p¤@*#¼ÓZ…ˆ@*#× +=p¤@*#¼ÓZ…ˆ@*#ñA [Â?É^žQ5P‚?°çR;?‘$Cê¡@í?‹ª½¨ª8v?íOþtà?³×OÓ+y?ÐbMçê_x?’˜‰%F²?¹º–Èj?0ÜN :s?ÝIMÎ?Kcìë?€bMÕky?Œ¯þuõí?‚oÁÆÜ§÷?‚ãaÎúvh?†‰Oú|q?†½ª»—@@@@@,@&?ð?ð?ð?ð?ð?ð¿%Ë1X? þ?Að?fÏæiºÛ? +4ó—*K@¥Å‹çï‘ã@«Ú†ÀÖ[?!³vû¿y?ÓSë¤?>Ô+d?¶·?+ :Ž-y @Ÿs›è›@–@¦ìûçl‹D@¦ìüí‘hs@¦ìûçl‹D@¦ìüí‘hs@¦ìûçl‹D@¦ìúáG®@¦ìûçl‹D@¦ìþš@¦ìûçl‹D@¦ìúÇË)@¦ìûçl‹D@¦ìý²-V@­G}ó¶E¢@­GyXbN@­G}ó¶E¢@­G}<64@­G}ó¶E¢@­G{çl‹D@­G}ó¶E¢@­G}IQ‚ª@­G}ó¶E¢@­G~ÿ—%@­G}ó¶E¢@­G€'RTa@8%öý!ÿ.@8# àÞÒ‰@2Ê^5?|í@2Ë/ìVÕÐ@2•`A‰7L@2—ï²-@2TmÅÖ8†@2V“t½@2TmÅÖ8†@2VR½<6@2TmÅÖ8†@2Vlô!.?îŠõ ?‘6 '8?’´ýBI{?ŽAtùð¥t?’õ¡EE?“°™²!¨w?ˆÿÀ)T¿Æ?“£PuòN?’±ä?‘ǧ?D6?’$) ‘?’›â¾Ð'µ?ƒ<Õp?ŽátÖÁ»‡?† + Ðló]?Q§ ç´Í?>LR_5?Žrø·óæ@@@@@*@,?ð?ð?ð?ð?ð?ð¿&çÌ3P?V\–Ì ?E§´%CüÃ? {èÑ—@¦ìý·J@­G}zw²W?^Ý2ä:Ã?/‡ª£ï½ñ?´•0f’?ZöÕYZÌw~?˜U6º y?›f°ùr[‚?—|M4ä^Ì?˜!ÄD‘?šbk6â÷¡@@@@@(@(?ð?ð?ð?ð?ð?ð¿b¤§ä?xâsg5?shYþ*’?d½‡òXÔ@¯“h±q¦…@¬VZoøÄ?0–AµÒq?„{EqÐÒ5?F<7 _öÂ?âE£b§®Ø@Ÿg¡Ÿž@˜@ ÖbÐå`B@ Ötÿ§i @ ÖbÐå`B@ × Ä›¦@ ÖbÐå`B@ ×-V@ ÖbÐå`B@ ×33333@ ÖbÐå`BÁ.„€@ ÖbÐå`BÁ.„€@ C A‰7L@ C&>©Ê@ C A‰7L@ Bš¬1@ C A‰7L@ Bå¡ÊÀƒ@ C A‰7L@ A~¸Që„@ C A‰7LÁ.„€@ C A‰7LÁ.„€@8|ÚQ@8g‘·b@2½‘hr° @2‚‚@·€4@2ƒt¼j~ú@2XbMÒò@2 ¿±[W?@1…Â\(ö@2 ¿±[W?Á.„NÜC,¥@2 ¿±[W?Á.„NÜC,¥?¬tÕJ”?Êóÿ¥Yzí?°$:H’T=?ªö;kE_@8Iç@8Ù?’t D5·±?žyÛ>Ócv?’üüšë‚J?ϪZ»y@8S@8û—?ªT +a?¶[9»Ü×\?´6¤_[í?£èŠFÊ@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøø™@ž¬“t¼@ž¬ 3gã@ž¬“t¼@ž«Í¼|Mì@ž¬“t¼@ž«å/ üØ@ž¬“t¼@ž¬=„‡$7@ž¬“t¼@ž¬yYGî‚@ž¬“t¼@ž¬s„f·Ö@§¹6E¡ÊÁ@§¹2F¡ŠÐ@§¹6E¡ÊÁ@§¹I{ 6ó@§¹6E¡ÊÁ@§¹(¿ydð@§¹6E¡ÊÁ@§¹SJVÍó@§¹6E¡ÊÁ@§¹@ÉB-¹@§¹6E¡ÊÁ@§¹C¬Ér@7-¥œàv@7,Ýøæ`@4O|í‘hr@4bLÔmU@3‹"Ðå`B@3¼ªñfñ‡@2¨è§æ›@2¶5îh‘@2¨è§æ›@2 í³Åx@2¨è§æ›@2¢‚ P€À?Œßô™ 8+?«ÈÉ…K“º?‘¢éwï[W?’Ñ"Ôó‰?Ÿ®[Œ@F'?”ZÕ&ôv?e™”XWø?¢Ê A:?¥ü®Œ°?• ,É%L1?¢©PB’ël?š$nçæ¶¦?„†Wl÷ŒÎ?¦í‘Ø<Ç?†nbÆ?ŠÊ)á€zT?­ÓJ(ß.f?›ÿ ø«ã@@$@"@"@3@,?ð?ð?ð?ð?ð?ð?†Ž˜ƒCÀ?v§d¸¦?W¶6–«ùÀ?hÏúÍi.@ž¬:¶ßŒ@@§¹?‚ëc +?wf7/àÙ?‰ {þúƒ?èF~*çô@ L³¶ &@Ÿg(S)À@š@­f/Ÿ¾@­fp£× +@­f/Ÿ¾@­fžƒä%¯@­f/Ÿ¾@­fž¸Që…@­f/Ÿ¾@­fž5?|î@­f/Ÿ¾@­f›À6ã@­f/Ÿ¾@­f›çl‹D@¦uƒn—@¦uƒn—@¦uƒn—@¦uƒa@P@¦uƒn—@¦uƒ•%@¦uƒn—@¦uƒa@P@¦uƒn—@¦uƒˆe”¯@¦uƒn—@¦uƒ9Àëí@0ÉÎ_oÒ@0ÉÎ_oÒ@*a‰7Kƨ@*a–R½<6@*éxÔýô@*ö”Fs‚@'úÇË)_@'úÔ,<žî@'úÇË)_@'úÔ,<ží@'úÇË)_@'úÔ,<žî?É^³Dw'?Ï[äeN ?‚äÍ“½E'?†ˆ#.÷?†‰Oú|q@@@@@,@*?ð?ð?ð?ð?ð?ð¿QzNs`¿ ¬™÷Ð?9\*¿Ñ?Ä£„-Ân@­fœËÒ@¦uƒa«Ú?H"?Væ„?$„ô ?Œ§ ±E?B¨d>8à +@Ÿs#ÿ~Ï@›@¬s5?|î@¬s¥ãSø@¬s5?|î@¬s$Щ*@¬s5?|î@¬s)Q‚©’@¬s5?|î@¬s;dZ@¬s5?|î@¬s ÌÌÌÍ@¬s5?|î@¬qÿHË’@®OàA‰7L@®Oò-V@®OàA‰7L@®O»quŽ"@®OàA‰7L@®O¿U›=@®OàA‰7L@®OÌ"h Õ@®OàA‰7L@®O¼PHñ@®OàA‰7L@®UtzáG®@8h†YJôñ@8c•$Ý@4sS÷ÎÙ@4~žš@3¢-V@3­p£× +>@3TmÅÖ8†@3aÅo@3TmÅÖ8†@3`-à r@3TmÅÖ8†@2³ê³g ù?îŠõ ?¢N`¡?—ø}òg?nii)â?§3!E?ãü+Õº?îŠõ ?¥ £áÔ?•ÙK°FÑ?”ÑÓTœ?¥mÉ£&Z?ø8Ý烔o?‹f°ùr[‚?žk8¤é'è?$¿ÀºÍ?–]ªÍ-W,?§‘¶s½™€?ºìÝóqmE@@@@@$@$?ð?ð?ð?ð?ð?ð¿P6¸x¿Œ/—dà?s ´ +??£ŒØ`ÿ8@¬sõ¯´¾@®OÔ"ÃÂZ?…Üæl\6??”æU>b?õ„æÍÆ^@ >+†9;Z@ŸfO‘½@œ@®‡^5?|î@®‡^5?|î@®‡^5?|î@®‡?ö”E@®‡^5?|î@®‡ŠqÞi@®‡^5?|î@®‡uÜÆ?@®‡^5?|îÁ.„€@®‡^5?|î@®‡ÀÄ›¥â@­ í‘hr°@­ äZ¬@­ í‘hr°@­ ÚQÎ@­ í‘hr°@­ é 'RS@­ í‘hr°@­ 6®}Vn@­ í‘hr°Á.„€@­ í‘hr°@­ ™XbO@8 ]cˆe”@8¼j~ùÛ@4½‘hr° @5I#¢œwš@4.ùÛ"Ðå@4Žƒä%®æ@3–ý!ÿ.I@4Ðå`AŠ@3–ý!ÿ.IÁ.„NÜC,¥@3–ý!ÿ.I@3›6z—?—¤o„C?ÁZùÓ÷¼?б†óM”?ÃÓjÕ0«@8Iç?¦N›:?Œs¤DÅÐ?Ôo,?Ø0Ç?ÇÎÉM‹0D?¾¡=Cì(@8S?¤ÚÄ^Uâô?FpÉ'Ý?¯KÂ^ +N?Ä'˜Á*Ù?Áøºˆ5Ê@8 Ø?´¿°$®@@@@@?ð?ð?ð?ð?ðøøøøøøøøøøøø@­Œ&ffff@­Œ&§ï²@­Œ&ffff@­Œ'ÈK]Ë@­Œ&ffff@­Œ'Ë)_@­Œ&ffff@­Œ&€IR@­Œ&ffff@­Œ$ xG@­Œ&ffff@­Œ#•&@\;dZ¬@\:^5?}@\;dZ¬@\=!ÿ.J@\;dZ¬@\>($ x@\;dZ¬@\6ý!ÿ/@\;dZ¬@\8ºÇË@\;dZ¬@\8}¿H@4›¹Œ~($@4›×ái—Ò@2³S÷ÎÙ@2´•*™1@2‹"Ðå`B@2ŒPHð@1øDЩ*@1úqÞi­C@1øDЩ*@1úu%F @1øDЩ*@1ú…‡“ݘ?|Ñb×¶@?š¾ßÍZ?“›ÿ3?Ça_b‹?’õ¡EE?’_‘Oo¨Ž?|¬h2:“?“Œõ¼dÛã?‘å†36åG?‘§›ßÉîj?”V ìi!¾?‘«VTÓ?‚€Û€¸Ì?Å9–o?…µsê³g¡?„ªÎZ´?‹ ˜1 D@?ˆ”Tj«›ª@@@@@,@*?ð?ð?ð?ð?ð?ð¿A´ §¨¿1ñ*Gà?*h îb? Êv Xwv@­Œ%¤«…”@\9“+L?IÝŽ[u"´?@ába.? ‘‘ý”>?ŠY)y7Šÿ@Ÿf,™{ïˆ@ž@®±MOß;d@®±T9Xb@®±MOß;d@®±zÇË)@®±MOß;d@®±l~($ @®±MOß;d@®±WškP±@®±MOß;d@®±y k¹Œ@®±MOß;d@®±gy¦µ @ªNt¼j@ªN V@ªNt¼j@ªMVð¹@ªNt¼j@ªM=¿HÍ@ªNt¼j@ªM.p:û€@ªNt¼j@ªMä%®æ2@ªNt¼j@ªM”É…ðn@7í¥œàv@7åF +¦L0@3i‡+ @3>}Vlô@2çKƧïž@2ºdÂø7µ@2(è§æ›@1ûxFÜ^@2(è§æ›@1üj~ùÛ#@2(è§æ›@1üPHð?ª[Xxöp?« 烧?°=‚âEDA?®ã kS“?³¨¾ ÃË?°û’—?žŒÝÙ›P?ÐÏêÉgUm?Õ&cu?×=¿×©Dò?¶êvÏÛÂI?ÏpQ…iBÔ?¬ãfi’?Ÿ ‰$FÓ)?¢ÀB§š7?š +r˜ +Dw?ª ßJ‘›?±-÷ôÔß@@@@@@*?ð?ð?ð?ð?ð?ð?tÍD#'¿@GI¿ ?i~|.Û™?‚º÷ +ý÷@®±\xÂÇ…@ªMñëI]?‰Çª0è3Æ? â‘æ¯bô?ÔK¨¡õ³?ô µóª@Ÿd¨à¯`Ë@Ÿ@ =p£× +@ ;¥ãSø@ =p£× +@ AbJ˜@ =p£× +@ =42÷Õ@ =p£× +@ =´lš@ =p£× +@ 5f*h@ =p£× +@ (ÑQ­@«Ì›¥ãSø@«Ì/Ÿ¾@«Ì›¥ãSø@«Ì£ÈZ'ê@«Ì›¥ãSø@«Ì¡¸ƒ¢b@«Ì›¥ãSø@«ÌžŠ5Ð@«Ì›¥ãSø@«Ì—®—yë@«Ì›¥ãSø@«Ì˜ú¨×@6÷â‚@·€@6õ˜‘g™@3GÎÙ‡+@3Iß[YÈ@2)Û"Ðå`@2.FÊ9´»@1hè§æ›@1j†6\+¦@1hè§æ›@1d߯íÍ@1hè§æ›@1_"¬Å@1‚@·€5@1Sê³g ù@1‚@·€5@1[C•%?|çµB &€?À„2w²–8?³9 2me?­hiýFÌ?¸{z¼¤ù?µ5ú`?€Ã{s°úi?°ŒbU'V…?¡n¡Žv›-?¢ÁÛ/’:?¸`‡å53?¶Þ¥¦9?ƒ1BO2˜?Ç?ý‰(£?¿…gê°Ä›?¶lê@†²?¦“€œ„%5?ÄmzÅÅÉ@@@@@,@,?ð?ð?ð?ð?ð?ð?{& ›?knކ?kHðvÖÃþ?ƒ»šÐ@¨‹÷.ÙÒ@œûRv°+{?zk¿© +«ê?”~§§??ãÁ0œg+@©H¨è=t@Ÿ\ãéˆâ>@¢@¡€vÈ´9X@¡€qhr°!@¡€vÈ´9X@¡€hõÂ]@¡€vÈ´9X@¡€}Vlô@¡€vÈ´9X@¡€x†YJõ@¡€vÈ´9X@¡€g†Â&@¡€vÈ´9X@¡€dg8~@¨Ê³¶E¡Ë@¨Ê¸Ôýó¶@¨Ê³¶E¡Ë@¨Ê¾¸Që…@¨Ê³¶E¡Ë@¨Ê¹XbO@¨Ê³¶E¡Ë@¨Ê¸ï4Ö¡@¨Ê³¶E¡Ë@¨ÊÕsê³h@¨Ê³¶E¡Ë@¨ÊÙJôðØ@7Ç>«6z@7Éûçl‹D@1ã÷ÎÙ‡@1Ú=p£× +@0¾V“u@0ªxl"h +@0?ò䎊r@0+P°ò{³@0?ò䎊r@0#&Á½¦@0?ò䎊r@0$ohÜ?”¼íÒh??ß‹’bÏ?¥¬ã×a6H? „rÓ‚¼?©Ë;†ÌçÈ?¬WfŠ¥8?}Ñ¿ž,?“-N•I`(?ŸP­Ñ‚Ÿ½?›|¦l¯âU?¡SmImbˆ?¡ùŠÀs›?©4¡y©ØX?Œ».êxóÚ?£L%.I£0?¥·VK}Ø +?•Vû›¦Ã¡? "ƒrÅÇ@@@@@&@$?ð?ð?ð?ð?ð?ð¿TßrˆÈ?v- í¸?aµ{ûyr„?a©-j1m@¡€pQ&R @¨ÊÃ;»B?€3»ŸRÜ?†„CM™?Ý…ÞÍW{h?õM +ÞÎ*Ø@Ÿe‡K.Œ@£@¤{ß;dZÁ.„€@¤{ß;dZ@¤y½p£× +@¤{ß;dZ@¤yσ{J#@¤{ß;dZ@¤y°°ò{³@¤{ß;dZ@¤y¢ÞÑ·@¤{ß;dZ@¤y´•*™@¨â\(õÂÁ.„€@¨â\(õÂ@¨äÂMÒñª@¨â\(õÂ@¨äÖ“u@¨â\(õÂ@¨äåo@¨â\(õÂ@¨äû/ìV×@¨â\(õÂ@¨å Ô•@5Ù*0U2bÁ.„>¤µÜÆ@3”›¥ãSø@1q ²•ê@2ù7KƧð@0h$ xG@3:Ô,<ží@/«Æ§ï³@3:Ô,<ží@/ŸoÒòå@3:Ô,<ží@/ŸØ­«ŸV@8J¨?š{ ½÷lÙ?¥d· +?¤ïâ NŠ:?¦éÕž‹æe?”øÕ¥ Ìž@8J¨?ž¹i…V‚•?±êùŽ‚?±2ý}û¢í?–žóB» ”?™¯m,·¦h@8p÷?™î  lƒ?‹?ü}(´3?†Á{0Ÿà®?޹Þwò,?‰ö±«tï@@@@"@?ð?ð?ð?ð?ðøøøøøøøøøøøø¤@¤š{dZ¬@¤šs¶E¡Ë@¤š{dZ¬@¤š­BÃÉï@¤š{dZ¬@¤šsê³g¡@¤š{dZ¬@¤šn¾ß¤A@¤š{dZ¬@¤šf1ø @¤š{dZ¬Á.„€@£¢éxÔýô@£¢ñhr°!@£¢éxÔýô@£¢ÀÑ·Y@£¢éxÔýô@£¢óê³g¡@£¢éxÔýô@££‡+@£¢éxÔýô@££/iDg9@£¢éxÔýôÁ.„€@8^Hè§æ@8cS&Â@4Å?|í‘h@4‰ÀëíúD@3V”@3Œ]cˆe•@3 ù kº@2ÓŠ Þ@3 ù kº@2â‚@·€5@3 ù kºÁ.„NÜC,¥?Œs¤DÅÐ?°/Ë +ð¾Ê?œ4D›´A£?ª+½»°ý?QÊÃv8F@8Ù?гá‡}?±áìH{üV?¦² ͉«?ÌU¬¼ÿ/?¸Ábª½ +ˆ@8û—?¡7‡V/Žr?«’qvš°•?šëetîü??›a½%¨?¤ñ¹ÜY¡I@8 Ø@@@@@,?ð?ð?ð?ð?ðøøøøøøøøøøøø¥@¦ì>vÈ´9@¦ì8bMÓ@¦ì>vÈ´9@¦ìXï4Ö¡@¦ì>vÈ´9@¦ì[J#9Á@¦ì>vÈ´9@¦ìQÎ_@¦ì>vÈ´9@¦ì/–»™@¦ì>vÈ´9Á.„€@¨¤²-V@¨¤q&éxÕ@¨¤²-V@¨¢Ô!-w@¨¤²-V@¨¢‰7KÇ@¨¤²-V@¨ âu%F @¨¤²-V@¨ Üàuöý@¨¤²-VÁ.„€@7úqÞi­C@7åéá°‰ @3W+ Iº@2±‰7Kƨ@3'KƧïž@2…¸Që@2Vý!ÿ.I@1sn—P@2Vý!ÿ.I@1nÅm\ú­@2Vý!ÿ.IÁ.„NÜC,¥?1·†Æjñ?¨9)×ðu?µeäàJª>?¬&¾L=§‰?±ÉíDØp@8Ù?•²»UbB2?©+Q™e]-?Âí³HÜ?ß–_-¯0Þ?ç‘Dú¹@8û—?ˆ†Ô‡º:?¹Ìˆ„º¬?ŒR‹w#{?°,U¬f{?±µÉïà 2@8 Ø@@@@@,?ð?ð?ð?ð?ðøøøøøøøøøøøø¦@ŸsÜ(õÂ@ŸsÝ/Ÿ¾@ŸsÜ(õÂ@ŸsÙÎx"@ŸsÜ(õÂ@ŸsÉ7LYú@ŸsÜ(õÂ@ŸsŽÅ@ŸsÜ(õÂ@ŸsО€^Ô@ŸsÜ(õÂ@ŸsÝ{Õ@¯h33333@¯h33333@¯h33333@¯h4ã¹Ý@¯h33333@¯h2ñª0„@¯h33333@¯h3t¼’{@¯h33333@¯h5Ré$í@¯h33333@¯h?¾vȵ@3Q|ÚQ@3QÅo@0ÜIº^5@@0Û6yþ$ú@0¹7KƧð@0¶ö”GB7@0!:’£T@0vȱy©@0!:’£T@0.±¸õ~@0!:’£T@0jÔ‘e?‹¿òȧx?’ÜQ>¿È?‘|ú»½]x?|çµB &€?’‰Ô, þ›?ºvŽüV?-õIGmR?’Ô"£‘˜F?‘f«q{Ü?ƒ0x±æs?Ž·D^0'?ƒ†Kèá¬O?ƒc—[|Â?‡Ý5yƶ\?‡ŸHÄLÎâ@@*@$@$@;@9?ð?ð?ð?ð?ð?ð¿EÝ\¿>Ja€?=.”?Êç? ”n$d^@ Pι“.G@ªÕ9„[Š?\°‰lÛ+?@ÂÙ#e®?ÄÚS}ð?‹Ÿ+@8Iç@8Ù?Œs¤DÅÐ@8Î÷@8i§@8Å@8S@8û—?£ØE.9ì@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø©@©üyXbN@©üy‡+@©üyXbN@©üzCþ\’@©üyXbN@©üz…‡“ß@©üyXbN@©üz–½@©üyXbN@©üwö+jé@©üyXbN@©üx*™0¾@¢MÌÌÌÌÍ@¢MÌÌÌÌÍ@¢MÌÌÌÌÍ@¢MËíúCþ@¢MÌÌÌÌÍ@¢MÌVÕÏ«@¢MÌÌÌÌÍ@¢MÌIº^5@¢MÌÌÌÌÍ@¢MÌô!-@¢MÌÌÌÌÍ@¢MÌ¥zxl@/‰^žš@/‰^žš@)Çï²-@)Çâ‚@·@(÷Oß;d@(÷süPI@(™b¶®~@(™0¾ í)@(™b¶®~@(™0¾ í)@(™b¶®~@(™0¾ í)?É^³Dw'?ÉGãA­÷?‘*"AaIÐ?‹¹GüÞõ?ëÎ@ A2?¸û:?ÐbMçê_x?’ ,øÕC©?ƒ‰/BH?@§[*^?ÝIMÎ?NÂò‚Ì`?€bMÕky?Œ­·Ž~('?‚q6tNø7?‚ãaÎúvh?†‰Oú|q?†‰Oú|q@@@@@,@(?ð?ð?ð?ð?ð?ð¿LÙû\?&´è?6oè´üG-?$Üz­ºŠQ@©üxßYÎ@¢MÌšFêÍ?E’åD¸j9?3À†™ë?†Ø°. Œ1?a ç(ò@Ÿs +âc +@ª@¯l´¼j~ú@¯l´¼j~ú@¯l´¼j~ú@¯l¹¦µ @¯l´¼j~ú@¯l¹=Ùc@¯l´¼j~ú@¯l»˜Çâ‚@¯l´¼j~ú@¯l²þÅm\@¯l´¼j~ú@¯l¶‡+ @ XÑë…¸@ XÑë…¸@ XÑë…¸@ X×´¢3œ@ XÑë…¸@ X×eýŠÛ@ XÑë…¸@ Xß¾vÈ´@ XÑë…¸@ XÛ²þÅm@ XÑë…¸@ X×´¢3œ@4=:’£@4<Æ?@1µãS÷ÎÙ@1²×süP@1V”@1ï4Ö¡b@0úÔ,<ží@0ò@·€4n@0úÔ,<ží@0ñN;Í5¨@0úÔ,<ží@0ñä÷eý‹?ð°–Ž]?‘6 '8?’‹»Ùï§? Ð ÷Ž ?”NtyÞ"§?“lP {“›?ð°–Ž]?•%!{‚A?’±ä?”ãâˆm?š¹'¤Ò ?–,}úºoJ?ð*wjs—?R©i»èi?†Æ‹™ÿ?„E£R ÕY?‡Ä­‹›Ü?–d‘…’Ã~?ð@@@@,@(?ð?ð?ð?ð?ð?ð¿e²3.v¿lQ„Ã.€?]ŠVw®†?1^œ ”@¯l·Œ9˪@ XÛñþ ƒ?loè·'Âð?@²xÍ30Ð?Í +Ù³˜Ì?i‹Ë0a@@Ÿs`{f@«@¥b¾vÈ´9@¥b¾vÈ´9@¥b¾vÈ´9@¥b¼¾ß¤@¥b¾vÈ´9@¥bº¬Ùè>@¥b¾vÈ´9@¥bº^5?}@¥b¾vÈ´9@¥b»J#9Á@¥b¾vÈ´9@¥b¼¹#¢@¬[Ä“t¼@¬[Ä“t¼@¬[Ä“t¼@¬[Åzxl#@¬[Ä“t¼@¬[Å®æ1ù@¬[Ä“t¼@¬[ÃñA [@¬[Ä“t¼@¬[Ä2ÊW©@¬[Ä“t¼@¬[Æ$Ý/@3Ì]cˆe”@3Ì]cˆe”@1û Iº^@1ü£n.²@1š~ùÛ"Ñ@1›W>«6z@1n_oÒ @1q$Ý/@1n_oÒ @1nÅm\ú­@1n_oÒ @1n±Ä2ÊX?|¬Çëý ?qÂ' +B›?”^RžpX? Ð ÷Ž ?’[9ƒÍ,?‘®¬nÒMê?|¬Çëý ?’j•×›c?‘t‰WZñ?‘²)ò@a,?’pP‡È»?‘¿¤üî¾Ö?‚¸“Îè ÷?]ÒivLÿ?„³3Z\ð…?…bv{3dZ?‡ø¢:›¸1?ŠEÝ‹N@@@@@,@*?ð?ð?ð?ð?ð?ð¿EvO$ð?/_©à?8ŠVPOš’?'2½Uˆ@¥b¼Þ„ b@¬[Ä…´Ð?XoúŸ¿)?G6ª\µc?½á–É?™™æÇQ @Ÿf`bØÄ@¬@©Ž‡+ J@©Žˆ´9X@©Ž‡+ J@©Žò×s@©Ž‡+ J@©Ž‚©“ á@©Ž‡+ J@©Ž~BZîc@©Ž‡+ J@©Ž‹Æ§ïž@©Ž‡+ J@©Ž‹¹Œ~(@¬¨r° Å@¬ ƒn˜@¬¨r° Å@¬¬ô!.@¬¨r° Å@¬«¹Œ~(@¬¨r° Å@¬¡ÿ.Hé@¬¨r° Å@¬§8}¿@¬¨r° Å@¬§RT`ª@8Y*0U2b@8Gï²-@3° Ä›¦@3Áÿ.Hè§@3,j~ùÛ#@3%Éã½@2Öý!ÿ.I@2Ø7´¢3œ@2Öý!ÿ.I@2ÒÞÑ·@2Öý!ÿ.I@2аò{²ÿ?3ßa=„?’u~•Ñ?’µ<ëvar?™¦|3Ä?’o?P´À?—Ò¸ùBz3?±>ÏÅósN?”­ŽzF”?’üüšë‚J?œ¾,#“t¿?’ºñS©YÖ?”6ð a@B?¾ÛzYï@?œ‘z¥æ?lû˜¡R?&à|Òß?Š—à `ž?‹Ûx§Þ@@@@@$@*?ð?ð?ð?ð?ð?ð?Bë¿ ?]¶å!P?YO +7#”?H]U5ï¿@©Ž‰$m +¬@¬¥%˜”^?{â½o“Á?\„¾%V*?é§À o;?¡š[–OÞÅ@Ÿp´OÌ~-@­@ž€œ¬1'Á.„€@ž€œ¬1'Á.„€@ž€œ¬1'Á.„€@ž€œ¬1'Á.„€@ž€œ¬1'Á.„€@ž€œ¬1'Á.„€@¦m]²-VÁ.„€@¦m]²-VÁ.„€@¦m]²-VÁ.„€@¦m]²-VÁ.„€@¦m]²-VÁ.„€@¦m]²-VÁ.„€@8ãg ù lÁ.„>¤µÜÆ@3Iº^5?Á.„M‰ûçm@2¬j~ùÛ#Á.„QnÙ‡@1Ì¿±[W?Á.„NÜC,¥@1Ì¿±[W?Á.„NÜC,¥@1Ì¿±[W?Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø®@¬¼ß¾vÈ´@¬¼à@¬¼ß¾vÈ´@¬¼à[À7@¬¼ß¾vÈ´@¬¼ßU›=@¬¼ß¾vÈ´@¬¼Ü£n0@¬¼ß¾vÈ´@¬¼ÖÕϪÎ@¬¼ß¾vÈ´@¬¼×éùr@¤üj~ùÛ@¤ú¬1@¤üj~ùÛ@¤ýÈK^@¤üj~ùÛ@¤ü(õÂ@¤üj~ùÛ@¤ü‘ÑN<@¤üj~ùÛ@¤ xG@¤üj~ùÛ@¤¯·é@5¥öý!ÿ.@5¦z–¼@2’ Iº^5@2’þÅm\û@1Ÿ²-V@1Ÿ·éùr@1Ì¿±[W?@1ÉŒ~($ @1Ì¿±[W?@1À¸ºÇ@1Ì¿±[W?@1À–»˜Çã?1·†Æjñ?qÂ' +B›?‘¶å¤wk½?U›=ÈK?¢†\›†oÈ? V“uÁ.„QnÙ‡@1ÿò䎊rÁ.„NÜC,¥@1ÿò䎊rÁ.„NÜC,¥@1ÿò䎊rÁ.„NÜC,¥?1·†Æjñ@8#˜@8¾:@8 >+@8Iç@8Ù?|¬Çëý @8Î÷@8i§@8Å@8S@8û—?‚† SFñ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø°@¨ Ö‡+ @¨ Ö‡+ @¨ Ö‡+ @¨ Ö‡+ @¨ Ö‡+ @¨ ÖE¡ÊÂ@¨ Ö‡+ @¨ × +=p¤@¨ Ö‡+ @¨ Õµsê³@¨ Ö‡+ @¨ Õ¨Xy>@#$Ý/@#$Ý/@#$Ý/@#¸Qì@#$Ý/@#êJŒ@#$Ý/@#m\ú­@#$Ý/@#¼£m@#$Ý/@#m\ú­@2ò䎊@2 IåP:@,²-V@,O „M@*Ýó¶E¡Ë@*ÝÙb¶¯@)-úCþ\’@)-Òñ©ûè@)-úCþ\’@)-à qv@)-úCþ\’@)-ÅÖ8†[?É^ž6õP?ÉGãA­÷?‘"žæÆó¡?‹²MÿAÿ8?òǹíT­?·t¤¢‚J?ÐbMÝn½?’MœœN ?}Ò€º‡?3.Ylî?ÔÒ@úˆ‘?Uÿyu”#?€bMÕ]f?Œ°¶.Ä+Æ?‚s@ˆaÛ?‚ãaÎúvh?†‰Oú|q?†½ª»—@@@@@,@*?ð?ð?ð?ð?ð?ð¿D”È=6>Ñy”æ?(}éÉLè? Ô_[èY2@¨ Ö;fÔ‚@#†_¡J?7ÎvYf?Ud˜C ¬?kAG}ª©Š?.fÂε@Ÿsçw(@±@¢twKƧð@¢twOß:@¢twKƧð@¢txÔýóµ@¢twKƧð@¢tx“t¼j@¢twKƧð@¢tyJôðØ@¢twKƧð@¢tv»˜Çã@¢twKƧð@¢tvð¹@©Ãn—@©Ä“t¼@©Ãn—@©¿Ø­«ž@©Ãn—@©¾žš@©Ãn—@©¿¤?åÉ@©Ãn—@©ÂÞÑ·@©Ãn—@©Áä÷eÿ@8¥öý!ÿ.@8¡$Ý/@3; Iº^@3;àÞÒˆÎ@2²-V@2Aò×s@1èè§æ›@1éÀëíúD@1èè§æ›@1éã¼Ô@1èè§æ›@1èè§æ›?¢F^ì¼Sð?¦Ì '?’ëÏ™¨?:LÓá +í?’¥.Kn Í?’£sðU Z?ˆÿÀ)T¿Æ?’0nà=Q“?”p¶I”“ž?‘.}áµ$?’£ôùÎ8ï?’„³GÓ’?¢Z°`´ä(?·ïö)h?‡»¢Øˆ‹?„l¯¸‰ŒÎ?ŠEÝ‹N?‰]³ß’Ý@@@@@,@(?ð?ð?ð?ð?ð?ð¿@5_;¾¿>¿—/ø?@}4«6z@1V”@1œô!-w@1 ¿±[W?@1 \ú¬Ùè@1 ¿±[W?@1 «ŸU›=@1 ¿±[W?@1 cˆe”°?|öOÿÝ?äm°û0Ž?‘.Ò®ó_ ?‹ä†€{6è?‘héø†|?æöæ×t?|¬Çëý ?’¼  g¶?·t¤¢‚J?½¶³±×ò?‘77…Âç?¦QÎð\ã?‚s@ˆaÚ?ŒöOÿÝ?ƒ{¬ÉW?ƒ3¸Î{Z?‡&üòI?†Ü‘ °Ô@@@@@*@$?ð?ð?ð?ð?ð?ð¿1RÛ?0Õ²?&ÀJPit?0-&¼Œä@¨ 1LÏ:e@® +5ü?F”¥Úè¡?PMNòã73?›[ãÁ¿ÉÄ?«5Ü7Ÿ¼@ŸfØP'@³@£[µÂ\)Á.„€@£[µÂ\)Á.„€@£[µÂ\)Á.„€@£[µÂ\)Á.„€@£[µÂ\)Á.„€@£[µÂ\)Á.„€@šïýó¶E¢Á.„€@šïýó¶E¢Á.„€@šïýó¶E¢Á.„€@šïýó¶E¢Á.„€@šïýó¶E¢Á.„€@šïýó¶E¢Á.„€@804mÅÖ8Á.„>¤µÜÆ@3ÜIº^5?Á.„M‰ûçm@2¹7KƧðÁ.„QnÙ‡@2«6z‘Á.„NÜC,¥@2«6z‘Á.„NÜC,¥@2«6z‘Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø´@¦¾vÈ´9@¦ÁÊÀƒ@¦¾vÈ´9@¦Áª¤Æî@¦¾vÈ´9@¦Å +[Zf@¦¾vÈ´9@¦Ây>Iä@¦¾vÈ´9@¦Ãc/¹«@¦¾vÈ´9@¦ÃÁÝèŸ@“—}ó¶E¢@“—…¡ÊÀƒ@“—}ó¶E¢@“—}â~Ú@“—}ó¶E¢@“—|•šZ@“—}ó¶E¢@“—}vÎßB@“—}ó¶E¢@“—{/@“—}ó¶E¢@“—äGÖ@7åöý!ÿ.@7Ûö   8@2?|í‘h@2º°âk@0ÒÐå`A‰@0ÑÕefñ @/ÑÑN;Í6@/Î ÿ¤†¨@/ÑÑN;Í6@/ËÀFaë@/ÑÑN;Í6@/Í>ÄÀI?|ï"<¶~~?…†Ò€Öü?‘M8r»v??‹±À&ÍÄK?‘cŠÚ eW?é“újóá?‚Á¤õ“²&?’¬Xõ£ä£?ŠH«?7OÑi?‘††7’k?”œ›ƒÇ? ¹p0$?Q[/9À?ƒp±>ÜÖ?ƒ`âä>r?‡"‘K©…?‡R&U x@@&@ @"@7@1?ð?ð?ð?ð?ð?ð?8ÄöBX¿L ¥|? +j=µžD?8ۃ˷S@¦¡röt@“—Öö?*å»@â?Á?±Ìž¿@Ÿb‚àËÏì@¶@¥Òñ©ü@¥²-@¥Òñ©ü@¥Œ‹C•‚@¥Òñ©ü@¥‘hr°!@¥Òñ©ü@¥ Ä›§@¥Òñ©ü@¥’×sü@¥Òñ©ü@¥Œç¯¸@¯'W +=p¤@¯'W +=p¤@¯'W +=p¤@¯'XbMÓ@¯'W +=p¤@¯'WOß<@¯'W +=p¤@¯'W +=p¤@¯'W +=p¤@¯&²° Äœ@¯'W +=p¤@¯'V‡+ @6ò䎊@6[W>«6@2™º^5?}@2™#¢œwš@1©Û"Ðå`@1ªOv`@1 +0U2a|@1 +~ùÛ"Ñ@1 +0U2a|@1Hšu%F@1 +0U2a|@1 +¦L/ƒ|?1·†Æjñ?Æ¿5›7÷?’‹»Ùï§?‹¯eU5?›ÕZæ´Ä?‘…Rgå.?|¬Çëý ?’NÛˆV(?‘¡Kd·´+?>\‰å‘?• ¸°R¨?‘A_f;j?Žd°3š>?Œ­·Ž~('?ƒ!A +mº¹?ƒE 8?ˆCns¥ ?†£îž«î@@@@@@?ð?ð?ð?ð?ð?ð¿)ªGç ¿„‚/OZ€?= _jý [?Žé¯çc,@¥d¡~F@¯'A´çÈj?\Iî}­?®òÇ[›9?Ÿ½´hu@gþa}G@Ÿf8¤@·@¨G/Ÿ¾w@¨G0 Ä›¦@¨G/Ÿ¾w@¨G0‰ 'R@¨G/Ÿ¾w@¨G,<žìÀ@¨G/Ÿ¾w@¨G1[W>ª@¨G/Ÿ¾w@¨G,²•éâ@¨G/Ÿ¾w@¨G,ô!,@¦¼ã× +=q@¦¼ãn—@¦¼ã× +=q@¦¼ç¯·è@¦¼ã× +=q@¦¼ä xG@¦¼ã× +=q@¦¼ê³g ù@¦¼ã× +=q@¦¼å‡“Ý™@¦¼ã× +=q@¦¼åýŠÚ¹@704mÅÖ8@7,]cˆe”@3Lí‘hr°@3Qœàuöý@3“t¼@3 +çÕfÏB@2^«6z‘@2c9Àëíú@2^«6z‘@2^Ov_Ø®@2^«6z‘@2_iDg8?…ÅBðrç?Žd±Ìº?“ï~í"?ö€(tUo?’Z†Ažj?•ÍÂ^mÄ*?„F/·ÿP5?’§ioŠ?˜“º£¹‡b?•jÛ<÷x?“þþ¿=?’?;Áƒè?•‡C¿ ?1·†Æjñ?‰¢Ò+ÜÝõÑ.ÓŒ?F;[­ãk@¨G/âªÿ@¦¼å[ô‰²?^t‘ŠoC‹?g]x†Ÿ>D?½i™ù–¬7?ÑHkIm@ŸhhÖ,Æ­@¸@¦ê~ùÛ#@¦ê~ùÛ#@¦ê~ùÛ#@¦ëûµt@¦ê~ùÛ#@¦êÚ¹õ[@¦ê~ùÛ#@¦ë'»0@¦ê~ùÛ#@¦êÚ¹õY@¦ê~ùÛ#@¦ê™0¾ @žÉº^5?@žÉº^5?@žÉº^5?@žÆ§ï²@žÉº^5?@žÄµÜÆ?@žÉº^5?@žÉ 'RT@žÉº^5?@žËƧïŸ@žÉº^5?@žÊ Þ@3àØDЩ@3à‰ 'RT@1c÷ÎÙ‡@1dZ¬1@0ö§ï²-@0÷8}¿H@0+xFÜ^@0+àÞÒˆÎ@0+xFÜ^@0-Oß;dZ@0+xFÜ^@0-/Ÿ¾w?|¬Çëý ?Kb½™×?‘t‘ócjë?Œ2ÌUÃT?ðÌÇßgé?‘_ Ýß?|¬Çëý ?’‡Iš÷?‘˜ÆôõD?Níú¾?ë,YÁ?ú`@0k?‚¯­Ù¤Áµ?3I¶#i?ƒ!A +mº¹?ƒ^ ›¨¬a?‡2[síç?‡¤o„C@@@@@"@*?ð?ð?ð?ð?ð?ð?î­ ?Y}À?ŠYV<Û?ñ4$m!±@¦ê±Qð™@žÊ%~?0`©¸tœÙ?:?8Üý?lÆõ‚"!?±ð;GwŠ@ŸfÇ•Þp;@¹@¬;#× +=qÁ.„€@¬;#× +=q@¬;!ohÝ@¬;#× +=q@¬;/Ÿ¾@¬;#× +=q@¬;#¼ÓZ†@¬;#× +=q@¬;Š Þ@¬;#× +=q@¬;vÈ´9@®.záHÁ.„€@®.záH@®2•éá±@®.záH@®(Îp:ü@®.záH@®,"h Ô@®.záH@®.V“@®.záH@®+íúCÿ@8ëµsê´Á.„>¤µÜÆ@45ãS÷ÎÙ@47Xâe@3Ͳ-V@3Ò3œ¾à@2¡:’£S@2£¢œwšl@2¡:’£S@2¢ÃÉîËû@2¡:’£S@2£ä%®æ2@8J¨?àIü'?–ý3¾ZÀ’?,¡r×gÁ?•"§šmè?’Æ÷Xê†@8J¨?’Q_Ú¸FN?”Ï3½fvI?‘²)ò@a,?”ýó¶E¡Ë?–,}úºoJ@8p÷?3XMÊV?•(¯(Wø?ˆ»ñJî¯Î?‰G±±ZÎ?Žrø·óæ@@@@(@(?ð?ð?ð?ð?ðøøøøøøøøøøøøº@ ãF§ï²Á.„€@ ãF§ï²Á.„€@ ãF§ï²Á.„€@ ãF§ï²Á.„€@ ãF§ï²Á.„€@ ãF§ï²Á.„€@˜À&éxÔþÁ.„€@˜À&éxÔþÁ.„€@˜À&éxÔþÁ.„€@˜À&éxÔþÁ.„€@˜À&éxÔþÁ.„€@˜À&éxÔþÁ.„€@9¹Œ~($Á.„>¤µÜÆ@3°Ä›¥ãTÁ.„M‰ûçm@3'KƧïžÁ.„QnÙ‡@2Þ«6z‘Á.„NÜC,¥@2Þ«6z‘Á.„NÜC,¥@2Þ«6z‘Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø»@£~¸Qì@£~@£~¸Qì@£~ (Œç@£~¸Qì@£}ö+jçÕ@£~¸Qì@£~=Ùc@£~¸Qì@£}ù=Ùc@£~¸Qì@£}ñœàu÷@žt‹C•@žtŠ=p£×@žt‹C•@žt”É…ðp@žt‹C•@žt)*0U2@žt‹C•@žtE‡“Ý™@žt‹C•@žtŒIº^5@žt‹C•@žt€IQƒ@5ÞHè§æ@5ÝÅÖ8†Y@2+ Iº@2e”¯O @1´“t¼j@1â-V@1=cˆe”°@1S àÞÒ‰@1=cˆe”°@1ZW§†Â'@1=cˆe”°@1em\ú¬Ú?€‚ñêã ?•’nî „?¬¸. ¡? Tã|ø2Ñ?¤¾¯d…8?®þ‹‡Õœu?ˆÿÀ)T¿Æ?•íÌÖf?¨x`¶In?­×4="Ø ?¦ñ5ÜnM8?²&àrP'?‡9Â@0wæ?›’qvš°“?¦~9n4º¿?±VÊMÑx?š‘ÝÒcô?™ì ª# Ù@@@@@(@*?ð?ð?ð?ð?ð?ð?RÊÎQ¤¿^ö¸é>?pn¶@^aÍ?k’J~×@£~0nBË@žtƒì|…ò?ˆ{x»—«¾?…’ª2lq@Z®¬EÊœ?ñÓmv1N@ŸaCÅ¿Õ@¼@ ÖWOß;@ ÖWÎÙ‡@ ÖWOß;@ Ö 0½“ @ ÖWOß;@ Ö0kׄH@ ÖWOß;@ Õé×Ü V@ ÖWOß;@ ÕÄß¼@ ÖWOß;@ Ö?¨n±@”ÁÊÀƒo@”ÁËC•@”ÁÊÀƒo@”Â0·´ @”ÁÊÀƒo@”ÁÊ<~é5@”ÁÊÀƒo@”Áç©ÝžØ@”ÁÊÀƒo@”Â0kòÞ@”ÁÊÀƒo@”Áø'¢9@2kµsê´@2jÝhLŽ×@1 Ä›¥ã@0ÖO °³@/íOß;dZ@/±’]Ä@0J0U2a|@0ßT8ò°@0J0U2a|@/ËQÁq@0J0U2a|@/À‹ê4ã?É^¥(Úx?µÊŒ¤µÜÆ@3 Iº^5@3ZîcŠ@2y7KƧð@2y™™™™š@18DЩ*@187´¢3œ@18DЩ*@17>«6z@18DЩ*@17>«6z@8J¨?ÎÁ¯‰t0?•ï9aýô?ŒôƒA˜c ?’2’Ö¼9?’ Ù–¥£@8J¨?’ ·6Öc¤?“v@á¿bî?‘!¥zt9Û?‘®7Ö=^9?±—'¶Ü+@8p÷?Žrø·óæ?†ž5ðqë?„À"aËô??‡”_Õ­çW?ˆ©{2¡Î@@@@&@&?ð?ð?ð?ð?ðøøøøøøøøøøøø¾@©î« Iº@©î« Iº@©î« IºÁ.„€@©î« IºÁ.„€@©î« IºÁ.„€@©î« Iº@©î©ûçl‹@©î« Iº@©î¨õÂ\@¯‹bMÒò@¯‹bMÒò@¯‹bMÒòÁ.„€@¯‹bMÒòÁ.„€@¯‹bMÒòÁ.„€@¯‹bMÒò@¯‹’° Äœ@¯‹bMÒò@¯‹bMÒó@2Hè§æ@2BZîc @.…`A‰7KÁ.„M‰ûçm@.rn—OßÁ.„QnÙ‡@-™b¶®~Á.„NÜC,¥@-™b¶®~@-™³Ð|„¶@-™b¶®~@-™#¢œw›?É^žQ5P‚@8#˜@8¾:@8 >+?‘b©b<]ô?±ŒR°?ÐbMçê_x@8Î÷@8i§@8Å?‘ÞIŸö?hï,ðà?€b¡´ñ@@8 * @8p÷@8¶?†µ°jÆÃ?†¼Š˜L¥÷@@@?ð?ð?ðøøøøøøøøøøøø¿@¡«KC•@¡«KW¿¹l@¡«KC•Á.„€@¡«KC•Á.„€@¡«KC•Á.„€@¡«KC•Á.„€@¡«KC•Á.„€@˜›A‰7KÇ@˜›?|í‘h@˜›A‰7KÇÁ.„€@˜›A‰7KÇÁ.„€@˜›A‰7KÇÁ.„€@˜›A‰7KÇÁ.„€@˜›A‰7KÇÁ.„€@6wâ‚@·€@6yFlò@3; Iº^Á.„M‰ûçm@2Ͳ-VÁ.„QnÙ‡@2OO „MÁ.„NÜC,¥@2OO „MÁ.„NÜC,¥@2OO „MÁ.„NÜC,¥?}x—™+@8Iç@8Ù?}õ¬#„­@8Î÷@8i§@8Å@8S@8û—?Ž5‹\a@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøÀ@¨%/Ÿ¾w@¨%0bMÒñ@¨%/Ÿ¾w@¨%LÌÌÌÍ@¨%/Ÿ¾w@¨%7éùr@¨%/Ÿ¾w@¨%bu%F @¨%/Ÿ¾w@¨%I*0U3@¨%/Ÿ¾w@¨%Aaä÷f@¬C´¼j~ú@¬C¸bMÓ@¬C´¼j~ú@¬CñN;Í6@¬C´¼j~ú@¬Cÿ—$tT@¬C´¼j~ú@¬D" Iº^@¬C´¼j~ú@¬DHè§@¬C´¼j~ú@¬D ù m@6¥öý!ÿ.@6¢@·€4n@4©‡+ @4œÆ?@4`A‰7L@4-à @3ò䎊r@3b½<64@3ò䎊r@3`oiDg8@3ò䎊r@3]žƒä%¯?‡YÍ_?“ÓLáS{?™À‘öô{?¢¢ˆß@p—?£ŸOÖÆC?žy—™öW?1·†Æjñ?æ¦Qì/J?¨.cE:"^?—,àÐÑž?¡Òá%L$?œ ò¿á¼D?ƒ´],mg@@@@@,@(?ð?ð?ð?ð?ð?ð?wXÎ?–×YÃÄ€?p,W–|Õ'?~¹¶Ù¥§~@¨%"@¤xÔýó¶@¤x¢St@¤xÔýó¶@¤w%‡@¤xÔýó¶@¤v”Fs‚@¤xÔýó¶@¤wRC4@šå`A‰7@šå`A‰7@šå`A‰7@šæë²»å@šå`A‰7@šèñ»&@šå`A‰7@šç°³‘”@šå`A‰7@šæ`ÇÝ@šå`A‰7@šæ/#K$@4 ]cˆe”@4 Ã¥H@0Ò Iº^5@0ÒsCå„@0y7KƧð@0zk‘Cœ²@/™b¶®~@/›yRÒ4ì@/™b¶®~@/›+ B@/™b¶®~@/›Œ®x5?|¬h2:“?fÈúÆ?‘1èûzáþ?‹æJJýµ0?‘jf‹Ä€?Ð>Œ,ÖÂ?}@T˜ÁÎ¥?’ZNZSB?‰Õ=¶ :?A¹¿EŠ?ö̶e#‰?fôQ:ý?‚Öð÷îF?ŒÊZSX?‚Ψ,UiW?ƒƒ?m‚¬òÇç_?UC5}&ñ@©…?4Ô7h@žçò†¹£?„8ÊÃ’ƒ±?qÎODƒ™?ïî7´pú?ÊZî-êöœ@Ÿm¯“ÃFÞ@Å@ ³œ(õÂ@ ³ CB@ ³œ(õÂ@ ³›åãO@ ³œ(õÂ@ ³ŸV†x¨@ ³œ(õÂ@ ³šK¾Õ¢@ ³œ(õÂ@ ³š&ó{@ ³œ(õÂ@ ³›P_† @«²\(õÃ@«²Á“ä=@«²\(õÃ@«²ŠñBMø@«²\(õÃ@«²ŽCŽþa@«²\(õÃ@«²°ò{´@«²\(õÃ@«²ŽÑXêÎ@«²\(õÃ@«²1©`W@8>«6z@8Ë&Ämk@35ãS÷ÎÙ@35é š–@2]V”@2[þI6$@1n_oÒ @1mçõôÎ@1n_oÒ @1mAqÆâ@1n_oÒ @1lЇÏÄ?›`^Ãz•T?ÄdóN’?‘8Cõ)*Â?Œw¢?´rò?‘˜¯ +`É?‘S¥?–1¯?„ÜNó7·å?’Gvû§Q?ÈÒÀ©_;?‘ êÈZr ?‘FjØõmY?÷ÎV”&Õ?—NþuæÃ?ž2@غ ?†ZCM?ƒmþœ~MU?‡ Þ3T?ˆGgŸ@@@"@*@8@4?ð?ð?ð?ð?ð?ð¿Hœk.Æ¿–õ¹€?F†°˜¼~?(~˜Ô´ý@ ³›YI%æ@«²Šd™_?_ô·bD€‹?K}”›çT?¹-¥f;?—2SÊ1*ü@Ÿmf¾¤È@Æ@¥¥bMÒò@¥¤Ð‹>@¥¥bMÒò@¥¥âÿÓ@¥¥bMÒò@¥¥793å@¥¥bMÒò@¥¥L(˜œ”@¥¥bMÒò@¥¥QOMo<@¥¥bMÒò@¥¥'ïžÔÜ@œbƧï²@œb³3334@œbƧï²@œb Ç@ZT@œbƧï²@œbS'f›è@œbƧï²@œabT +Mh@œbƧï²@œb´X×@œbƧï²@œb)@9Hè§ç@9yŽ@@3õãS÷ÎÙ@4 +OíF@3v§ï²-@3ƒ®/è£@2«xFÜ^@2ér¦<[©@2«xFÜ^@2ˆº²Ê¬@2«xFÜ^@2‰“Ï\s4?‰çõ×eµM?ÏZi6&Ë?‘–Êv:?v]ÆJ?™´_Évð?±ƒ‹1?¡ùõŠm ?©ôû(¸ÛÞ?•s–«+Ñ\?§)CH ³Ê?•‹R^– ?”O È*Ñ¥?µch0Ñë?” ªûö?–XŽæ¤j?ƒwXPöjÝD8b@Ç@¡ªŒIº^5@¡ªr° Äœ@¡ªŒIº^5@¡ª–”Fs‚@¡ªŒIº^5@¡ªOß;e@¡ªŒIº^5@¡ª—1Å@¡ªŒIº^5@¡ª•2a|@¡ªŒIº^5@¡ª¯iDg8@¬’É7Kƨ@¬’ÕÂ\)@¬’É7Kƨ@¬’ãS&@¬’É7Kƨ@¬’Þ\‘ÑN@¬’É7Kƨ@¬’êOv@¬’É7Kƨ@¬’Ù0¾ î@¬’É7Kƨ@¬’à'RTa@8Î쿱[W@8×Oß;d@5¦‡+ J@5¤?åÉ@4Ãt¼j~ú@4ÀhÛ‹¬q@4¨è§æ›@4ŸË’:)È@4¨è§æ›@4¡4êJŒ@4¨è§æ›@4œ²•éá±?›’qvš°•?ªi1Ÿ[„ñ?’ >(lQ ?š„Åè-ƒ?œè¢ü V?¢}ÉTãvÃ@@@@@*@*?ð?ð?ð?ð?ð?ð?‡ ÍÞ@?p|²;?a¶~Ûdè?c@û2Ÿ$4@¡ªŽ34-Þ@¬’ßR¸Ð¤?~UóðS¶"?„B\_[Œ?ÙÒƒ®ðȸ?øËO©"êG@Ÿg•—p\R@È@¨<‘hr°!@¨<‘AÅaU@¨<‘hr°!@¨<’9&@¨<‘hr°!@¨<’)¯¡3@¨<‘hr°!@¨<•ï˜r@¨<‘hr°!@¨<†œ†ïŽ@¨<‘hr°!@¨<‘äÅ+@–ª^5?|î@–ªˆ´9X@–ª^5?|î@–ªgs;7@–ª^5?|î@–ªKQ —@–ª^5?|î@–ªf±òš“@–ª^5?|î@–ªy5öUé@–ª^5?|î@–ªl–ÁŽY@8–šÔ,<Ÿ@8Œ¨RW÷‘@3óS÷ÎÙ@3ëûYU8ž@3F“t¼@3JXƒJ¶¡@2ÜÚQÎ@2×¢H”ÄH@2ÜÚQÎ@2öÑ+bGz@2ÜÚQÎ@2ØÂ«3$Ð?‹œãµ,r—?”¹GiD ?’@«h¥¤?-êšVç?˜FÖãZ!?“zAõ±?¿¹5,±?˜þ˜ã‰?‘ºÿ¾€F€?”ƒzÇý¢t?™ƒ6WOA?”@[WÄ@ã?¤zø¶ëÊ?]Ö « Ï?Œrè—Q ô?…y߀1í?”ÍÈ`&L?³ÖOªõ#@@*@$@$@;@8?ð?ð?ð?ð?ð?ð¿8eúC¿gB·?Z”X£¹èJ?XŸ‰>êjx@¨<‘=pÏÌ@–ªvîü ¦?yÃ…ÇÆ/ß?xâÓtbrG?ñBƒÍ¶+?êE釋_@Ÿj.yö@É@­Ò5Â\)@­Ò5$Ý@­Ò5Â\)@­Ò:QÎ@­Ò5Â\)@­Ò:6âë@­Ò5Â\)@­Ò:áG®@­Ò5Â\)@­Ò:¬Ùè?@­Ò5Â\)@­Ò9Û"Ðå@¡¬oŸ¾w@¡¬oŸ¾w@¡¬oŸ¾w@¡¬oiDg8@¡¬oŸ¾w@¡¬oƒ{J#@¡¬oŸ¾w@¡¬m‘hr°@¡¬oŸ¾w@¡¬nHè§@¡¬oŸ¾w@¡¬mw1Å@3žHè§æ@3žHè§æ@1×+ Iº@1Ø Ô•*@1Z~ùÛ"Ñ@1[)^ž @1ý!ÿ.I@1+ Iº@1ý!ÿ.I@1l‹C•@1ý!ÿ.I@1 ù kº?|öOÿÝ?Eˆ‡ðó‹?‘âTÀÊS“?‹¹GüÞõ?‘·Xâe?‘¦ µÚ?|¬Çëý ?’§ioŠ?‘†£„Â?6) }’ë?‘êë·áþA? êBÐ8ã?‚uÞ@>N ?2ô]7?„‘Za¹Q?ƒ^ ›¨¬a?‡&üòI?‡v>ª¸ @@@@@,@&?ð?ð?ð?ð?ð?ð?Srž€¿5I^ù ?9R¾–;—Ú?6 pdv¤@­Ò8QµÖŽ@¡¬n\èð?Y +è@5Då?;š_\é|T?À¯: áŽ?ƒ]¼÷L/N@ŸfÄT……û@Ê@¢U°£× +=@¢U°bMÒó@¢U°£× +=@¢U±©ûçm@¢U°£× +=@¢U±ÑN;Í@¢U°£× +=@¢U±Þi­C@¢U°£× +=@¢U°ò{³@¢U°£× +=@¢U°bMÒò@­!St¼j@­!St¼j@­!St¼j@­!S©*0U@­!St¼j@­!Sê³g¡@­!St¼j@­!T!-w@­!St¼j@­!R䎊r@­!St¼j@­!S&Á¾@2=:’£@2=V”@.\j~ùÛ"@.\¾ß¤?@.éxÔýô@.ãS÷ÎÙ@,QÑN;Í6@,På`A‰8@,QÑN;Í6@,P‰ 'RU@,QÑN;Í6@,P£× +=r?É^³Dw'?Úþþ³?‘=?ùKh?‹Æ úJ-M?‘\Žýµ€7?ïˆ6ÏJ?ÐbMçê_x?’›ÈÖÝ?ŽËÜ¿€?wàËxR?‘+ùÔ!½‹?]#ÍìO¤?€cPßQª?Œ».êxóÚ?‚|׿pZ?‚ôhBì^?†špk Y?†½ª»—@@@@@,@*?ð?ð?ð?ð?ð?ð¿Då¿<ž¸Æ?YƒÒ†D?.¢ a r`@¢U±%_1@­!StÔþ?*k9qá&Â?=_"€£?P·¾YfL³?rrj¸.@ŸsÉѬ@Ë@¥èÄ“t¼@¥èÎV“@¥èÄ“t¼@¥èÄÝ/Ÿ@¥èÄ“t¼@¥èÄ›¥ãT@¥èÄ“t¼@¥èĨÁTÊ@¥èÄ“t¼@¥èÃS÷ÎÙ@¥èÄ“t¼@¥èÄ“t¼@®/_;dZ@®/R° Ä›@®/_;dZ@®/_ÿÿÿÿ@®/_;dZ@®/`-à @®/_;dZ@®/^ߤ?æ@®/_;dZ@®/_|í‘h@®/_;dZ@®/_Ø­«Ÿ@5-¥œàv@5!TÉ…ðp@05ãS÷ÎÙ@06$Ý/ @0t¼j~ú@0¢œwšk@.Vð¸»@.W +=p£×@.Vð¸»@.W>«6z@.Vð¸»@.WXâf?¤ÊŽaÈ]Ó?Čۨ1A?‘"žæÆó¡?‹ÑqÔ@vÿ?üEÙáõ{?È2I/?©W»¥ÿ$B?’j%ÓRa?†[‘'Í?;ß $Þû?øóéM Ÿ?{L Õ¢D?¸¨„À!†[?Œµ3‰;šÏ?ƒM¬Öe—_?‚äÍ“½E'?†žóB» “?†–f_ÔŠŠ@@@@@*@*?ð?ð?ð?ð?ð?ð¿U*<·A?WØU­?LòÆ%D¥?P ó®Æ!Ó@¥èĸ¡ãû@®/^‰¤0?aO㘠ÞÞ?bÞ¨ðµ&‘?¾[ÕÓŽü?¾h83µ$V@Ÿp•s ø£@Ì@¨Íüí‘hs@¨Íýp£× +@¨Íüí‘hs@¨Íý/Ÿ¾@¨Íüí‘hs@¨Íýã¼Ó@¨Íüí‘hs@¨Íýó¶E¡@¨Íüí‘hs@¨ÍüPHð@¨Íüí‘hs@¨ÍüwškQ@¨ÄyÛ"Ðå@¨ÄyÛ"Ðå@¨ÄyÛ"Ðå@¨Äy™™™š@¨ÄyÛ"Ðå@¨ÄzCþ\’@¨ÄyÛ"Ðå@¨Äyè>B[@¨ÄyÛ"Ðå@¨ÄzCþ\’@¨ÄyÛ"Ðå@¨ÄyrGE9@2*0U2b@2*0U2b@.û"Ðå`A@.úîcŠ @-è1&éxÕ@-ç»/ìVÖ@-åÉä@-|í‘hs@-åÉä@-|í‘hs@-åÉä@-¾vÈ´:?É^òÀXæN?Čۨ1A?‘,fŸCô6?‹û…†_?‘ §‡g¾?Å{¿Ž<¹?ÐbMçê_x?’j%ÓRa?ŽËÜ¿€?CÚ B÷?çêÑHcÇ?_Ø~tñ?€n|ð̲?ŒË›Í‡Çq?‚¯­Ù¤Á¶?‚æÊ¬vã?†£îž«î?†žóB» “@@@@@*@,?ð?ð?ð?ð?ð?ð¿F›nú¦¿&¡C´?1LÙÐÐè?+ÀÐ;ýSO@¨Íýž@¨ÄyâL‹‹?@¤Í¥S ?:EÂB)q?z֨”&ô?n ÒWF@Ÿs æ«@Í@§Ct¼j@§C–±ö§@§Ct¼j@§CË +PR@§Ct¼j@§CÌ5î¿@§Ct¼j@§C‡^>@§Ct¼j@§CcïÎO@§Ct¼j@§CãÝ+Z@“¢þùÛ"Ñ@“£İž™@“¢þùÛ"Ñ@“£s×Ü@“¢þùÛ"Ñ@“£†€@“¢þùÛ"Ñ@“£m“è@“¢þùÛ"Ñ@“¢ÿÌ;K@“¢þùÛ"Ñ@“£øÝvŠ@7|ÚQ@7š³*`@3‡ÎÙ‡+@3„1 FËÝ@2K"Ðå`B@2JoÊF'ƒ@1Ç ù kº@1ÇL¼J¹}@1Ç ù kº@1È0HÑ@1Ç ù kº@1ÈÊ>´c?•'Z]Ô&?Vö#.ãž?‘B-“šÂ?¤“¯¸ˆV?‘æ*^ú @?‘]¾õ»ý?~Ov_Ø­«?’p`íH”c?Î ´E>Î?‘§WWM@?’‹æ‘¯Î?‘Z§ÓWÈ?œ57E?‰6~„æAÔ?Ž•ýÙ—±?†ž5ðqë?…2 Ôî½?‡&üòI?†ïRÉv‘Ñ@@@@@*@(?ð?ð?ð?ð?ð?ð¿B’ÿœ?>Láø@?†Ç¦ ÆO?-!KêÉ-@¡8Ô º6£@ª1šzÄ!?.Â`òlŠ?Nxݨ<ýf?e¢J³6?¤q~-•@ŸgHž~k4@Ð@ªÝ`A‰7L@ªÝ`A‰7M@ªÝ`A‰7L@ªÝaG®z@ªÝ`A‰7L@ªÝa:’£@ªÝ`A‰7L@ªÝ_ò䎊@ªÝ`A‰7L@ªÝ_Ø­«Ÿ@ªÝ`A‰7L@ªÝb3œÀ@¦Ü§ï²-@¦Ü§ï²-@¦Ü§ï²-@¦Ü®—Oà@¦Ü§ï²-@¦Ü¬˜_÷@¦Ü§ï²-@¦Ü¯Ån@¦Ü§ï²-@¦Ü«Æ§ïž@¦Ü§ï²-@¦Ü§â‚@¸@6ÖšÔ,<Ÿ@6Ö_Ø­« @3Ò Iº^5@3×+ Iº@3ï²-@3‹¬q ²@2¸DЩ*@2»Æ§ï²@2¸DЩ*@2»ŸU›=@2¸DЩ*@2»µsê´?}Ñ¿ž,?‘è™è;?—Á§ Rp?“ý?çðo»?’õ¡EE?’»«ÒñŒ?ˆÿÀ)T¿Æ?›44]Åùt?—ÓÙggÞô?—QÀ–Íù?”îC¯·æo?• D·?ƒ¡É^&Ö?‘žˆ2}?…/‡ÙX·³?ˆ6‘F:™Ê?‹Ûx§Þ?‹ú èNÆö@@@@@*@*?ð?ð?ð?ð?ð?ð?'pÏJ ?@çÿax?+]}ޤF‹?N(õ›@ªÝ`˜]–@¦Ü©õ¿¯?M(¿åé?nÀ<Ò{¦M? uõØ£?×c¢B'Ö@Ÿh"Gø@Ñ@­À‰º^5?@­¿ãn—Ž@­À‰º^5?@­À°¾ í)@­À‰º^5?@­ÀŸ¾vȵ@­À‰º^5?@­À½/Ÿ¾@­À‰º^5?@­ÀÏv_Ø­@­À‰º^5?@­ÀÙè>B\@ª 2-V@ª ÆéxÔþ@ª 2-V@ª @ëíúE@ª 2-V@ª 3Mj@ª 2-V@ª 1©ûçm@ª 2-V@ª Qhr°!@ª 2-V@ª 7Xâd@804mÅÖ8@7—l‹C•@1ðÄ›¥ãT@1Ú¹õY³Ð@0Ë"Ðå`B@0· ù k¹@0L¿±[W?@0!N;Í5¨@0L¿±[W?@0ëC,¦@0L¿±[W?@0éxÔýô?áÓMç©0»?±4ÈáËÓ‹?–Èó^ù„?«Úˆœà§‘?À ŠïÒöµ?Ã) ®oî*?âú1Ç ù©?­„•Ñ.M?˜ºµ²¢Dœ?±2ý}û¢í?ÃZC: ­;?Ã;/…S¢¤?ó$—Òc*?šÊýÛל?”Ê}ÛXœ?§«OÊJI-?žTIœ?³µ›«x¼@@@@@,@,?ð?ð?ð?ð?ð?ð?“k¢×À?QûÎà?Š=ÈP'ëÕ?‹è·’ˆÄ @­Àň]>Ò@ª 8lš2²?•´dÐS2?˜÷S žõ?ר:àU´?×,̱˜b@Ÿo‡åFú@Ò@¤1«…¸R@¤1¤Ý/ @¤1«…¸R@¤1t9Xb@¤1«…¸R@¤1‹P°ò}@¤1«…¸R@¤2µÜÆ?@¤1«…¸RÁ.„€@¤1«…¸RÁ.„€@¥"XbMÓ@¥"dZ¬@¥"XbMÓ@¥"F$Ý/@¥"XbMÓ@¥"ŠôðØE@¥"XbMÓ@¥"zCþ\’@¥"XbMÓÁ.„€@¥"XbMÓÁ.„€@7°4mÅÖ8@7°ëíúCþ@5pÄ›¥ãT@5TðØDÐ@4ˆ“t¼j@4aÑN;Í6@4}cˆe”°@4iîËû¶@4}cˆe”°Á.„NÜC,¥@4}cˆe”°Á.„NÜC,¥?£È‰·akû?m’Ìaø?¿ß¹e/?²Lì÷ïòä@8Iç@8Ù?3ßa=„?“Á4œÝi?Å2µú–6?»U£ ­Þ @8S@8û—?„ã¼ÓZ…‡?®²¼“gz?©[K-$›I?Á'|ÝåVÄ@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøøÓ@¤Ý¶E¡ÊÁ@¤Ý¶E¡ÊÂ@¤Ý¶E¡ÊÁ@¤Ý¶¡aäö@¤Ý¶E¡ÊÁ@¤Ý¶âëC@¤Ý¶E¡ÊÁ@¤Ý·eýŠÛ@¤Ý¶E¡ÊÁ@¤Ý´9Xb@¤Ý¶E¡ÊÁ@¤Ýµ '»@£‰€@£‰€@£‰€@£‰€'RTa@£‰€@£‰—$tT@£‰€@£‰€hÛ‹¬@£‰€@£‰HË’@£‰€@£‰b¶®}@4=:’£@4=BÃÉîÌ@0¸r° Äœ@0¸K]Ìcñ@0@å`A‰7@0AA [À@/æL/ƒ{K@/宿1ø¢@/æL/ƒ{K@/åãS÷ÎÚ@/æL/ƒ{K@/åÖ8†YJ?}Ñ¿ž,?Čۨ1A?‘O‚%c?‹Æ úJ-M?‘#6‰¥_?‘‚ÊŸû©?|¬Çëý ?’j%ÓRa?£½:…?;ß $Þû?‘=d¦^™?›ªU3Îp?‚2Y0â³?3I¶#i?‚¯­Ù¤Á¶?ƒGϵ¨í'?‡ã ËÄž?†å·ÑfWà@@@@@*@*?ð?ð?ð?ð?ð?ð¿.UòQ ¿¿9à?3ƒÿËóº?O·ÒZÁ@¤ÝµíÝ +@£‰Îö/Û?SXöj'9?9É(p<Ü?³À-b +"?rÏÙ¨&@ŸfúŒ±±ø@Ô@«St¼j@«O²- @«St¼j@«S÷ÎÙ@«St¼j@«U%F +¦@«St¼j@«RÊW§‡@«St¼j@«OiDg8@«St¼j@«NËû¶@¥/`Ä›¥ã@¥/c•%@¥/`Ä›¥ã@¥/bÐå`B@¥/`Ä›¥ã@¥/a-w1@¥/`Ä›¥ã@¥/_;dZ@¥/`Ä›¥ã@¥/_Š Þ@¥/`Ä›¥ã@¥/`@6 ØDЩ@6 oiDg8@2ÞÙ‡+@2ÝquŽ"@1š~ùÛ"Ñ@1š ÞÒ@1¦YJôðØ@1¢ÊW§†Â@1¦YJôðØ@1£n.±Ä3@1¦YJôðØ@1œ1&éy?‡YÍ_?êÚÏ$?‘ê ÷“'?U›=ÈK?“Á¿À3<ô?–VòFNLG?žˆ2}?’Ï>`Ï?‘C\ºÕ¶?‘¼Øzé±ï?‘®7Ö=^9?’.8 +B?˜Ÿó6P£?Å9–o?ƒíÈm½!¿?„ìsMQ(Œ?‡æê7²zE?µ£f$Åx@@@@@*@*?ð?ð?ð?ð?ð?ð? a@Ä¿Mþêsì?B +MÍ÷¨?2–ÓèÑê@«PPrRÝ@¥/a6kæj?a0Õ2¿ö?SEZ¸†?ÁôDþAĵ?­êl¸]@Ÿhf¿%^@Õ@¨ ]/Ÿ¾@¨ ]/Ÿ¾@¨ ]/Ÿ¾@¨ \Æ?@¨ ]/Ÿ¾@¨ U¨Xy?@¨ ]/Ÿ¾@¨ I^ž@¨ ]/Ÿ¾@¨ C¼ÓZ‡@¨ ]/Ÿ¾@¨ ?ö”E@ªpô9Xb@ªpô¼j~ú@ªpô9Xb@ªq@ªpô9Xb@ªpúáG®@ªpô9Xb@ªpý/Ÿ¿@ªpô9Xb@ªpþùÛ"Ð@ªpô9Xb@ªpÿ;dZ@3įO „M@3ļj~ùÚ@1ahr° Ä@1Y k¹Œ~@1Ct¼j~ú@1:Ÿ¾vÈ´@0ÔmÅÖ8†@0Æö”Fs‚@0ÔmÅÖ8†@0ÆÏAòØ@0ÔmÅÖ8†@0Æ8†YJõ?}Ñ¿ž,?“+ÄWè?’måGSžq?’³Žbtx=?•‚•‹€\†?•iá¸OL™?|¬Çëý ?™Ú"üT÷î?”¯_©ïM?’ äÅ?“úaû]?”æâ„o?‚† SFñ?’žÿ§:­?‘ +òtMŠ?’aP¸¾¦Ö?·♊N?‘˜M\ÿŠ@@@@@,@*?ð?ð?ð?ð?ð?ð¿zHq¸?d¦ÖX?;ƒ +ÂDø?55ý§g„4@¨ P:ÔÉ@ªpù¾…P?Z½&¶.Ý?T•îÛ§?¼L›Ák8?²°—‹¾@Ÿezü;7@Ö@¢paÊÀƒ@¢p]/Ÿ½@¢paÊÀƒ@¢p`XÖ#@¢paÊÀƒ@¢p^¿Áà@¢paÊÀƒ@¢pZõ¤u@¢paÊÀƒ@¢pgó½ë@¢paÊÀƒ@¢pa*‰lô@˜z•$Ý@˜z•$Þ@˜z•$Ý@˜z˜ :!1@˜z•$Ý@˜zš¼bò/@˜z•$Ý@˜zžK/…”@˜z•$Ý@˜z‡‡5i@˜z•$Ý@˜z‡àõÓœ@6ºqÞi­C@6¶ÕÈ>` @2º^5?}@2Cù¡G@1Ͳ-V@1ÌÓà10@1B‚@·€5@14†<ûeì@1B‚@·€5@1DWùù@1B‚@·€5@1BwûÍè?¿¹5,±?•°Wzo¨¬?’Æ­ù¡Ñ”?•Rf‰-ˆŠ?” u•< ?“®Ü#& ?”$úÀÁ’?™‰ŸþÿÎÏ?‘?ÂÝò‚Ø?”ñž°¾?’rË °v?“‹ûÓ;q?‚náÉ!?Mr‰B¨?„x;@&b ?‹ø£Þ—jt?Š@®Tf?‰+“û5.*@@*@$@*@;@:?ð?ð?ð?ð?ð?ð?V´°Þ¿[³ß÷÷?V—ÞFËa ?VÕsUð@¢p`IùÆÓ@˜ze=]?vé/Ï.]?t¡ƒ@¥g,?çÍÀ¬2Q?ák‹@Ÿkô’„¯@×@«šô¼j~ú@«šíV@«šô¼j~ú@«šöE¡ÊÁ@«šô¼j~ú@«šíí(Œè@«šô¼j~ú@«šò{²þÆ@«šô¼j~ú@«šòT`ªd@«šô¼j~ú@«šô•*™@«(ÚŸ¾vÉ@«(ß¾vȵ@«(ÚŸ¾vÉ@«(ÖE¡ÊÂ@«(ÚŸ¾vÉ@«(ÛÍ5¨W@«(ÚŸ¾vÉ@«(Ù0¾ í@«(ÚŸ¾vÉ@«(Ûµsë@«(ÚŸ¾vÉ@«(Þ í(@8ëµsê´@8ê™0¾ í@3Ô›¥ãSø@3Ú0U2a|@3A‰7KÇ@32ÊW§‡@1î_oÒ @1ó9Àëíú@1î_oÒ @1ð[À6ã@1î_oÒ @1îÒˆÎp;?Â2´É½â?•ò‘éÃ!?’5 µ¿$„? Í‹hÆ?‘úy«ôÊ%?‘)]•\¬?§Ò¸ùBz3?˜´1…9„?¯éÊSÜ?‡@Cvì×?’l{9ÙŽ?‘fû›1-&?–uDJ‘`º?’lUˆ%s§?ƒ/‹ÍY}’?ŠŒµIÍ?‰©OO ¨?‰®ââP\@@@@@*@&?ð?ð?ð?ð?ð?ð?Lâ-•$?J ÇL?=@q,5Bð?R_YzÆJ@«šòúŠ @«(ÛŒš8?LÎãÁ„®9?f*@²]?‘} XÛ?ÄU©[‰Ç@Ÿr@n¿½r@Ø@¯*bMÓ@¯*Oß;@¯*bMÓ@¯*ï4Ö¡@¯*bMÓ@¯*¬1@¯*bMÓ@¯*âe+@¯*bMÓ@¯*Ôýó¶@¯*bMÓ@¯*DЪ@ ÈLIº^5@ ÈKƧïž@ ÈLIº^5@ ÈLVÕÏ«@ ÈLIº^5@ ÈP¸»@ ÈLIº^5@ ÈLL˜_@ ÈLIº^5@ ÈL1&é@ ÈLIº^5@ ÈLcñA!@4p4mÅÖ8@4p4mÅÖ8@0ÞÙ‡+@0ß;dZ¬@0b-V@0bœwškQ@/³üPH@/²×süQ@/³üPH@/±ø -ß@/³üPH@/±A [À?ð°–Ž]?êÚÏ$?‘Ûü†Nã?Œ2ÌUÃT?‘#6‰¥_?Êëüâi{?ð°–Ž]?’ ŠŠ¤Hì?ŽËÜ¿€?RLnj?‘77…Âç?ˆ9²0?ð*wjs—?2ô]7?„ò—TËÄ?ƒE 8?†µ°jÆÃ?†¯Mž684?ð@@@@*@&?ð?ð?ð?ð?ð?ð¿/óÀ? SM((?h5kßé/?$†uåÔ@¯*©ÿð‹@ ÈL*w ?(>¼X,Ð?"Ü ïˆ +Â?Kë„Zvΰ?>¡ÁÖ·Ö4@ŸsŒ®˜NÔ@Ù@¦ák…¸RÁ.„€@¦ák…¸R@¦á/iDg7@¦ák…¸R@¦á8âe+@¦ák…¸R@¦áEm\ú®@¦ák…¸R@¦áC¼ÓZ†@¦ák…¸R@¦á-jO@¨2~ùÛ"ÑÁ.„€@¨2~ùÛ"Ñ@¨4µsê³h@¨2~ùÛ"Ñ@¨45sê³h@¨2~ùÛ"Ñ@¨3ú^5?}@¨2~ùÛ"Ñ@¨3°ò{³@¨2~ùÛ"Ñ@¨2ù0¾ í@9IÎ_oÒÁ.„>¤µÜÆ@4° Ä›¦@3ixÔýó¶@3~ùÛ"Ñ@2Ÿö”Ft@25µsê³h@1àëíúCþ@25µsê³h@1ìžì¿±\@25µsê³h@1ò-V@8J¨?Ê2yH?ËX¾ ÙM?³‚1½Á?®ìl\L˜W?£â³x‰»@8J¨?Õš‘¡ìŠ?Ó¢û®ásø?СâÕÎùÓ?ÓÕöD¬?¿X£íŒ1@8p÷?“¢ ßÌF2?¢¦Ú¬šæà?åÃõâü?Ÿ/Òѯ¢?¦ 24 +¾Š@@@@,@?ð?ð?ð?ð?ðøøøøøøøøøøøøÚ@«_ùÛ"Ðå@«_û"Ðå`@«_ùÛ"Ðå@«_÷ÎÙ‡@«_ùÛ"Ðå@«_û/ìVÖ@«_ùÛ"Ðå@«_þOv_Ù@«_ùÛ"Ðå@«_üÚQ@«_ùÛ"Ðå@«_ù™™™š@­£° Ä›¦@­£®—OÞ@­£° Ä›¦@­£¬²•éã@­£° Ä›¦@­£¤ xG@­£° Ä›¦@­£¦¸ºÇ@­£° Ä›¦@­£§ÕfÏA@­£° Ä›¦@­£§_oÒ @7 xFÜ@7ÿ.Hè§@3GÎÙ‡+@3Aÿ.Hè§@2€å`A‰7@2|"h Ô•@1³&Á½¥@1­\ú¬Ùè@1³&Á½¥@1­/Ÿ¾w@1³&Á½¥@1®p:û~‘?‡YÍ_?‘ ·èe?’à©GMõ?—^tø -a?–lô!-w?•iá¸OL™?3ßa=„?’{cü€øõ?œê¹ÂÁR×?—d¨XM?•Àb¤| W?–Ï9xä]e?ˆïhƒEõ¦?‘D‡>S9?„m~Z_s,?‡µ‚[Ö?‰©OO ¨?qÂ' +Bœ@@@@@*@*?ð?ð?ð?ð?ð?ð¾øf]î¿ZM½Û ?>`™Øæ?A¸Û‚o‰u@«_ûr´ &@­£©ã7›)?`0Öˆ‰B?a›ÇèI1_?¸“$Cðâ?·úA!Ťá@Ÿi¡{Ü•ÿ@Û@žÓOß;d@žÓß;dZ@žÓOß;d@žÓ—z¨°@žÓOß;d@žÓ€äPäy@žÓOß;d@žÓz(ðÚü@žÓOß;d@žÓ…[²¼@žÓOß;d@žÓ‰Ï¹UL@¡ÚLÌÌÌÍ@¡ÚK/kH @¡ÚLÌÌÌÍ@¡ÚL´®–Ÿ@¡ÚLÌÌÌÍ@¡ÚT›ÇÇ@¡ÚLÌÌÌÍ@¡Ú9°ˆ0ê@¡ÚLÌÌÌÍ@¡ÚF g°ì@¡ÚLÌÌÌÍ@¡ÚIQJË@6šÔ,<Ÿ@6 Ýc{Mj@2sS÷ÎÙ@2oFM¼xu@2“t¼@1ü£8¬9@2!:’£S@2" Ue @2!:’£S@25T>úÐ@2!:’£S@21>x<Üè?}õ¬#„­?™¹w/óª\?“–fù&Ëù?‹úq¹Ë§×? §ÃÚ‘? õ?Lo?}x—™h ?~á=õ–…?èSöÒ7Í<@nùèÒhÈ@Ÿcxƒ6Ìà@Ü@¤‡¸Qì@¤‡ß;dZ@¤‡¸Qì@¤‡ÿ—$t@¤‡¸Qì@¤‡¸»@¤‡¸Qì@¤‡âëC@¤‡¸Qì@¤‡&€J@¤‡¸Qì@¤‡S&Â@«{¦éxÔþ@«{º^5?}@«{¦éxÔþ@«{ 'RTb@«{¦éxÔþ@«{’䎊r@«{¦éxÔþ@«{ŒÌÌÌÍ@«{¦éxÔþ@«{:û~’@«{¦éxÔþ@«{ŸåÉ@8£g ù l@8}¿HÌ@4‡ÎÙ‡+@4ªÍžƒä@3Ÿ²-V@3˜üPHð@3+xFÜ^@3 £× +=q@3+xFÜ^@38e”¯O@3+xFÜ^@3A4êJŒ?3ßa=„?•¼¦|Ó1?›Ì~” #?’èÞ㬱_?œÑÎ$ôïÔ?žMdzr?¢Æ÷Xê†?›44]Åùt?šˆFy® +?˜® ™¥g?˜ÈÀWTŒá?ª`1`Wâã?£Ë…®ýW™?—ì;!ðß?—M3§´ ?‘®« Ó¤“?–¨¬:­÷?™ þg¿@@@@@$@(?ð?ð?ð?ð?ð?ð¿\¨ód¿€ëÍ^?dt²ë°?và';Ïß@¤‡ ˜Ô…}@«{˜z¬dÝ?„8 ]Å?‡s¹U§ˆ?ø‹&˜€˜@³à68o@Ÿk/§°Þç@Ý@£¾D›¥ãT@£¾DÝ/ @£¾D›¥ãT@£¾F§ï²@£¾D›¥ãT@£¾D›¥ãU@£¾D›¥ãT@£¾EÉä@£¾D›¥ãT@£¾CñA \@£¾D›¥ãT@£¾DM:“@¥ïª~ùÛ#@¥ïª=p£×@¥ïª~ùÛ#@¥ïªÀƒo@¥ïª~ùÛ#@¥ïª~ùÛ#@¥ïª~ùÛ#@¥ïªÀƒo@¥ïª~ùÛ#@¥ï«¹Œ~(@¥ïª~ùÛ#@¥ï«P°ò}@3šÔ,<Ÿ@3¡aä÷f@.{"Ðå`A@.zîcŠ @-N—Oß;@-NV“u@,åÉä@,~BZîc @,åÉä@,}!ÿ.Hé@,åÉä@,}IQ‚©’?|öOÿÝ?¾¢`ƒ?‘*"AaIÐ?‹ë¤½?‡á?‘õbÐ\?ÛF»0?|öOÿÝ?’ aÒ¹zï?|™,Ž!?Y‡…—Ø?ÝIMÎ?ˆ9²0?‚oÁÆÜ§ö?Œ¬2aå?‚† SFò?ƒ!Ë *(?†µ°jÆÃ?†Óß +tõ@@@@@$@&?ð?ð?ð?ð?ð?ð¿£G€?1[Ò:°?(36’k´?·³YX@£¾DÉÆü&@¥ïªÑçt?H캲d ?1ð½þdŒ?ŸL ¢Y"?p–ñ}—R@Ÿf÷e¬î@Þ@£áîzáH@£áç+ J@£áîzáH@£áõÜÆ?@£áîzáH@£áù³Ð|…@£áîzáH@£áöâëC@£áîzáH@£áë¬q ³@£áîzáH@£áîcŠ @¥J•$Ý@¥J‘hr°!@¥J•$Ý@¥J”ã¼Ó[@¥J•$Ý@¥J©*0@¥J•$Ý@¥J°ò{³@¥J•$Ý@¥Jˆ Ô•@¥J•$Ý@¥J‹6z‘@7Âò䎊@7¾óMj@3Iº^5?@3ÁTÉ…ð@2Ct¼j~ú@2>ŠqÞi­@1á:’£S@1á‚©“ á@1á:’£S@1àªdÂø8@1á:’£S@1áÎ_p?š•§q!U?’ +ܦ%Ö?š®ìZ-­l?r*ž¾Ž?’Þäi]i?”éëÀÍ?‘â%ì˜ ä?“6SÇ{Ó?˜ÎEψCÛ?”Ò}“® ?’pP‡È»?—œ­ÛpùÄ?¤±AK\Þ ?•±ŽnBTß?šÒÅšnê?‡•ó¨–ˆ?ŽNîV˜C&?‹aÊ•TI@@@@@$@,?ð?ð?ð?ð?ð?ð?;œü ¿\/¦)–?e³1tã ß?M»ïw>e@£áïŸü@¥JŒègÎ?€xAsÈR*?kàÄÈÊ#?õ´^±“†k?ο–ôÂ@ŸlÙY¯œ¸@ß@Ÿè6E¡ÊÁ@ŸèE¸Qê@Ÿè6E¡ÊÁ@ŸèÑQò@Ÿè6E¡ÊÁ@Ÿè)9êÝZ@Ÿè6E¡ÊÁ@ŸèD2ÊW¨@Ÿè6E¡ÊÁ@Ÿè4¼Éf@Ÿè6E¡ÊÁ@Ÿè9¾x@£èýó¶F@£è î#I+@£èýó¶F@£èû†š@£èýó¶F@£è —*ó@£èýó¶F@£è%¼#ÿ@£èýó¶F@£è ‚-@£èýó¶F@£èÃpô@7µS&Á¾@7¬ƒ @2°Ä›¥ãT@2œê7m>p@1ù7KƧð@1ï%2»í^@1:Ô,<ží@14<{ã¬@1:Ô,<ží@17Ý‚bp`@1:Ô,<ží@16V)eüS?…nDyB Ã?öÒk_ã?”E—ÐÈø‚?Œ?tk¨?’\UýÅ?“‘CDb?¥—å–?žœð'2ã?šdÌwª¸¹?÷’X`&?’)®²½šP?”·üw#?¥Õ6Ù -?ޏïáì•q?‰ýø‘î?„c¶QÌÀõ?Šq~y¾?ŠZÃæv'@@"@"@@7@3?ð?ð?ð?ð?ð?ð¿UÜ›³ž?QǺ4?Fþ3¨î°v?Ez´êÕçµ@Ÿè=œg @£èzžÆ?iB™ R…M?[uÝ ñ;$?ÒMÕhCâ?ªÐ6¥Ú“@ŸnœÞtå¨@à@¬gÔýó¶F@¬gÖ“v@¬gÔýó¶F@¬gàù k»@¬gÔýó¶F@¬gâ\(ö@¬gÔýó¶F@¬gαÄ2Ê@¬gÔýó¶F@¬g¾ß¤?æ@¬gÔýó¶F@¬g¿Š ß@­[íV@­[ï²-@­[íV@­[áaä÷g@­[íV@­[Ñhr°!@­[íV@­[þÒˆÎp@­[íV@­\ +¦L/‚@­[íV@­\ …ðoi@6VšÔ,<Ÿ@6TÉ…ðoi@3û Iº^@3ûÚQÎ@3§KƧïž@3¥Â\(ö@3._oÒ @3@¾ í(@3._oÒ @3'éùrH@3._oÒ @3#ñA [À?…ÅBðrç?‘Ü„ Þ(£?œrôeEÜ?Œ:Z2‚b?¤vNh/?ŸlgŽ|*?|¬Çëý ?—8©$ +"º?ž¿cS?‘E:PXdÅ?˜Op¢‘¬?•lÓªü<?†DJ~_–?­[C½³i?—M3§´ ?†ü¢q+ÄU?—_ŒMŸ]D?ž„ýŸÒ`Ø@@@@@*@"?ð?ð?ð?ð?ð?ð¿pcU*t?wŽI›Î?Pë]–©Ù?Aß]î‰<@¬gÎÆè¡@­[úüg¼v?lëûÀÖ?a£Á©9ò?Öcÿ¯•Ó?Ç—?õ·U@ŸeJ“(˜@á@§’n—P@§œí‘hr@§’n—P@§‹¹Œ~(@§’n—P@§B&€I@§’n—P@§CÉîËû@§’n—P@§3©*0U@§’n—P@§,1&é@§^©xÔýô@§^°å`A‰@§^©xÔýô@§^{çl‹D@§^©xÔýô@§^DÝ/ @§^©xÔýô@§^ºîcŠ@§^©xÔýô@§^ÜwškQ@§^©xÔýô@§^Ä?åÉ@7L]cˆe”@7A×Ûô‡ý@4—+ Iº@4¶µ '»@3×ï²-@4 ³Ð|„¶@3&YJôðØ@2Óä%®æ2@3&YJôðØ@3ù k¹@3&YJôðØ@3®záH? Eˆ‡ðó‹?±è&Ô¸?¾ã°±ÞV?Äß$È×ç?¼ s:¢?³ìixU3?Ž=fA:?½¡†r6ê ?çh¤„]¿?Á\BÓâ9?ĉO’iïÓ?ºÕ¾F}«$ ?`yz|Ž¿a@§w[©@§^¸óyk'?€O©?y¯–>Š~e?Âý·c…Z?¸w‰Å“@Ÿaî«ÅŒ@â@¥zݲ-V@¥zÝó¶E¢@¥zݲ-V@¥zÞ5?|ï@¥zݲ-V@¥zÞž™@¥zݲ-V@¥zÞ í(@¥zݲ-V@¥zÜPHð@¥zݲ-V@¥zܾߤ@®Ëå`A‰@®Ëå`A‰@®Ëå`A‰@®Ë·Xâ@®Ëå`A‰@®Ë&éxÕ@®Ëå`A‰@®ËÎ_@®Ëå`A‰@®ËoiDg@®Ëå`A‰@®Ë4êL@2zqÞi­C@2zdÂø7´@.=²-V@.=cˆe”¯@-]ó¶E¡Ë@-^Ñ·Y@-b¶®~@-=Ùb·@-b¶®~@-JôðØE@-b¶®~@-Çâ‚@¸?É^³Dw'?Ï[äeæ?ÿ £‰¸9?¶*WFÑ?ÐbMçê_x?’˜‰%F²?‘N÷J’?6) }’ë?‘ ·èf?NÂò‚Ì`?€cPßQª?Œ¾»•lŽ?‚‹¡8*ú?ƒ¦$H?†£îž«î?†Ë¢L1Ù@@@@@"@?ð?ð?ð?ð?ð?ð¿Mf"†À>ñëÑÀ€?+L‡Ê¥ÏP?0 +ŽüÚ>¿@¥zÜðÙðð@®ËìÝ~@?:GÄÂÛ3>?>wkè·çÎ?pèªg{u?t6ÒµM£@Ÿs…žz,@ã@¬çÊ=p£×@¬çË…¸R@¬çÊ=p£×@¬çËC•@¬çÊ=p£×@¬çÆÜ]c‰@¬çÊ=p£×@¬ç˹Œ~'@¬çÊ=p£×@¬çË'»0@¬çÊ=p£×@¬çËC,¥@§ÿr° Äœ@§ÿs¶E¡Ë@§ÿr° Äœ@§ÿufÏAó@§ÿr° Äœ@§ÿuöý!ÿ@§ÿr° Äœ@§ÿtã¼ÓZ@§ÿr° Äœ@§ÿt,<ží@§ÿr° Äœ@§ÿuöý!ÿ@6ÞHè§æ@6ß—$tS@3+ Iº@3´9Xb@2~V“u@2hÛ‹¬@1¸DЩ*@1¸_ö”G@1¸DЩ*@1¹ùrGF@1¸DЩ*@1·ü¹#¢œ?‡YÍ_?’«p~v]Ù?’ +N»A3?Œåvæ" ?‘èÒ§ˆ„Å?‘îƒÔ1a?ˆÿÀ)T¿Æ?”üjÒÒtþ?‘ŽütÅÒ(?½¶³±×ò?‘Ð¥uv@£#hõÂ\@£#hÙ˜ä9@£#hõÂ\@£#h’÷ï8@›H33333@›H33333@›H33333@›H4fdµù@›H33333@›H6óáä@›H33333@›H/tçaÎ@›H33333@›H,¾AýÌ@›H33333@›H.væÑ@1žHè§æ@1ž\‘ÑN<@,{"Ðå`A@,u; $¨´@,dZ¬@,-’Ò„@+žžš@+ŸÍ„ÊÛ@+žžš@+ Ef¦Ù@+žžš@+ Ç:¼”q?É^žP¬!?y —“ú@?‘=uÐF¾Þ?‹ØÆ|€Ñ?‘%V¸772?ÝÍŽ$“?ÐbMÝn½?’kcc??¡dc?¢E?Y“ÐÃ|?þ†AùЊ?låƒ,?€feãt²1?ŒÃ}]É}?‚¦‹©¶u?ƒä²§MJ?†Æyu­¦¯?†–— )º`@@(@(@*@6@5?ð?ð?ð?ð?ð?ð¿Q»9n\¿6ÉÍ_?3[²ɾ?5Ùm y@£#i£†=@›H.8\ÅØ?BeZÿIx?D²»óÉú?€W.ù¸qm?‚w Oòœ`@Ÿs€m@å@ í¸Ôýó¶@ í¸ÔW×H@ í¸Ôýó¶@ í¼”Ü@ í¸Ôýó¶@ í»ïq„à@ í¸Ôýó¶@ í»Ú—@ í¸Ôýó¶@ íÇôt€h@ í¸Ôýó¶@ í¼˜D¤@¦2,‹C•@¦2,‹é±ï@¦2,‹C•@¦23¶š@¦2,‹C•@¦2.n»U–@¦2,‹C•@¦2.3˜âÚ@¦2,‹C•@¦2,R@¦2,‹C•@¦2/Ágšé@4Ç>«6z@4È^µ+ù«@1€ Ä›¥ã@1|,7\dþ@0ä¼j~ùÛ@0ßt½ËçÜ@0OO „M@0CüýÅ@0OO „M@0Eû–ž8@0OO „M@0JÂ4OÚ(?|¬Æ Væ?{X`(’b?‘"zùì?Œò¹nPE?˜œG€(M ?‘ž&>7?|¬Æ Væ?’å[ƒA÷‹?‘F¼æÞÀW?…K.w?š`¹¯0l×?”ÆQ_{?‚«Kµ¶??ŽêÂ7q?ƒ”süw"?ƒsÑËùQ?Šœ +áØ‡Í?ˆ”ÈO„@@@@@4@6?ð?ð?ð?ð?ð?ð?V [??¯þ#p?Pp.ýˆø?0ÓŽ+üÙÈ@ í»ãÍ—@¦2-OW?oKÀù·?P=ÜvÈ•)?èéëï8?¥Âλš™@Ÿeu/É‚O@æ@ ‹ó¶E¡Ë@ ‹ó¶E¡Ë@ ‹ó¶E¡Ë@ ‹ôaxý@ ‹ó¶E¡Ë@ ‹ôÀ\0@ ‹ó¶E¡Ë@ ‹ôýýP@ ‹ó¶E¡Ë@ ‹ò/+@ ‹ó¶E¡Ë@ ‹ò9Æë-@¤`ËC•@¤`ËÆ§ïŸ@¤`ËC•@¤`É“y@¤`ËC•@¤`Ë ³À@¤`ËC•@¤`ÌHOT@¤`ËC•@¤`˜ӌÅ@¤`ËC•@¤`ËØÃ™@4­¥œàv@4­ÈãL?4@0áhr° Ä@0âu%F +@0—ï²-@0˜·žŸ±@/ÿåÉä@0¼÷ðŠ@/ÿåÉä@0À @/ÿåÉä@09Åhà?}@T˜ÁÎ¥?ð^Kñ?‘=|x”;¡?‹«F§B ?‘î‡?Ú^8­Ç?}@T˜ÁÎ¥?’ ¤{¾?‘p‹»à?-õ(ƒ½?ßM$rÈ?kÆŠîÜõ?‚;X8?ŒÑb×¶@?‚¹O¼¹ÝX?ƒQÚBnåž?†­Jê˃?†¥<ï˜à@@&@*@ @8@7?ð?ð?ð?ð?ð?ð¿,áâÉ>ñ(k?3zžk"N”?=Û¬äµØ@ ‹óiSÄ~@¤`Ë×Íér?Sa=n˜?1“ w¿J-@ †ŠÀƒo@ †…†òs@ †ŠÀƒo@ †~àJ×@¬  Ä›¥ã@¬ &fffg@¬  Ä›¥ã@¬ #1§@¬  Ä›¥ã@¬ !Cc;@¬  Ä›¥ã@¬ .Ô§½'@¬  Ä›¥ã@¬ 'y®¨@¬  Ä›¥ã@¬ &mT2§@7Ì]cˆe”@7ËfŠä@3žÙ‡+@3F:`ˆ@2çKƧïž@2â^P:}ö@2”mÅÖ8†@2‹»'ðÚ@2”mÅÖ8†@2“‹r–ö@2”mÅÖ8†@2”¬Ohhð?‰çõ×eµM?ãØƒ ?‘‹cerí`?ºÛ.ðìØ?”5'Å¡?“§Ê;  ?ŠÊuq•ú?’kà»Ê¤«?‘hajƒO=?’–=k¥¶?•ÇS ÎÀ?‘›# +îз?‰lÛÐNÉ#?‘8üô´»?´KWQûÝ?†sX¢ê?!ä-«¿C?Fß= 1@@$@$@(@9@5?ð?ð?ð?ð?ð?ð¿LÀ„Ð?*¸6(€?D}ò¨s%?R¹†.âÞ@ †ƒ;t¦y@¬ (M®†?cÍéÓÝu?sjhYç?ƽCËJ0?ä1Iï–;@ŸjÏ”¼@ê@¯gï²-@¯}/Ÿ¾@¯gï²-@¯mí(Œæ@¯gï²-@¯n.±Ä3@¯gï²-@¯nóMj@¯gï²-@¯dÂø7µ@¯gï²-@¯fYJôò@«åÐå`A‰@«åÏ\(õÃ@«åÐå`A‰@«åØFÜ]@«åÐå`A‰@«åÓÝ—ö*@«åÐå`A‰@«åÕ%F +¦@«åÐå`A‰@«åÓ àÞÒ@«åÐå`A‰@«åÒ×sü@5N쿱[X@5A ²•éâ@2GÎÙ‡+@2P Ä›¥ã@1PA‰7KÇ@1TSŽóMj@10–»˜Çã@16YJôðØ@10–»˜Çã@10©*0V@10–»˜Çã@1/¾vÈ´:?µÕjùq®p?“¤bDÒ¼*?’#ç}iïë?‘öJî¯Ê®?‘oNÅ’+?‘¦‘=W?ˆÿÀ)T¿Æ?› —/Ù‘?’€fç½Î?“ ç¥Íç&?‘x9ξÞO?‘ ‡#é +´?¹8¿íxš?ŒË›Í‡Çq?‚ù…žÄ`x?„•ˆG’Z¾?†ïRÉv‘Ñ?ˆ‹”âó@@@@@*@*?ð?ð?ð?ð?ð?ð¿q"NÁ!?Jó©º0?\ÖÑÓRü?@ úÕ]¶ò@¯j!«@«åÒÜà ?n328ow?bžöÅ«{¯?Ð`š*… ë?À†ÿ°4@Ÿq“œ±¢@ë@¯ÅËÆ§ïž@¯ÅÎV“@¯ÅËÆ§ïž@¯ÅÃîÕ¨ô@¯ÅËÆ§ïž@¯ÅÃð2Üñ@¯ÅËÆ§ïž@¯ÅÐß«U@¯ÅËÆ§ïž@¯ÅÌ7ήm@¯ÅËÆ§ïž@¯ÅÌß³@—$‰7Kƨ@—$€J˜H@—$‰7Kƨ@—$7ÿƒdï@—$‰7Kƨ@—$« y¶Ž@—$‰7Kƨ@—$¹÷èlL@—$‰7Kƨ@—$º+ç@7쿱[X@7 "<5@3; Iº^@34ÃF}¾À@2lj~ùÛ#@2gI™a”@1î_oÒ @2 ×oÇ@1î_oÒ @1âHµjœf@1î_oÒ @1âÝ×ny?‡©½(‡üÐ?É3ðèF?‘ð°ˆÔd?—.ê{„±>?“ðY®3Bå?–J¢"þƒ?ñ3<' ?”9E†ìC?‘¨$þâWÚ?¢šà‹ˆ‹?–†OŠR^?˜±jñ -?‡Ù$PUdG?Ô¦O‹?…¢|~±†!?‡aDr€Ä?A´`Òlÿ?ŒÃœØúøÌ@@$@@,@8@7?ð?ð?ð?ð?ð?ð¿;I0½`?zÍ‚ìÔÀ?7_Ú;ÿ?E›5Ù@¯ÅͪÑ~±@—$ı¤|?WÆ †ëã?föÈ…>A¹?­„D¯¨Ð»?É®VÅ0~@ŸgLÀ¡Ý~@ì@¢®Ä“t¼@¢®Ã× +=r@¢®Ä“t¼@¢®Æ?@¢®Ä“t¼@¢®Áä÷eÿ@¢®Ä“t¼@¢®ÅÖ8†Y@¢®Ä“t¼@¢®µÂ\)@¢®Ä“t¼@¢®¦1ø @¬^¸Qì@¬^ãS÷Ï@¬^¸Qì@¬^u%F @¬^¸Qì@¬^ýŠÚ»@¬^¸Qì@¬^ÃÉîË@¬^¸Qì@¬]ø}¿H@¬^¸Qì@¬]ßË’:+@3`ØDЩ@3_ìVÕÏ«@/³t¼j~ù@/¶»˜Çâƒ@/wOß;d@/vE¡ÊÀƒ@.­úCþ\’@.¹e+ÓÃ`@.­úCþ\’@. ëíúD@.­úCþ\’@.†ÏAò×?|öOÿÝ?:LÓá +í?”B 'nr?’9ñ9¶ò8?”¶q fì?œs[Îæz?|öOÿÝ?’&u÷E»@?’TÖ©E?’RÖò?” E®!—?Òƒ~/[™?‚‹¡8*ùÿ?ŒïQ¼º“ã?…/‡ÙX·³?†3_¾ˆ?‡Õ˜]–GÄ?‰®ââP\@@@@@&@(?ð?ð?ð?ð?ð?ð¿m8ʳϿr1·ƒ?`¿öŒ´-l?`‡AtFÙ@¢®¾ +WÀÃ@¬]þ_Öóù?~qA|yÞ?}ö÷ÿ À @Ía£§i‘@6¼+¨D@ŸdQ#ü~@í@­ÎÁ‰7KÇÁ.„€@­ÎÁ‰7KÇ@­Î¤µÜÆ?@­ÎÁ‰7KÇ@­Î¯ùrGD@­ÎÁ‰7KÇ@­Î’¼£@­ÎÁ‰7KÇ@­ÎÙè>BZ@­ÎÁ‰7KÇÁ.„€@£Ï\(õÃÁ.„€@£Ï\(õÃ@£áò×r@£Ï\(õÃ@£ÍÒñ©ý@£Ï\(õÃ@£Ék¹Œ~@£Ï\(õÃ@£Ú…‡“Ý@£Ï\(õÃÁ.„€@8ëµsê´Á.„>¤µÜÆ@4 Iº^5@4 uöý!ÿ@2ìj~ùÛ#@3:û~‘@2L¿±[W?@2gsüPH@2L¿±[W?@2Ahr° Å@2L¿±[W?Á.„NÜC,¥@8J¨?²š¥Z#'f?¥¬ã×a6H?žE 2#Å?¶Ëvö@›@8Ù@8J¨?¶¬HðºDŸ?®`)Ô¤Ü?°?Í{%¼?°Ý aKå¯@8û—@8p÷?¬©Eä„m?©¨¤•£ ‰?°Y¹VϪ·?³G]•ÈJa@8 Ø@@@@*?ð?ð?ð?ðøøøøøøøøøøøøî@¤—Oß;@¤™‡+@¤—Oß;@¤—ö+jè@¤—Oß;@¤˜“t¼j@¤—Oß;@¤˜bMÓ@¤—Oß;@¤–¡aä÷@¤—Oß;@¤–ý!ÿ.@¡–É7Kƨ@¡–È´9X@¡–É7Kƨ@¡–ÈŒç°@¡–É7Kƨ@¡–É7Kƨ@¡–É7Kƨ@¡–ÉQ‚©“@¡–É7Kƨ@¡–ÈË’:@¡–É7Kƨ@¡–ÈXy=Ù@5p4mÅÖ8@5oªÍžƒä@/¸“t¼j@/¸“t¼j@-†éxÔýô@-†ö”Fs‚@+Aò×t@+Ÿ¾vÉ@+Aò×t@+ªÍžƒä@+Aò×t@+–»˜È?‚á²Olºü?äm°û0Ž?‘(¥¿á?‹µ™eU!µ?ðÌÇßgé?´âµÇ>¬?‚á²Olºü?’›ÈÖÝ?Œqç©Fü?6) }’ë?Ø¥²À<(?PS2K¯™?‚¯­Ù¤Áµ?ŒÖ +ÄȲ?‚† SFò?‚ìxqC?†špk Y?†©b/bJö@@@@@*@&?ð?ð?ð?ð?ð?ð¿?ƒØ¿Ò±‰À?*H*?ù?ž:®B@¤—ï…"Ý@¡–ȱÉ‚?8ýžV\â?;I£¨øI>?{‘l»~ló?0">±éƒoð¿bLJ˜?CeÑ9êy©?Gó`@Ü÷–@ªØ±më·:@«9Z¼?aÇ}·q÷T?e<_%n ?Ï»ƒ^ƒ4?ÎtIå‰D@ŸdFâåç@ð@­¸çl‹C–@­¸è1&éz@­¸çl‹C–@­¸éxÔýô@­¸çl‹C–@­¸éº^5?@­¸çl‹C–@­¸æéxÔÿ@­¸çl‹C–@­¸áò×s@­¸çl‹C–@­¸ã•&@¨ñ&éxÕ@¨ñhr°"@¨ñ&éxÕ@¨òþÅm]@¨ñ&éxÕ@¨ñÅ@¨ñ&éxÕ@¨ó@N¤¨@¨ñ&éxÕ@¨ô¢3œ@¨ñ&éxÕ@¨÷€4mÆ@4Ñ|ÚQ@4Ñ·Xâ@2¸r° Äœ@2·KƧïž@297KƧð@27ï²-@1á:’£S@1Þߤ?åÉ@1á:’£S@1ÞHè§æ@1á:’£S@1ÝÌcñA ?|öOÿÝ?4ë©$è‰?‘âTÀÊS“?Žl¢¦µ¥?‘ñ•/m£{?‘m×e\»?|öOÿÝ?“[¡ŽuœÙ?‘ú-8ûõö?’:u.ý ?‘†óèJL\?‘:i€ÑìÂ?ƒ´],mÖ,¤?)F››˜@­¸æ=§ú@¨óŒ?16?V5z•µç?IÃTÆé§Æ?¸õ)þÚÕL?  uEl9¦@ŸfŸ¢Ï×ý@ñ@®;dZ@®|í‘h@®;dZ@® +JŒM@®;dZ@®tSŽò@®;dZ@®Ñë…¸@®;dZ@®ôFsØ@®;dZ@®Øï4Ö¡@§4îzáH@§4îzáH@§4îzáH@§5!ÿ.Hê@§4îzáH@§5êJ‹@§4îzáH@§5 ~($ @§4îzáH@§4ü¬1&@§4îzáH@§5•%@3kµsê´@3k/ìVÕÐ@2!hr° Ä@2$Ý/@1F“t¼@16_Ø­«Ÿ@1YŒ~($ @1<64ê@1YŒ~($ @1«6z@5ÈQë…¸@1xr° Äœ@1wéùrG@1U`A‰7L@1S àÞÒˆ@0kxFÜ^@0i*0U2b@0kxFÜ^@0jÚ¹õY´@0kxFÜ^@0j’£S&?|öOÿÝ?]àÛ‘?’>¯\¾¦?Œ<…ÓÆÝ?‘PÊÑ<Ým?æöæ×t?1·†Æjñ?’7Îf¬ps?‘t‰WZñ?èÊ\då?‘®7Ö=^9?ó‹P=´?‚ÂÌ]å?ŒöOÿÝ?ƒíÈm½!¿?„†YÊ’È?‡YÍ_?†å·ÑfWà@@@@@ @"?ð?ð?ð?ð?ð?ð?>a#¿2…{?4å¼ïÑ?,6DÀ>ü@«Ô¡»œ»P@®„ë®é?Tûþ|Ø÷?L ñ¬®Ú!?µ0眭öã?£._ŽM‹@ŸgS1r¿@ö@¢Ý©ûçl‹@¢Ýž¸Që…@¢Ý©ûçl‹@¢Ý­¸ºÇ@¢Ý©ûçl‹@¢Ý¬²•éá@¢Ý©ûçl‹@¢Ý¬~($ @¢Ý©ûçl‹@¢Ý£S÷ÎÚ@¢Ý©ûçl‹@¢Ý¤÷eý‹@¢¤²-V@¢¤)ûçl‹@¢¤²-V@¢¤;dZ@¢¤²-V@¢¤b¶®}@¢¤²-V@¢¤"œwšk@¢¤²-V@¢¤ðº@¢¤²-V@¢¤rGE9@8–šÔ,<Ÿ@8‹)^ž@2.5?|í‘@21$Ý/@1_²-V@1`:û~‘@0…œàu÷@0‚‚@·€4@0…œàu÷@0ƒn—P@0…œàu÷@0‚ÃÉîËü?…ÅBðrç?‘6 '8?‘&Øç?‘?ŒÖ +Äȱ?’<_+fjä?‘m×e\»?‘â%ì˜ ä?’p RN%Î?ŽËÜ¿€?ø,~[´?’pP‡È»?’ Óº^?‹f°ùr[‚?pù51íÒ?Š6EŸòÙ?†ü¢q+ÄU?°4\ɵ?‹&¸ê±fÂ@@@@@*@(?ð?ð?ð?ð?ð?ð?Z?ÖAè¿o4;u!?Zb?ª5 ?PœÑÿ@@¢Ý¤æ¡<$@¢¤ü$\?z©Š”95?mª´âYÞ®?ùH¢‰ _?Ö_éÆ@j@ŸkOÚm“@÷@¨pøÔýó¶@¨p÷ÎÙ†@¨pøÔýó¶@¨pù³Ð|„@¨pøÔýó¶@¨pùè>B[@¨pøÔýó¶@¨pùe+ÓÃ@¨pøÔýó¶@¨pøºÇË@¨pøÔýó¶@¨pù k¹Œ@ª¯²-@ª­V@ª¯²-@ª±&éxÕ@ª¯²-@ª®æ1ø¡@ª¯²-@ª¯Ÿ¾w@ª¯²-@ª®¾ß¤?@ª¯²-@ª¯Aò×@6zqÞi­C@6yÎ_oÒ@0° Ä›¦@0Â䎊qÞ@/|¬1&ê@/|žì¿±\@.¸7´¢3œ@.·$tSŽô@.¸7´¢3œ@.·$tSŽó@.¸7´¢3œ@.·>«6z?ˆÿÀ)T¿Æ?Čۨ1A?‘=?ùKh?‹ä†€{6è?îú/´`?ÍàÊaùX?}Ñ¿ž,?’ ,øÕC©?Å)Ì_“?e”[|ú(?Ö§­îQD?lINõÕ„?ŽâS[ÞDí?Œáò¯ž¼ù?‚¸“Îè ø?ƒ†+ Å?†µ°jÆÃ?†¯Mž684@@@@@&@(?ð?ð?ð?ð?ð?ð?1.¨ ??fû€?$iú=A­z?{h£Ìaž@¨pø­¬–@ª®Ms_f?C*2л?=»w9Åù&?‹;íö#Ô?ƒçj×”ƒ@ŸiwíºÄ@ø@¢)°£× +=Á.„€@¢)°£× +=Á.„€@¢)°£× +=Á.„€@¢)°£× +=Á.„€@¢)°£× +=Á.„€@¢)°£× +=Á.„€@šÀ¹XbNÁ.„€@šÀ¹XbNÁ.„€@šÀ¹XbNÁ.„€@šÀ¹XbNÁ.„€@šÀ¹XbNÁ.„€@šÀ¹XbNÁ.„€@7Žì¿±[XÁ.„>¤µÜÆ@4{ Iº^Á.„M‰ûçm@4"-VÁ.„QnÙ‡@3uµsê³hÁ.„NÜC,¥@3uµsê³hÁ.„NÜC,¥@3uµsê³hÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøù@®¿€@®¿€@®¿€@®¿€ƒn˜@®¿€@®¿€N¤¨Á@®¿€@®¿£n.³@®¿€@®¿b¶®|@®¿€@®¿~ùÛ"Ñ@®2° Äœ@®2-V@®2° Äœ@®2:)Ç{@®2° Äœ@®2½<6@®2° Äœ@®3œ¾à@®2° Äœ@®2-V@®2° Äœ@®4¼@5šÔ,<Ÿ@5R½<6@0Ìí‘hr°@0ÍŠÚ¹õZ@/÷Oß;d@/øy=Ùd@0 +0U2a|@0 +’£S&@0 +0U2a|@0 +™0¾ î@0 +0U2a|@0 +çÕfÏB?}Ñ¿ž,?Qdöÿô¼?‘\H{gX ?‹ó#ƒt£?‘¿ÐÅu?À­Õß}º?}Ñ¿ž,?’u¦ieõ–?ð{¥âdú?Hª¦ºón?øóéM Ÿ?M\³Ù“@?‚¸“Îè ÷?ŒïQ¼º“ã?‚Ö˜>µDá?ƒ¦$H?‡×7°º?‡v>ª¸ @@@@@$@?ð?ð?ð?ð?ð?ð¿9òÆ€?2{-Wp?2¶Ä:nGg?'N”\ðÛ@®¿€×I@®2Ñî½(?R°ei&8U?G×pG0} ?²`çAn º?œ» +Ïï"Ó@Ÿg4eÚyö@ú@¤¨^¸Që…@¤¨^ùÛ"Ñ@¤¨^¸Që…@¤¨\wškQ@¤¨^¸Që…@¤¨]/Ÿ¾@¤¨^¸Që…@¤¨`ù kº@¤¨^¸Që…@¤¨`4mÅÖ@¤¨^¸Që…@¤¨_±[W@@¥ A‰7L@¥5?|ï@¥ A‰7L@¥¬1'@¥ A‰7L@¥\‘ÑN@¥ A‰7L@¥i­BÄ@¥ A‰7L@¥ 'RTa@¥ A‰7L@¥oÒó@7T xFÜ@7RëC,¦@2Ô›¥ãSø@2ÓŠ Þ@1ù7KƧð@1óÉîËû@1QÞi­BÄ@1Q·Xâ@1QÞi­BÄ@1P6âë@1QÞi­BÄ@1PU2a|?Ž=fA:?‘­b š=?“ýª‘À?Œ‚èõЊ?’êÔÒ?‘¦‘=W?€‚ñêã ?–øÐ°€l?”ïZºœ·?‘jýÚXÜ?‘ô 5Y?‘T¾_Þ?’ž²¢# Y?†¡HŸÊç?† + Ðló]?ƒË´ÔC¶¼?ˆ +¿„r©Ý?‡Õ˜]–GÄ@@@@@,@,?ð?ð?ð?ð?ð?ð?)ʬ{°?4Æïà?1šuÿ„j~? Ðïräë•@¤¨_ý0Šö@¥ùÓÂW?OªÂ(ˆòÐ?Bmêóþ÷?Ÿ?]ês¨?‰À¡¿ ~@Ÿj6IM#3@û@­ó4¼j~ú@­óÈ´9W@­ó4¼j~ú@­óž5?|î@­ó4¼j~ú@­óÆö”Ft@­ó4¼j~ú@­ó§l‹C•@­ó4¼j~ú@­ó_Ø­«Ÿ@­ó4¼j~ú@­ót¯O „@«¹{çl‹D@«¹}ó¶E¢@«¹{çl‹D@«¹kàÞÒ‰@«¹{çl‹D@«¹^($ x@«¹{çl‹D@«¹~ÒˆÎp@«¹{çl‹D@«¹X7´¢3@«¹{çl‹D@«¹i7Kƨ@8™*0U2b@8–_Ø­« @3sS÷ÎÙ@3·€4mÆ@2×ï²-@2rMÒñ©ü@2–ý!ÿ.I@2§ï²-@2–ý!ÿ.I@2*³g ù +@2–ý!ÿ.I@23üPH?­g;+³ût?Íê[º_¹P?Ì nŽæ+?ÊbàÒfgµ?Èÿˆ‰Ûã?Ì,af2 ?Œs¤DÅÐ?ÐAµ#Ã(?Än;ÔIÆ ?Ï—X÷®–€?Õ {Å·?Ó@¤šž”.?‹?ü}(´2? ·õzúÂ?’úz."?¨ŸŠOºÌ™?¢}ÉTãvÃ?º˜$¬‚Í@@@@@,@,?ð?ð?ð?ð?ð?ð?˜2‹ê2À¿sÖÉœ?„† ¯PÍP?d#¾~87‘@­ó6îæÕ`@«¹x±Ì? ZðÂObs?xúÈ£9%?å¾3,›59?˜Ë¬€B\@Ÿ_¿Ï¶n@ü@¬\¬1'Á.„€@¬\¬1'@¬8bMÓ@¬\¬1'@¬>ùÛ"Ñ@¬\¬1'@¬1N;Í6@¬\¬1'@¬?¾vȵ@¬\¬1'@¬FÂ&€@¬¾nzáHÁ.„€@¬¾nzáH@¬¾i7Kƨ@¬¾nzáH@¬¾gE8ï5@¬¾nzáH@¬¾g“Ý—ö@¬¾nzáH@¬¾n¤¨ÁT@¬¾nzáH@¬¾oAò×@9kµsê´Á.„>¤µÜÆ@4» Iº^@4¦lô!.@3çKƧïž@3ØÁTÉ…ð@2á:’£S@2ÒëC,¦@2á:’£S@2Ûšu&@2á:’£S@2Û…¸Qì@8J¨?˜óV“,M?™ûР'®?™¼”Ý‘l??›‚Oã<?šWDáÌ· @8J¨?› Öü{?ÏtP°*?œR6ŠÂU?—uG<Ê?•lÓªü<@8p÷?’;WZŸÿÔ?“>û{Ñø~?‰E^uŠš?ŠEÝ‹N?–¨¬:­÷@@@@,@(?ð?ð?ð?ð?ðøøøøøøøøøøøøý@Ÿ¥ãSøÁ.„€@Ÿ¥ãSø@Ÿë041@Ÿ¥ãSø@Ÿ9Ù}@Ÿ¥ãSø@ŸÛçÕÑ@Ÿ¥ãSø@Ÿì"µ²Ä@Ÿ¥ãSø@Ÿ©¹Ã¥Å@£ZæéxÔþÁ.„€@£ZæéxÔþ@£ZÓH³%â@£ZæéxÔþ@£Z»cÓàù@£ZæéxÔþ@£[ã£5/@£ZæéxÔþ@£Zô$'6@£ZæéxÔþ@£ZôM>Rü@9:qÞi­CÁ.„>¤µÜÆ@4T›¥ãSø@4_|í‘€–@3ÒÐå`A‰@3ÌCFO4@2ó&Á½¥@2æ4»èÃ@2ó&Á½¥@2Ì^!c3@2ó&Á½¥@2Î<†+¦@8J¨?•á‰â7«é?§Vo‚?“EÓÁ˜Ž?¦ßœÚªAó?®>Ëxÿn)@8J¨?’_ê´¼#?¢ÈÎë1Ö?‘xR$;Xy?¤QŠ¡•j{? põ]ö“@8p÷?Œ¬2aå?¡»‚º»?‘O´2é«?—¯“úàú›?•Z ¬P…@"@ @@2@1?ð?ð?ð?ð?ðøøøøøøøøøøøøþ@£!^5?|î@£!lIº^5@£!^5?|î@£!Iá°‰ @£!^5?|î@£!V‡+ @£!^5?|î@£!bø7´¡@£!^5?|î@£!YÛ"Ðå@£!^5?|î@£![W>«6@¥š ÌÌÌÍ@¥™Ü¬1'@¥š ÌÌÌÍ@¥š ô!.@¥š ÌÌÌÍ@¥š`A‰6@¥š ÌÌÌÍ@¥š +³g ù@¥š ÌÌÌÍ@¥š +qÞi­@¥š ÌÌÌÍ@¥šï²,@8 ]cˆe”@7üàuöý"@3°Ä›¥ãT@3¹ 'RT`@2²-V@2•‡“Ý—ö@2O „M@2Š Þ@2O „M@2@·€4n@2O „M@2©*0U2?±Á1È]?“`xþðê@ŸrýTPw@@¦¾bÐå`B@¦¾N¸@¦¾bÐå`B@¦¾e¸Që@¦¾bÐå`B@¦¾]—ö+l@¦¾bÐå`B@¦¾ezxl"@¦¾bÐå`B@¦¾eÌó@¦¾bÐå`B@¦¾eãYôÇ@œ¦Å¡ÊÀƒ@œ¦»ŽÜ¡f@œ¦Å¡ÊÀƒ@œ¦½¥ž@œ¦Å¡ÊÀƒ@œ¦—Xâf@œ¦Å¡ÊÀƒ@œ¦¡–R½<@œ¦Å¡ÊÀƒ@œ¦•ÈÓoÛ@œ¦Å¡ÊÀƒ@œ¦°+6ÿ@7è†YJôñ@7æRcH@3‚° Ä›¦@3z¬1'@2¬j~ùÛ#@2®Ov_Ø®@1ýcˆe”°@1öµ '¼@1ýcˆe”°@1ùÂåÌ/ý@1ýcˆe”°@1÷•ÜWK´?£‚ƒåuCb?–:ð»}TÇ?‘RsÈW?’èÞ㬱_?é>&óÄý?±l8á?€”ëû·«?¤OíÄ?•Q²rz¢ù?—êöªDH?’‡¤Óú]?’ á©ú†—?Ÿ +ãlqbY?“Ø/‰ #?˜‡¦*3?‰Ò–(?ŠV©Þ'f‰?Œ!×]ð@@@@@$@.?ð?ð?ð?ð?ð?ð?j´Wòš¿e6-•)?`´$7 +–«?Y„w烡@¦¾bzè *@œ¦© SÌÜ?v¦9ÿ‡?€ÌŸâ"I¢?ã÷•f?û”Çó¨@Ÿoܪxú@@ŸdvÈ´9X@ŸdwKƧð@ŸdvÈ´9X@Ÿdz‹¥€’@ŸdvÈ´9X@Ÿd‚¶‡S@ŸdvÈ´9X@Ÿd‡DA´y@ŸdvÈ´9X@Ÿdt]ðX‹@ŸdvÈ´9X@ŸdsÛÆ5@£Ÿfffff@£ŸfšÔ,=@£Ÿfffff@£Ÿf..@£Ÿfffff@£Ÿf¶DÉ@£Ÿfffff@£ŸV&åÛ1@£Ÿfffff@£ŸfS‡B@£Ÿfffff@£Ÿe›=È@4VšÔ,<Ÿ@4UíÆå¬"@/ÂÐå`A‰@/Ï%ºÅW@/Œ1&éy@/§êv¨â™@.kjçÕfÐ@.yõC @.kjçÕfÐ@.k%½ø@.kjçÕfÐ@.jèEi{?€‘gQÚÃ?Ï*åŽß?‘MÚÜÖ„¬?‹ýmñëOº?íOà¡™2?Ã9H[áŒ?|çµB &€?’ +wÉ\Ço?¨PqÞlg?VÝch¸?×IÉ»Ba?Sü D¢¨?‚¬®eà?ŒÞ¸ºeq?‚ƒ KKã?ƒÍ©&?†­Jê˃?†¯©ï\3@@$@&@"@5@7?ð?ð?ð?ð?ð?ð?½ãà¿K0‚©à?SÿîfÖy‹?^—c¤Í@ŸdyŠðö<@£Ÿc±)æ;?sãÜB»¯'?ˆ>,‘C?óê P,ö@ QÝÅ@ŸgeãD>5@@¢åãS÷Ï@¢âïäào@¢åãS÷Ï@¢ôêJŒ@¢åãS÷Ï@¢ç¯·é@¢åãS÷Ï@¢îæ1ø¡@¢åãS÷Ï@¢ë]6j@¢åãS÷Ï@¢æU˜ø@a©ûçl‹@aŠÿ_Ë@a©ûçl‹@a° Ä›¥@a©ûçl‹@aº^5?}@a©ûçl‹@a‡Ë)_@a©ûçl‹@aò©/=@a©ûçl‹@a‹›M ¹@7G>«6z@7-i~ÝU‰@2|í‘hr@2 +Ížƒä&@1{Ƨï²@1‚\(õÂ@0ÔmÅÖ8†@0ÐbMÒñª@0ÔmÅÖ8†@0ÑA"jœ@0ÔmÅÖ8†@0О7'L?Ž\Õl6Ò?™¿µ´¿1´?™™w4fà¨?˜Ë;Äõ6?æú ¯_Ñ?—ú'H¸?‘ 1˜Ó ?––ïFHÇN?šï/>¬¹’?¤¥cSÑßÑ?ž†J¥Y&Í?æß­¹Ð)?…϶ ¡œÀ?“êXÔ #{? ;ŠaÙ?’ª=˜Å?’y +5G?—Œ—jc­@@@@@.@*?ð?ð?ð?ð?ð?ð?U£@6Â?0nD˜?UŠÔr;žÕ?:ØŽ‘T^@¢çŽ×±ò@aŒÓhÁ?v(ôMÆ$¾?\¿êç¾DÀ?á!CËÜ„ˆ?¢æFwN†@ŸhöûÎÇ@@Ÿóì‹C•Á.„€@Ÿóì‹C•@ŸõÄ›¥ãS@Ÿóì‹C•@Ÿõcˆe”@Ÿóì‹C•@ŸõÅo@Ÿóì‹C•Á.„€@Ÿóì‹C•Á.„€@ž¢+ IºÁ.„€@ž¢+ Iº@ž£È´9X@ž¢+ Iº@ž£S÷ÎÙ@ž¢+ Iº@ž¤{J#9Â@ž¢+ IºÁ.„€@ž¢+ IºÁ.„€@3àØDЩÁ.„>¤µÜÆ@0f‡+ J@.Í5¨Xy=@/S¶E¡ÊÀ@-ª¦L/ƒ{@.Š#9Àëî@,¡½¥œá@.Š#9ÀëîÁ.„NÜC,¥@.Š#9ÀëîÁ.„NÜC,¥@8J¨?šÏD²öå ? ±ubÊÅ5?­dÒ¦Ó 3@8Iç@8Ù@8J¨?¢²Ö¤}Ð?ŸÀh¡º?О:hØ÷@8S@8û—@8p÷?›ì8h z=?‹‘+-/Ý?³úÜfK/Ñ@8 Ø@8 Ø@@@?ð?ð?ðøøøøøøøøøøøø@¢aW +=p¤@¢aT¼j~ú@¢aW +=p¤@¢axl"h @¢aW +=p¤@¢a|‘ÑN<@¢aW +=p¤@¢acñA \@¢aW +=p¤@¢aN}Vlô@¢aW +=p¤@¢aYõY³Ñ@¬åCn—@¬åL1&é@¬åCn—@¬åU$Ü@¬åCn—@¬åES&Â@¬åCn—@¬åZ6âë@¬åCn—@¬å@·€4@¬åCn—@¬å /ƒ{I@7Ç>«6z@7ÆÏAòØ@3f‡+ J@3WeýŠÚº@2®ùÛ"Ðæ@2”%®æ1ù@1𖻘Çã@1Ô xFÝ@1𖻘Çã@1ÍVlô!@1𖻘Çã@1È´9Xc?–ªÎ­¡?œf¨Db?­ß +Ú¹ `?‘CÀ><¹?²i=Í—Ž?·ãöâ?1·†Æjñ?•@¼Cк?±„ -9œ×?˜® ™¥g?œ××€§©? ª w³ +?³&Ô,ô?i-ý-›…?”ù‰ÚÞ©)?”AXÄ|åy?Œ8¸wx¯?гá‡}@@@@@&@*?ð?ð?ð?ð?ð?ð?p;á ¿‡CŒ‹Õ€?fû‰F¼‘?|£OP1ƒå@¢a^(°}@¬å7ÃÀª?ÔákI”?šã´ÇÛ?å«K„u¹@0ã» ä´º@ŸdïB»U¸@@¥ ÌÌÌÍ@¥ Iº^5@¥ ÌÌÌÍ@¥ë…¹@¥ ÌÌÌÍ@¥ w1Å@¥ ÌÌÌÍ@¥ŠqÞj@¥ ÌÌÌÍ@¥Ëû¶@¥ ÌÌÌÍ@¥ L˜_@¬D/²-@¬D/²-@¬D/²-@¬D9³Ð|„@¬D/²-@¬D8*™0¾@¬D/²-@¬D3©*0U@¬D/²-@¬D0°ò{³@¬D/²-@¬D.ŠqÞk@1¯O „M@1¯O „M@/Üj~ùÛ"@/ÓŽóMj@.IxÔýó¶@.@A‰7KÇ@.Bu%F +§@.7Xâf@.Bu%F +§@.6R½<6@.Bu%F +§@.6È´9X?É^òÀXæN?Kb½™×?‘Š©Nà¶?º•÷ ?“2{Áw¸?’4¶ó?ÐbMçê_x?’p RN%Î?üÓqÔN‰?’‘Ç#·X?“Al.6¸?‘yÃúCŠ?€b¡´ñ@?ŒÖ +ÄȲ?‚á²Olºý?…bv{3dZ?‡¤o„C?‰]³ß’Ý@@@@@$@,?ð?ð?ð?ð?ð?ð¿NQmmß¿a¯ 7.`?Bp’èš~Þ?2îµÄ…@¥ ÔäsL@¬D1+ÃØv?QÒQÍÙ¥?B%aˆœ?—±hôY>¾?vìgeàŽ7@Ÿs0¶ô{Ù@@­‰ Ƨïž@­‰ 7Kƨ@­‰ Ƨïž@­‰b¶®}@­‰ Ƨïž@­‰µsê³@­‰ Ƨïž@­‰>«6z@­‰ ƧïžÁ.„€@­‰ ƧïžÁ.„€@ª2(õÂ@ª2å`A‰@ª2(õÂ@ª29³Ð|†@ª2(õÂ@ª21ÑN;Ì@ª2(õÂ@ª2ðoiD@ª2(õÂÁ.„€@ª2(õÂÁ.„€@85S&Á¾@8BZîcŠ@4€ Ä›¥ã@4—§†Â&€@4'KƧïž@4Nÿ—$t@3Œ¿±[W?@3¹“ àÞÓ@3Œ¿±[W?Á.„NÜC,¥@3Œ¿±[W?Á.„NÜC,¥?}Ñ¿ž,?³è csÜ?ªËîi‹à[?³Â´K + ¸@8Iç@8Ù?3ßa=„?®úØÈ?ÀvY'äÆ?´¦MVÜú<@8S@8û—?°…T½cØ?œC ãSG?šˆøQû±?£’´w-@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøø@®3Ót¼j@®3Ú¬1@®3Ót¼j@®3Ô!-w@®3Ót¼j@®3ÖE¡ÊÁ@®3Ót¼j@®3Ölô!@®3Ót¼j@®3ÕfÏAò@®3Ót¼j@®3ÑÑN;Î@¨Ý 7Kƨ@¨Ý´9X@¨Ý 7Kƨ@¨Ý¸Qì@¨Ý 7Kƨ@¨ÝzáH@¨Ý 7Kƨ@¨Ý +Àƒo@¨Ý 7Kƨ@¨Ý ~($ @¨Ý 7Kƨ@¨Ý$ x@7Ì]cˆe”@7Ë"Ðå`B@3°Ä›¥ãT@3°6âë@3>V“u@3?b¶®}V@2Ç ù kº@2ƸºÇ@2Ç ù kº@2ËW>«6z@2Ç ù kº@2ÊŒL˜`?€‚ñêã ?×s·IÓ?“ï~í"?ŽAtùð¥t?“r {#¥&?’u¹k‚=?‘â%ì˜ ä?”&OÖýæï?•Ó%Øc~?’_3Í\Æ?–G÷z}YÎ?”'q²TrQ?¬ýG¬Eq¾?Ž.]L ¼?‡}¤íþ?‡•ó¨–ˆ?$Ìj½BÙ?‘  ¶‚3@@@@@*@*?ð?ð?ð?ð?ð?ð¿X}UƒØ?'Õà?(©…^ï~y?CJõ׿¨ó@®3ÖGòÚ£@¨Ý ÜÐI±?J¨°ü”?aó¹–ÔRý?™óá÷Ö€à?»:¾•,´@ŸjRF7q@ @¥ˆãS÷ÎÙ@¥ˆá$Ý/@¥ˆãS÷ÎÙ@¥ˆú^5?}@¥ˆãS÷ÎÙ@¥ˆüú¬Ùè@¥ˆãS÷ÎÙ@¥‰¢œwš@¥ˆãS÷ÎÙ@¥ˆý¥œà@¥ˆãS÷ÎÙ@¥ˆú…‡“Þ@©4`A‰7L@©4a‰7KÇ@©4`A‰7L@©4D÷eý‹@©4`A‰7L@©4R:)Çz@©4`A‰7L@©4KP°ò|@©4`A‰7L@©47ö+jè@©4`A‰7L@©4C¢œwš@7Hè§æ@7Òñ©ûè@2‡ÎÙ‡+@2têJŒL@1nùÛ"Ðæ@1^ÿ—$t@1‚@·€5@0ìí‘hr°@1‚@·€5@0íÙb¶¯@1‚@·€5@0í!ÿ.Hé?¢F^ì¼Sð?®££VºÓ‹?¥|ÀôîÆ?¤ÊÈ8Ó~ö?£ÿ6—@G^?œ^%VÂÜN?‡YÍ_?¨úd”‘$?AFnDk?™ðyµCÒW?¬¦l—ªjÎ?œøD4f™?¢Ì÷y\ÛÎ?œ‘z¥æ?ƒ]€µ,Vß?ˆÝíá‰?‰_uñšó?‹aÊ•TI@@@@@,@"?ð?ð?ð?ð?ð?ð?tFtο|Œµr?gÖÄâ,§?TÂÝ«'¢y@¥ˆôŽ‹‚9@©4N#'Â6?‡)"²KX?x–”¥ `|?éü“ -1?Ú½èé´ÛH@Ÿk3‚~å0@ +@®{ë…¸@®{hr°"@®{ë…¸@®{ñ©ûç@®{ë…¸@®{ë…¸@®{ë…¸@®{{²þÅ@®{ë…¸@®{U2a|@®{ë…¸@®{Î_@ª…•$Ý@ª…•Â\)@ª…•$Ý@ª…•%F +¦@ª…•$Ý@ª…—Á½¥@ª…•$Ý@ª…•Y³Ð~@ª…•$Ý@ª…”‡ü¹$@ª…•$Ý@ª…•$Ý@6:qÞi­C@6;µsê´@2&‡+ J@2&®}Vlô@0éÛ"Ðå`@0ê#9Àëî@0Ê0U2a|@0ÊôðØDÐ@0Ê0U2a|@0Ê6âëD@0Ê0U2a|@0Ê0U2a|?}Ñ¿ž,?4ë©$è‰?‘"žæÆó¡?Œ2ÌUÃT?‘oNÅ’+?‘É=¦þï?žˆ2}?’#maЀ?ŽËÜ¿€?íu…XÚ?‘އ Àí?‘!U?Ð{Ò?‚† SFñ?3I¶#i?ƒ~¨õ/¥O?ƒË´ÔC¶¼?†ùadô|?‡×7°º@@@@@,@,?ð?ð?ð?ð?ð?ð¿ çp¿"°˜à?,:ŒbE?ê‡c&Bâ@®{dˆ 0@ª…•hæÏ?L4A}áX“?ð?£›tÐû”??ß‘ÞÌ;@ŸgŽî»4_@ @¢ü$Ý/@¢ü|í‘h@¢ü$Ý/@¢ü¾ í*@¢ü$Ý/@¢ü…F +¦L@¢ü$Ý/@¢ü~ÒˆÎp@¢ü$Ý/@¢üu?|í‘@¢ü$Ý/@¢ü‡»/ìW@£˜Ù‡+@£˜ß;dZ@£˜Ù‡+@£—óZ…‡”@£˜Ù‡+@£—÷§†Â'@£˜Ù‡+@£—·$tS@£˜Ù‡+@£—óZ…‡”@£˜Ù‡+@£—ð¾ í)@7`ØDЩ@7eöý!ÿ.@3J^5?|í@36Â&€I@2ï²-@2œàuöý@1ÔmÅÖ8†@1±ÿ.Hè¨@1ÔmÅÖ8†@1²-V@1ÔmÅÖ8†@1®ùÛ"Ðæ?îŠõ ?–¼åCÝqÕ?’w·†m?¢e¼€¦B?ªª–- —¾?¯JOËëæ?‘â%ì˜ ä?“H¼k#è?‘Ûcu%ç+?¬]~ɺ¶@?²uD¹â?±íj\SD¼?…™ï ufÝ?1·†Æjñ?†Æ‹™ÿ?'ã{>ô‘? \'ÎjK?¤s™·ra@@@@@,@(?ð?ð?ð?ð?ð?ð¿&_U࿈~; ñÀ?] ÎHÅX?“\úÐ?@¢ü~§6ñ @£—ôâÁÚú?z4ß= ƒ?¡jJÍëÖ?Êý8øû*@hpº@Ÿf"øp@ @£ìwKƧð@£ìw +=p¤@£ìwKƧð@£ìwKƧñ@£ìwKƧð@£ìw§†Â(@£ìwKƧð@£ìx7´¢4@£ìwKƧð@£ìvÈ´9X@£ìwKƧð@£ìuöý!ÿ@§œ,‹C•@§œ,ÌÌÌÍ@§œ,‹C•@§œ-qu@§œ,‹C•@§œ+ÓÃa@§œ,‹C•@§œ.p:û€@§œ,‹C•@§œ-ÅÖ8†@§œ,‹C•@§œ,ÌÌÌÍ@2¯O „M@2¯O „M@0®5?|í‘@0®V“t@/ü¬1&ê@/ýIQ‚©“@0‚@·€4@0n—Oà@0‚@·€4@0䎊qÞ@0‚@·€4@0\(õÃ?É`¯&xŽ?êÚÏ$?‘–”«ëó?ŒvHn&³?‘\Žýµ€7?×°ë*–w?ÐbV‡,?’LÁŒÀ´a?Ê +ä\ä?Hª¦ºón?‘Uç·Býi?ŒÙ¶êm¥?€e@ˆ’„'?ŒÖ +ÄȲ?‚¯­Ù¤Á¶?„ mŠmsi?†Ë¢L1Ù?†Óß +tõ@@@@@,@(?ð?ð?ð?ð?ð?ð¿O|ÉµŠ¿FV-x:?!{Û:Òç? ñÔ=äø@£ìwƒ¼Ã@§œ-¾ŸoG?0z;mÒ?0Æ1"¬à?YÏ|íÄ?V$ƒÆ÷ +@Ÿs3Iì.@ @£Ì²-VÁ.„€@£Ì²-VÁ.„€@£Ì²-VÁ.„€@£Ì²-VÁ.„€@£Ì²-VÁ.„€@£Ì²-VÁ.„€@£­‘hr°Á.„€@£­‘hr°Á.„€@£­‘hr°Á.„€@£­‘hr°Á.„€@£­‘hr°Á.„€@£­‘hr°Á.„€@9G>«6zÁ.„>¤µÜÆ@5é‡+ Á.„M‰ûçm@4È“t¼jÁ.„QnÙ‡@3°–»˜ÇãÁ.„NÜC,¥@3°–»˜ÇãÁ.„NÜC,¥@3°–»˜ÇãÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø@¨b…¡ÊÀƒÁ.„€@¨b…¡ÊÀƒ@¨cÿU›=@¨b…¡ÊÀƒ@¨c«]Ìcò@¨b…¡ÊÀƒ@¨dQ ²•ê@¨b…¡ÊÀƒ@¨dŽ_oÒ@¨b…¡ÊÀƒ@¨ds×Ü@­àì‹C•Á.„€@­àì‹C•@­àå`A‰7@­àì‹C•@­àú¬1@­àì‹C•@­àè$ x@­àì‹C•@­à½/Ÿ¾@­àì‹C•@­à»Í5¨X@9–»˜ÈÁ.„>¤µÜÆ@5³S÷ÎÙ@5 W>«6z@4t“t¼j@3ò:)Çy§@3ó&Á½¥@3?\(õÂ@3ó&Á½¥@3Sä%®æ2@3ó&Á½¥@3;C•%@8J¨?°#M+«l?À-ýgêi?Õ5?íS?ÑÇQ£Ú¤µÜÆ@4 +^5?|íÁ.„M‰ûçm@3ä¼j~ùÛÁ.„QnÙ‡@3°–»˜ÇãÁ.„NÜC,¥@3°–»˜ÇãÁ.„NÜC,¥@3°–»˜ÇãÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø@¯‰ÌÌÌÌÍ@¯‰Ó3333@¯‰ÌÌÌÌÍ@¯‰Ì”îx®@¯‰ÌÌÌÌÍ@¯‰Ä°õÇÖ@¯‰ÌÌÌÌÍ@¯‰ÐÓãË@¯‰ÌÌÌÌÍ@¯‰Îàh4@¯‰ÌÌÌÌÍ@¯‰ÍH»ÎW@–.záH@–V‡+ @–.záH@– Ns)¶@–.záH@–'_Øó@–.záH@–1iÄé{@–.záH@–9…[Ü?@–.záH@–=‹Áþn@7ý:’£@7Ô%ضF@3€ Ä›¥ã@3~eƒN3@3RÐå`A‰@3QPƒf@2‡ ù kº@2†6˜ÑQT@2‡ ù kº@2†þÚ2èé@2‡ ù kº@2†]')®R?‘w×vHf?Ý'$ü?“’i?ÀhéRr¯?’MŒý¨L ?‘Í$Rü‰?¢+é’Y?’;ø±}º?’; 3=;?‘/ÐeGÚ­?’ÅvY ÿd?’@¶^à†Õ?­j•%ø?W?Ž;¾‡]+Ð?ŠQ‘Õ¶îN?‰Yå*^?‰TÄ=ÛsA?‹¥„ð#"ç@@$@&@,@9@9?ð?ð?ð?ð?ð?ð¿S@1DØ¿P +‹r +?uš¸($í?ccÔNkð@¯‰Ï°’»@–:ãÀh?5¦k·HŒÍ?z½É§Db1?iE zŠ'T?êÉÙäó@Ÿn’yEŸü@@£ÛËC•@£Û8Që…@£ÛËC•@£Ûâ&€H@£ÛËC•@£ÛØÇâ‚A@£ÛËC•@£ÛÏ'»/ì@£ÛËC•@£Ûí\ú¬Û@£ÛËC•@£ÛíquŽ@¡½p£× +@¡ϲ-@¡½p£× +@¡³Z…‡”@¡½p£× +@¡š¹õY´@¡½p£× +@¡¡-w1@¡½p£× +@¡µÜÆ?@¡½p£× +@¡³ŽóMj@7eöý!ÿ.@6êJŒL˜@2ã÷ÎÙ‡@2Òø7´¢4@2PA‰7KÇ@29™™™™š@1½cˆe”°@1!ÿ.Hé@1½cˆe”°@1ÌcñA @1½cˆe”°@1 ù k¹?às»g;?•ìspîî?Ÿýˆh¾b ? l§s¼C^?µ<³5D|ê?´ tÓ??°¼x‡Ç…Ä?“6SÇ{Ó? Âf¶hå÷?£>û}©Ñ?·˜€×+•Á?µU- nÜ¿?ë(ðùÌ(?¢*Mõis?$¿ÀºÍ?žH®hú'$?™ì ª# Ù?¨D d}ù@@@@@,@,?ð?ð?ð?ð?ð?ð?Ȓ圿| ÄÐ}€?xšßÅÎ?}¨h®Àa˜@£ÛÙ—5øÏ@¡©-Ī,?„ËêÆö‘.?—ôPt»?Ï£€M9ôŒ?ðŒ“γ]˜@Ÿoº4éI@@¢\o²-@¢\r‹Ë@¢\o²-@¢\\¬|•é@¢\o²-@¢\L— –@¢\o²-@¢\™' ïl@¢\o²-Á.„€@¢\o²-Á.„€@šŸ²-V@šŸ“t¼j@šŸ²-V@šŸIä²åo@šŸ²-V@šŸK5 =¦@šŸ²-V@šŸ¤¬qÈ«@šŸ²-VÁ.„€@šŸ²-VÁ.„€@6ºqÞi­C@6»bŞƊ@2õãS÷ÎÙ@3#‹–…Q«@1×ï²-@1é9Ú"Ç@1zÔ,<ží@1£BSÔbæ@1zÔ,<žíÁ.„NÜC,¥@1zÔ,<žíÁ.„NÜC,¥?‰døëŽìÃ?£êëëq$?”gý1ºÒÊ?ž;9”Î¥@8Iç@8Ù?}@T˜ÁÎ¥?¨è•ÁLë?“É.ª¼.?¬Ìurí –@8S@8û—?‘J÷±A0?𫤒þnÂ?˜60<)y ?‰9ߺ›C@8 Ø@8 Ø@@,@(@,?ð?ð?ð?ðøøøøøøøøøøøø@§H‰7KÇ@§H‚\(÷@§H‰7KÇ@§H€µûû@@§H‰7KÇ@§H„7'”@§H‰7KÇ@§H…AûÒè@§H‰7KÇ@§H‘å¿7ˆ@§H‰7KÇ@§H|ñ,@•éàA‰7L@•éß;dZ@•éàA‰7L@•éáte\@•éàA‰7L@•éÞ⊚²@•éàA‰7L@•éçíc@•éàA‰7L@•éågB+@•éàA‰7L@•ê 8Ò÷¯@2¿–»˜È@2¼í‘hr°@/û"Ðå`A@/ë R  @.cn—P@._Á³x@-…oi@-~ŸG1½<@-…oi@-™9»û@-…oi@-X‘±euc?É^ÈmÔ d?†BŠV?‘ǧE1Y?É Ï„?™—½¼ûAx?œ!d¯0Ã?Ðb^57KÏ?’¼¯Ä­vþ?‘¶4Á¸i:?؈‡¸ð?œa½CÁN?™·Bùå?€—q° ?’rÁº¶‰’?ƒ–ÚÈ×·>?„nÄÙom?‹ò^óô?˜š¨îã@@&@,@*@<@4?ð?ð?ð?ð?ð?ð?rÕ?€?{ûWL@?cÁC¯¢‡Ó?k¬)Ãß@§HŠ.aç@•éñ à\‚?rJTébt«?zºo®zr?ҪȚ(Yâ?â–××E@Ÿqaæ1µo@@¦¾vÈ´@¦ @¦¾vÈ´@¦ A‰7L@¦¾vÈ´@¦!-w1@¦¾vÈ´@¦ 4mÅÖ@¦¾vÈ´@¦«6z@¦¾vÈ´@¦5?|î@¤ ûdZ¬@¤ ûdZ¬@¤ ûdZ¬@¤ û"Ðå`@¤ ûdZ¬@¤ û‹¬q@¤ ûdZ¬@¤ ûdZ¬@¤ ûdZ¬@¤ ûÍ5¨W@¤ ûdZ¬@¤ û¥ãSø@.[J#9Àì@.[J#9Àì@+æ§ï²-@+æö”Fs@,E¡ÊÀƒ@,»˜Çâ‚@,žš@,ߤ?åÊ@,žš@,ùÛ"Ðæ@,žš@,U›=É?É^³Dw'?Òç{íj?‘½ümüñ?ŒR‹w#z?÷6r In?Å{¿Ž<¹?ÐbMçê_x?’ ,øÕC©?~ËQ§?ø,~[´?Ö§­îQD?Uÿyu”#?€bMÕky?Œµ3‰;šÏ?‚2Y0âµ?‚ð'ã:ÂÝ?†–f_ÔŠŠ?†Ë¢L1Ù@@@@@$@*?ð?ð?ð?ð?ð?ð¿LËç‚¶?*ºT`?#ýNnBÝ?àåÊ?ñ@¦$0(%@¤ û˜è·ª?31R +œK?&Š9ŽGT?a·ÿ q‹ ?EïœÎ¢ð@Ÿs¹¸"@@®ûÏß;dZ@®ûËå§oÌ@®ûÏß;dZ@®ûЮ‘@®ûÏß;dZ@®ûÎfýÿª@®ûÏß;dZ@®ûÐYœÚ@®ûÏß;dZ@®ûÒܰ—d@®ûÏß;dZ@®ûÊóD Í@˜Öî—Oß@˜Öò-V@˜Öî—Oß@˜×Òã˜7@˜Öî—Oß@˜Ö÷l7>@˜Öî—Oß@˜ÖíÿÂ&3@˜Öî—Oß@˜Öõc$h¸@˜Öî—Oß@˜×«¬ß@8?–»˜È@8DÇñ‰=Å@4‚° Ä›¦@4…¦Ø¤/@44“t¼j@48ÌÐÉ:4@2ýcˆe”°@2ÿÈtäè@2ýcˆe”°@2ÿÄÔ@2ýcˆe”°@3aUè4‘?Ž\Õl6Ò?•„°¬|Äþ?“G"eÕÅ?‘%ªÁÓ€1?”Íæ!?’¢_!6]?‘lUIòr?›:Éý¢™?ß! hå?óÔÅJ~?”;àQ¢C?’ÙÖæ×dp?©ÁZ+Þ}?·Ü"/k­?“4º¡LJ?‡ª 2c%C?Œ2·Óå?Œ  óõƒ/@@(@@&@9@6?ð?ð?ð?ð?ð?ð?8ÈÚs ?V-ž\}?Q0+ +iQÝ?RJo2î@®ûÎ!¸ÎÛ@˜ÖõŽl?p†8ÈÅqÜ?pˆV¼»?ÛÇÈQÕÐÿ?Ú]& :ìØ@Ÿky‰*‹@@­ß€ƒn˜Á.„€@­ß€ƒn˜@­ß×{ãòÓ@­ß€ƒn˜@­ß«½ÔÁ@@­ß€ƒn˜@­ßqíà(Ï@­ß€ƒn˜@­ßwKtàÂ@­ß€ƒn˜@­ßoqrÒÁ@šS$Ý/Á.„€@šS$Ý/@šSfÅÃíØ@šS$Ý/@šS+•èÖ@šS$Ý/@šSÛñê1@šS$Ý/@šS&•¡ã@šS$Ý/@šS®¨º@9T xFÜÁ.„>¤µÜÆ@5Lí‘hr°@5klòX3@4F“t¼@4C{WgÃ…@3¿ò䎊r@3·¼…«ê@3¿ò䎊r@3¼Ý7w„Œ@3¿ò䎊r@3¼ÅЃìC@8J¨?¹IÜŸ¸ä? ÈX­€ø?‹úÊ?—D­>è?’êÕõÛ-W@8J¨?µÔ)Û£±Õ?•)¹ÅŠ®Ê?‘X_ªuSZ?ŸÀåÝ5C„?“úR/ô‚Ç@8p÷?Ÿeta˜î?”Ç´°‰Þi?Š¢µ‰PP?˜% ?ð +ºƒc@(@"@@3@,?ð?ð?ð?ð?ðøøøøøøøøøøøø@©ó¶E¡Ë@©Å‚’<4@©ó¶E¡Ë@©jÅÜ1@©ó¶E¡Ë@©£÷ˆË@©ó¶E¡Ë@©ƒÓ/Ré@©ó¶E¡Ë@©£Ù"Ö[@©ó¶E¡Ë@©¦HþÒ@”ewÎÙ‡@”edÛ&éX@”ewÎÙ‡@”f ½q@”ewÎÙ‡@”ef¡ xK@”ewÎÙ‡@”fLœÄ8Ë@”ewÎÙ‡@”ffQ3ô@”ewÎÙ‡@”f̽W@8òÃÉîËû@8æf7n$S@3ÇÎÙ‡+@3w2‹žÙ²@3 ²-V@2·P´^‘²@2‡ ù kº@2/©Ý3Æ@2‡ ù kº@2 Y”®@2‡ ù kº@2*iŽý¥f?§?†'„Ü¢?°Æ*º¢½¾?´5¼$Ź·?½BIÀ%?»BÄg@p?¸ìà‘Ô?·k—<8ð?»Šíž²?²6Ü„aÁé?¾‹¥S¬?ºà9 ‘<_?¿ž•¬Q ?´Ñi©½W´?¦ùÆdÝü?¤Ÿ±…Š @?©—¨[˜-H?ª¤SnÞ„?°'ÿÓYÁ@@(@*@(@9@8?ð?ð?ð?ð?ð?ð¿{¾õ€?¡î§ÏŒH?t¥–oÞ]Ó?p¿““®óf@©¬É’ñú@”fß - ?—Ž:öåÆ? /DPv1?âoCÛWœ??ž­ÇÃ@Ÿiëu¸ †@@£Êk Iº@£Êf§ï±@£Êk IºÁ.„€@£Êk IºÁ.„€@£Êk IºÁ.„€@£Êk IºÁ.„€@£Êk IºÁ.„€@¥ 3¶E¡Ë@¥ &éxÔþ@¥ 3¶E¡ËÁ.„€@¥ 3¶E¡ËÁ.„€@¥ 3¶E¡ËÁ.„€@¥ 3¶E¡ËÁ.„€@¥ 3¶E¡ËÁ.„€@8L]cˆe”@8OìVÕÏ«@4é‡+ Á.„M‰ûçm@4ÐA‰7KÇÁ.„QnÙ‡@4Eœàu÷Á.„NÜC,¥@4Eœàu÷Á.„NÜC,¥@4Eœàu÷Á.„NÜC,¥?гá‡}@8#˜@8¾:@8 >+@8Iç@8Ù?¤ÊŽaÈ]Ó@8Î÷@8i§@8Å@8S@8û—?’C߯K@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@¢RU$Ý@¢RJÔ­JÕ@¢RU$Ý@¢Rb¶®}V@¢RU$Ý@¢R_Š Þ@¢RU$Ý@¢Raä÷eþ@¢RU$Ý@¢R_äV @¢RU$Ý@¢Ra±«Ç@œÇÐå`A‰@œÇÓÆ6“‘@œÇÐå`A‰@œÇÎ_oÒ@œÇÐå`A‰@œÇ®záG@œÇÐå`A‰@œÇº)Çy§@œÇÐå`A‰@œÇÍ ãuí@œÇÐå`A‰@œÇÉiÚÄE@7h†YJôñ@7ƒÄ¡Ö:@3° Ä›¦@3 =Ùb¶@2Wï²-@2]ÌcñA @1kxFÜ^@1kÚQÎ@1kxFÜ^@1l0³ò @1kxFÜ^@1kül€Â?}x—™?˜I­}ý½Ä?¤œá˜¡ðè?–O!mS +?‘÷·ÃŠ—?‘—6Ç9ìº?ž91ç |?–µ°jÆÄ?“²pÅâ-Ý?|ënÓ¿Ü?–•RAº*?‰ÄêÈÆŽù@@@@@*@.?ð?ð?ð?ð?ð?ð?v-ÊÅ¿TÄóvü?T©Ò“ÉI?O­\-‹ï@¢RVݯõ@œÇ͵i=Ø?t†øó«Sä?pCjÈ9“@?óˆ2ßö"?è ŒðÈÎí@ŸfL¯¥ @@¯Ñ¯Ÿ¾w@¯Ñ¶È´9X@¯Ñ¯Ÿ¾w@¯Ñ‚ø7´¢@¯Ñ¯Ÿ¾w@¯ÑˆðŽ@¯Ñ¯Ÿ¾w@¯ÑP©*0@¯Ñ¯Ÿ¾w@¯Ñ [À@¯Ñ¯Ÿ¾w@¯ÑrþÅm^@¦ÆY‡+@¦Æ^vÈ´9@¦ÆY‡+@¦ÆNŠqÞj@¦ÆY‡+@¦ÆVE¡ÊÁ@¦ÆY‡+@¦ÆR:)Çz@¦ÆY‡+@¦ÆJOv@¦ÆY‡+@¦ÆU¨Xy>@804mÅÖ8@8/oÒòå@4c÷ÎÙ‡@4P£× +=p@3;Ƨï²@3.Åm\ú­@3!:’£S@3 k¹Œ~@3!:’£S@3ð¹@3!:’£S@3 ùrGE?°ý¢¾Ýb?¦Ç­oK‘?§yĪoè]?¹,:‚ê?µ T.Ûo?µš‡" » ?­g;+³ût?U +£?00?“$zü¾6? vùv“?¥mÉ£&Z?«M~W`?–-¤]î§É?–P¢k"? øk@×õ{?‡9 ƒ–’”?š3 ˜ÔDš?IQ‚©“ @@@@@,@*?ð?ð?ð?ð?ð?𿌺Dc¿g2€?£X_ËC?bôU OP +@¯Ñ…"p‘@¦ÆRÖÜÓì?¡ÁO3 ˜­?{HÉÂqµ8?÷LŽ2N„?ÈÓ!À°@Ÿkìhw8ñ@@¥Èƒ•%@¥È‰º^5?@¥Èƒ•%@¥ÈaohÜ@¥Èƒ•%@¥ÈW +=p¤@¥Èƒ•%@¥ÇçE8ï5@¥Èƒ•%@¥ÈŠÚ¹õ@¥Èƒ•%@¥È³Ð|…@¢rƒn˜@¢rÄ›¥ã@¢rƒn˜@¢qÔÖ¡aå@¢rƒn˜@¢r +ôðØE@¢rƒn˜@¢q¾ÒˆÎp@¢rƒn˜@¢qéÔ•+@¢rƒn˜@¢qÙrGE9@7wâ‚@·€@7r Iº^6@3«¥ãS÷Ï@3˜­«ŸU›@2È“t¼j@2»quŽ!–@2°–»˜Çã@2„záG®@2°–»˜Çã@2‘hr°!@2°–»˜Çã@2ß;dZ?¨Ö_pP1?³T~=¥ªI?ª\=§uÌ?ÐÝð\ùN?´(Ôx±/È?ÉZjðìšÇ?’Óusÿ\Ã?º’ÔQ;®v?¬6¦eI…?Íëæ?¸MWée]{?²_¨³‡#„@Ÿk±&Ë™}@@ªÿŠÀƒo@ªÿ†ffff@ªÿŠÀƒo@ªÿ†$Ý/@ªÿŠÀƒo@ªÿ…‡“ݘ@ªÿŠÀƒo@ªÿ‰7KƧ@ªÿŠÀƒo@ªÿ‡“Ý—ö@ªÿŠÀƒo@ªÿ…¼£n@¢™\(õÂ@¢™[çl‹E@¢™\(õÂ@¢™[J#9Á@¢™\(õÂ@¢™Y=Ùb@¢™\(õÂ@¢™Wö+jè@¢™\(õÂ@¢™YJôðÙ@¢™\(õÂ@¢™W$tS@7[¹Œ~($@7\¬1&ê@3B° Ä›¦@3F +¦L/„@2ˆ“t¼j@2‹Í5¨Xy@1𖻘Çã@1òÐå`AŠ@1𖻘Çã@1òˆÎp:ü@1𖻘Çã@1òÊW§†Â?Ž=fA:?•ìspîî?’Q/Èö +®?Wø0 ¥?‘¯GàBm?”1Ÿøš?|öOÿÝ?’[ KÄ0R?’±ä?‘.“¥?‘ ÛÌÏõA?“‘k–šj?ÞïÏ·çÔ?ŽÎ"”`ù…?Ž“‹}Tz?ˆW„hðQ?ˆ”Tj«›ª?ˆ0&YÊEd@@@@@"@*?ð?ð?ð?ð?ð?ð?õ¥¿NÑ*¬?Aàž•ð?/¡Ç|Ÿu@ªÿ‡oÍN@¢™YƒfÊ?^ZdŽè+º?QP˜7¦,?»Ó–“ëö?§10P«"¿@ŸiùUq@ @¨ç@ƒn˜@¨ç@ƒn˜@¨ç@ƒn˜@¨çAÊÀƒ@¨ç@ƒn˜@¨çAä÷eþ@¨ç@ƒn˜@¨çA£n.³@¨ç@ƒn˜@¨ç?b¶®}@¨ç@ƒn˜@¨ç?b¶®~@©!hõÂ\@©!i7Kƨ@©!hõÂ\@©!hŒç°@©!hõÂ\@©!iã½@©!hõÂ\@©!h´9X@©!hõÂ\@©!i^ž @©!hõÂ\@©!i 'RU@2?–»˜È@2?Š Þ@/¸“t¼j@/¸y=Ùb@.XÔýó¶F@.Y k¹Œ~@-fL/ƒ{K@-fs×Ûõ@-fL/ƒ{K@-fs×Ûõ@-fL/ƒ{K@-fšÔ,<Ÿ?É^žQ5P‚?é¥3i£ó?‘D&»ä?‹¹GüÞõ?÷6r In?Êëüâi{?ÐbV‡,?’7Îf¬ps?œõLÁE?>\‰å‘?Ø¥²À<(?b¶­-Óx?€e@ˆ’„'?Œ».êxóÚ?‚2Y0âµ?‚þ——³§ø?†–f_ÔŠŠ?†£îž«î@@@@@*@*?ð?ð?ð?ð?ð?ð¿PÛ@FB?: tD?5Ó¥»à€?µ;d–sÄ@¨ç@L#… @©!i.õÂg?Düiôm?šÝ‰MD?…‡Ùgb7N?5ËÜ)Š@ŸsDŒ @!@£Ÿ¾vÈ´@£ž5?|î@£Ÿ¾vÈ´@£¦Â&€@£Ÿ¾vÈ´@£¥Éä@£Ÿ¾vÈ´@£¨ðŽ@£Ÿ¾vÈ´@£¤¨ÁTÊ@£Ÿ¾vÈ´@£¢ÃÉîÌ@¨_|í‘h@¨_|í‘h@¨_|í‘h@¨_U›=@¨_|í‘h@¨_€hÛ‹­@¨_|í‘h@¨_ƒˆe”®@¨_|í‘h@¨_TÉ…ð@¨_|í‘h@¨_‚3œ¿@5Î쿱[X@5ÎÒˆÎp;@1Å?|í‘h@1Âò䎊@0†“t¼@0ƒÉîËû@/­úCþ\’@/§ï²-@/­úCþ\’@/§»/ìVÖ@/­úCþ\’@/©^žš?‚á²Olºü?’ñ¼õì?’à©GMõ?[d?”§RXFÖf?“ d?}Ñ¿ž,?•íÌÖf?’F^ì¼Sï?‘ô 5Y?‘ÇmEB«?ÝÒ¥X[?ƒ]€µ,VÞ?=d­úå?‚¸“Îè ø?ƒ!Ë *(?†ùadô|?‡´*žZ}Õ@@@@@,@,?ð?ð?ð?ð?ð?ð?X‚5™(?DZY `?OÚ¥ttøî?3¨ÕPö|@£¢\±ˆ@¨_½¤?oº´›\9?Tl‹á̳?â‹ÕÞµ?³S<­œ˜B@Ÿgm{&ë3@"@©XdZ¬@©Xe¸Qì@©XdZ¬@©Xe”¯O@©XdZ¬@©X_åÉ@©XdZ¬@©XeÉä@©XdZ¬@©XbëC-@©XdZ¬@©Xem\ú­@§å§ï²-@§å§®zá@§å§ï²-@§å¥+ÓÃ`@§å§ï²-@§å¥ãS÷Ï@§å§ï²-@§å«íúCþ@§å§ï²-@§å¡|ÚQ@§å§ï²-@§å¡ohÜ@6ò䎊@6ÊW§†Â@3° Ä›¦@3ÉùrGE@3.ùÛ"Ðæ@32‚@·€4@2‘Þi­BÄ@2š¬1'@2‘Þi­BÄ@2HðŽ@2‘Þi­BÄ@2‘[W>«6?žˆ2}?”Øÿ4ÙKl?‘jh¨qã9?ŒGZ0eê;?”] +° ?’Æ÷Xê†?|öOÿÝ?—áZk·×?„¦Ô•]I?Ä…à6 +æ?–žóB» ”?“ù|ö[ÿz?‚|׿pY?Ž»žä4?‰¢Ò+ÜÝP?R *Ñn?V^²³öˆ‚?HmE£fÚâ@©â{¯?‡î@œ¹p¶Î?vdŒPUÀ?hæðr9ãl?ø¹^r׺?ß­ìRT\œ@Ÿg3JYC@$@«6H´9X@«6Gï²,@«6H´9X@«6FL/ƒz@«6H´9X@«6JqÞi®@«6H´9X@«6G¯·é@«6H´9X@«6)ùrG@«6H´9X@«64¼@®)dÝ/ @®)bÐå`B@®)dÝ/ @®) á°‰ @®)dÝ/ @®)†YJô@®)dÝ/ @®(ñø .@®)dÝ/ @®'ðU2a|@®)dÝ/ @®(F1ø ‘@7¯O „M@7ZîcŠ@3Ù‡+@2ò•éá°Š@2H“t¼j@2¾ß¤?æ@23&Á½¥@1þËûµt@23&Á½¥@1Ìàuöý"@23&Á½¥@1Ö$Ý/ ?‡YÍ_?’ñ¼õì?¦†np½Ý?”½±·CåV?¡ ª¾Tº¥?  =%º?ˆÿÀ)T¿Æ?”ºu(†¼¦?¯ÁÝï7%O?¸àú¬Öp?ÜË%8‘®?×Ö ´ S?‚2Y0â³?‘ÓP!¹p?U”šYC?Ž0 ½~ÿ? ü‡—Üä?ÀçN¬óZ@@@@@(@&?ð?ð?ð?ð?ð?ð¿pËî¬A¿©è¦?cˆÏÆ'vp?„'WÒPÑD@«6F0ƒÆ6@®)B§”¶µ?§WâËdé?Œ\¯ŠSl ?ù¿ç qL?èXÔ­4M@Ÿ[ÒN(æ@%@¨.¾vÈ´9@¨.½ó¶E¢@¨.¾vÈ´9@¨.¾ß¤?æ@¨.¾vÈ´9@¨.Àƒn™@¨.¾vÈ´9@¨.¿!-w2@¨.¾vÈ´9@¨.¾ í(@¨.¾vÈ´9@¨.½æšÔ,@©ŒÖ“u@©ŒÚŸ¾vÊ@©ŒÖ“u@©ŒÖ+jçÖ@©ŒÖ“u@©ŒÖ“v@©ŒÖ“u@©ŒÖ¡aäø@©ŒÖ“u@©ŒÖz—@©ŒÖ“u@©ŒÖ“u@5=:’£@5>Ëûµt@1GÎÙ‡+@1GOß;d@0Ðå`A‰@0ˆÎp:ü@/Bu%F +§@/Aÿ.Hè¨@/Bu%F +§@/B\(õÃ@/Bu%F +§@/Be+ÓÅ?€‚ñêã ?4ë©$è‰?‘"žæÆó¡?5~pY5?‘,IÝ Áé?ÔCXsñ?…ÅBðrç?’LÁŒÀ´a?„¦Ô•]I?Y‡…—Ø?‘ ÛÌÏõA?]#ÍìO¤?„³3Z\ð„?ŒË›Í‡Çq?‚¸“Îè ø?‚þ——³§ø?†Ë¢L1Ù?‡×7°º@@@@@*@*?ð?ð?ð?ð?ð?ð? ¸„'€¿PgWæ¼?$œÑ§ÿ§·?* +F³œï@¨.¾6¡4¶@©Œ×ô!hL?EG6:€Šn?J ’c ÂÌ?”qÓN ¥c?™õ}Öô)@ŸiU°8$@&@©îxÔýó¶@©îˆ1&éy@©îxÔýó¶@©î‰ 'Q@©îxÔýó¶@©î¿!-w3@©îxÔýó¶@©îhÛŒ@©îxÔýó¶Á.„€@©îxÔýó¶@©î¹#¢œx@ xâMÒñª@ xæffff@ xâMÒñª@ x·ö+jè@ xâMÒñª@ x‰“ àß@ xâMÒñª@ xŠ=p£×@ xâMÒñªÁ.„€@ xâMÒñª@ xĨÁTÊ@8eöý!ÿ.@8ZçÕfÏB@4…?|í‘h@4jÀƒn—@4~V“u@48_ö”F@3Þ«6z‘@3žóMj@3Þ«6z‘Á.„NÜC,¥@3Þ«6z‘@3žÒˆÎp;?ð°–Ž]?”„ö}>žå?´9äÐ9?²YÌ3ÉÛ„@8Iç?Àíif}?ð°–Ž]? €l ×Û?ÀÑdjÜ!"`?‹°»vÆr;?û¿Xx?ÿ?¸9cXæ?|Ñb×¶@?’]æ&¬º?•Œä™£K?9ˆ[ƒÄO?ý¹€äÏ?T›ô,í‡?‚„UAÕ|?ŒºÿB’?‚Ò•)úL?ƒh€| 8?‡!éðêÎ?†ÐÐUf@@*@*@(@1@0?ð?ð?ð?ð?ð?ð¾üÔöO¿4¾p!?6is;>¶I?"­ ›W@­†ñMËä÷@™÷¦ªþ´?VM=Zó?C ¼€/?»@Q u?’Ú}ê½´j@Ÿfófò7b@(@¢§|í‘hs@¢§ˆ´9X@¢§|í‘hs@¢§|j~ùÛ@¢§|í‘hs@¢§z^5?}@¢§|í‘hs@¢§x}¿H@¢§|í‘hs@¢§|64@¢§|í‘hs@¢§wÁ½¥@¤¨ñ©ûçm@¤¨äÝ/ @¤¨ñ©ûçm@¤¨ò䎊q@¤¨ñ©ûçm@¤¨ô¼@¤¨ñ©ûçm@¤¨óê³g¡@¤¨ñ©ûçm@¤¨ô¼@¤¨ñ©ûçm@¤¨õsê³h@8Y*0U2b@8?b¶®}V@3°Ä›¥ãT@3´¨ÁTɆ@3“t¼@3 Í5¨Xy@2YŒ~($ @2\í‘hr°@2YŒ~($ @2Ye+ÓÃa@2YŒ~($ @2XÇâ‚@¸?‘â%ì˜ ä?š–ÿô3?“‡ƒ×¤?Wø0 ¥?“Ýâqß?–ËÒÙI°?Â÷Üê~\?•@¼Cк?“v@á¿bî?‘3)10ÑF?’pP‡È»?–¼åCÝqÕ?¸ã>Ì'¯Ž?’®ã‘\’?—eI¥Ð6?ƒÛ®«etZ?‰/ã̽`ª?‹DVóö@@@@@&@,?ð?ð?ð?ð?ð?ð¿kqŒ1^?L'Ô(?Yšúˆ3¨?Gú[ÕŽ{.@¢§z/tš@¤¨ô&Ës­?xS)âf·g?Vz?³®f?ç-j£{Š? to¦ÿŽf@Ÿqb Ÿ2j@)@¡‚r-V@¡‚wÎÙ‡@¡‚r-VÁ.„€@¡‚r-VÁ.„€@¡‚r-VÁ.„€@¡‚r-VÁ.„€@¡‚r-VÁ.„€@ž6B\(ö@ž62-V@ž6B\(öÁ.„€@ž6B\(öÁ.„€@ž6B\(öÁ.„€@ž6B\(öÁ.„€@ž6B\(öÁ.„€@6[¹Œ~($@6aaä÷eþ@3©‡+ Á.„M‰ûçm@3¬j~ùÛ#Á.„QnÙ‡@3¡:’£SÁ.„NÜC,¥@3¡:’£SÁ.„NÜC,¥@3¡:’£SÁ.„NÜC,¥?…ÅBðrç@8#˜@8¾:@8 >+@8Iç@8Ù?}Ñ¿ž,@8Î÷@8i§@8Å@8S@8û—? ;ŠaÙ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø*@¯ ûdZ¬@¯ û¥ãSø@¯ ûdZ¬@¯ ò×sý@¯ ûdZ¬@¯ ÜPHð@¯ ûdZ¬@¯ ŸU›=@¯ ûdZ¬@¯[À6@¯ ûdZ¬@¯ ûçl‹C@¬M#× +=q@¬M.V”@¬M#× +=q@¬M,篸@¬M#× +=q@¬M*#9Àí@¬M#× +=q@¬M!£n.³@¬M#× +=q@¬M%ðoiD@¬M#× +=q@¬M8FÜ]@7VšÔ,<Ÿ@7VšÔ,< @4{ Iº^@4zîcŠ @46§ï²-@4%$Ý/@3¦YJôðØ@3N¤¨ÁU@3¦YJôðØ@3v_Ø­¬@3¦YJôðØ@3’n—Oß?–ªÎ­¡?¡lôÅø²?±Õdð?ž‹¬':î?¦ö/cÕ¥?£ÄžS^· ?£G± *Ç‚?šr’nc?¬6¦eI…?‘ǧ?D6?£w¤µÜÆ@2Iº^5?@2}¿HË@1Ct¼j~ú@1DÝ/Ÿ¾@05µsê³h@06L/ƒ{J@05µsê³h@06?¼@05µsê³h@06z–¼@8J¨?ÿ﯒?‘jh¨qã9?Œ'õ‚$5ñ?‘'¬Å™» ?ø·-/ge@8J¨?’ñ©ûçlŒ?ð{¥âdú?°‹Œ÷€?‘=d¦^™?äqÅYÈ@8p÷?ŒïQ¼º“ã?ƒÆ×q„nð?ƒžÂâk,?‡ã ËÄž?‡&üòI@@@@*@*?ð?ð?ð?ð?ðøøøøøøøøøøøø,@«8|í‘h@«8~¸Që…@«8|í‘h@«8~vÈ´9@«8|í‘h@«8€'RTa@«8|í‘h@«8€hÛ‹«@«8|í‘h@«8~vÈ´9@«8|í‘h@«8~ùÛ"Ò@¤Îå`A‰@¤Î Ä›¦@¤Îå`A‰@¤În—P@¤Îå`A‰@¤ÎˆÎp;@¤Îå`A‰@¤ÎÝ—ö+@¤Îå`A‰@¤ÎuŽ!–@¤Îå`A‰@¤Îë…¹@6[¹Œ~($@6ZîcŠ@1Ê^5?|í@1É­BÃÉî@1iÛ"Ðå`@1hy=Ùc@0Åœàu÷@0Ãa@N¥@0Åœàu÷@0ÃS&Â@0Åœàu÷@0ÃZ…‡“Þ?|öOÿÝ?êÚÏ$?‘K]Ã4?Uóú*˜?‘ñ•/m£{?‘ ê$4Ÿ?„F/·ÿP5?’ ,øÕC©?‘}7ˆ.Ñ?;ß $Þû?‘žˆ2}?äqÅYÈ?…íŽ(þÆ?Å9–o?„ËD(ºp?ƒì%­¹Ï‘?‡×7°º?†Óß +tõ@@@@@,@(?ð?ð?ð?ð?ð?ð?9R?<­Œ*p?-‰Ú·r"?8¬­ \#@«8ôNŠ@¤Î Zö?N>·ÖŠ?XÐ" “ +?¥½Û(³"a?¸I¼ì…3@Ÿh1B3• @-@ kÑë…¸@ kÑë…¸@ kÑë…¸@ lªdù@ kÑë…¸@ l '­5@ kÑë…¸@ kë"Õ)a@ kÑë…¸@ k×Yux@ kÑë…¸@ kÜX%‰@¡ò!ÊÀƒ@¡ò$›¥ãT@¡ò!ÊÀƒ@¡ò.ºs8@¡ò!ÊÀƒ@¡ò6úÀ@¡ò!ÊÀƒ@¡òS’-ú@¡ò!ÊÀƒ@¡òCtù‹@¡ò!ÊÀƒ@¡ò>ŸâÖ@6›¹Œ~($@6™ ’‚È0@3’ Iº^5@3h:ÒÉ +@2ÝV”@2«¡í0Lì@2‘Þi­BÄ@2v•Îó£@2‘Þi­BÄ@2€#BÓ'@2‘Þi­BÄ@2y'š„?}@T˜ÁÎ¥?~âqò4Ï?£Öú¥ø[Â?œÍÀ(¶?˜>=d4PÃ?˜ X<-/?|Ñb×¶@?”Á­iE=µ?žÚ™¡íE?—nõ[>L?—›«Ð¨†?˜Q@´$?S¬\H?–ÑÂy¡Ÿ?ŽïH?å´?›ftÛð?—)ôEbw?’à +Ñ:…8@@$@(@(@5@2?ð?ð?ð?ð?ð?ð?e&'º§¿`ã²;Ø?_´r>¼?KÍCZ?@ k×ú@¡ò –,Q?}êÅŽž‹?iB‘§€På?þ&¼?F[,?Öÿ„‡F4ª@Ÿd&ÆqfJ@.@ªV“u@ªVE¡ÊÂ@ªV“u@ªX -à@ªV“u@ªWXâe@ªV“u@ªV“u@ªV“u@ªT9Xa@ªV“u@ªT¼j~ú@¹vÈ´9X@¹vÈ´9X@¹vÈ´9X@¹uÂ\)@¹vÈ´9X@¹y k¹Œ@¹vÈ´9X@¹z¬Ùè>@¹vÈ´9X@¹uŽ!–S@¹vÈ´9X@¹yXbN@4Ù*0U2b@4Ú–»™@2xr° Äœ@2wï²-@1ö§ï²-@1öð¸»@1”mÅÖ8†@1”`ªdÂø@1”mÅÖ8†@1’©“ àß@1”mÅÖ8†@1“FÜ]c‰?|öOÿÝ?’g½þË£?‘ùé éµ??Œ ßõIyû?‘úy«ôÊ%?‘îƒÔ1a?}Ñ¿ž,?“¡ƒ[¤45?‘ª¦ZqÍ?wàËxR?”*v7¹¿?’Q½£a C?‚uÞ@>N ?²É5†±ó?‰ÕäÖ‚‚?„ìsMQ(Œ?ˆCns¥ ?‹ ˜1 D@@@@@@(@(?ð?ð?ð?ð?ð?ð¿6(=Å?+Ì|µ?!Gðs¼D?0¸>ŠIA @ªU›,~’@¹wØr?@éÜŒ¹vŒ?Pµ.`ÛÉ?¿j $??© /ä^È@ŸfqGÎ@/@¬„n—P@¬„ÕæÈe@¬„n—P@¬„‡Q¨S@¬„n—P@¬„tT]‚@¬„n—P@¬„ŠÎœ(@¬„n—P@¬„£GTÑ@¬„n—P@¬„%5ï@”5`A‰7L@”5i3€@”5`A‰7L@”5^î¶s‰@”5`A‰7L@”5f6¡@”5`A‰7L@”5g9¡V@”5`A‰7L@”5bÒjõÒ@”5`A‰7L@”5iµDõ@7Î쿱[X@7Î(¶&ê5@3Å?|í‘h@3Ç€fT?@3`A‰7L@3^À c@2”mÅÖ8†@2–¼@¸Ô@2”mÅÖ8†@2•éÏ4P@2”mÅÖ8†@2”Û{Ò|–?“mÚÑ‘>Â?L ¤Î‹?’K§øÖ?’AÙ¯,Æ?“WPJJ˜"?‘â·×æÖ?Šš¶ÈŰ?’)XZ…§&?qÍ~[À?“óLJ~:Ú?”ŠÝb°Í?’¢É×ÿ?¥¯–˜*à?Éà–(¤µÜÆ@3¦‡+ JÁ.„M‰ûçm@3å`A‰7Á.„QnÙ‡@28DЩ*Á.„NÜC,¥@28DЩ*Á.„NÜC,¥@28DЩ*Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø1@¢Ñ`A‰7LÁ.„€@¢Ñ`A‰7LÁ.„€@¢Ñ`A‰7LÁ.„€@¢Ñ`A‰7LÁ.„€@¢Ñ`A‰7LÁ.„€@¢Ñ`A‰7LÁ.„€@¢£$ÝÁ.„€@¢£$ÝÁ.„€@¢£$ÝÁ.„€@¢£$ÝÁ.„€@¢£$ÝÁ.„€@¢£$ÝÁ.„€@9N쿱[WÁ.„>¤µÜÆ@4žÙ‡+Á.„M‰ûçm@4ï²-Á.„QnÙ‡@3³&Á½¥Á.„NÜC,¥@3³&Á½¥Á.„NÜC,¥@3³&Á½¥Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø2@¯Ç¯²-@¯Ç¯²-@¯Ç¯²-@¯Ç°bMÒó@¯Ç¯²-@¯Ç¯²-@¯Ç¯²-@¯Ç¯iDg8@¯Ç¯²-@¯Ç®_oÒ@¯Ç¯²-@¯Ç­Òñ©ü@¡Ù« Iº@¡Ù« Iº@¡Ù« Iº@¡ÙªÚ¹õZ@¡Ù« Iº@¡ÙªçÕfÏ@¡Ù« Iº@¡Ù«…¸R@¡Ù« Iº@¡Ù«C•@¡Ù« Iº@¡Ù«ŸU›=@0-¥œàv@0-¥œàv@*8“t¼j@*8FÜ]c@)¥¡ÊÀƒ@)¤¨ÁTɆ@(̲•éá±@(Ë’:)Çz@(̲•éá±@(ËxFÜ]@(̲•éá±@(ˬq ²•?É^žQ5P‚?Ï[äeæ?òǹíT­?À­Õß}º?ÐbMçê_x?’r/BÖ?ˆ9²0?9ÍÇ~FÀ?ß’ºèh!?Uÿyu”#?€bMÕky?Œ°¶.Ä+Æ?‚2Y0âµ?‚ð'ã:ÂÝ?†špk Y?†špk Y@@@@@,@,?ð?ð?ð?ð?ð?ð¿Gsw6¸?ûRð?%LÚ4Hľ? ­#ðØ¿@¯Ç®†¸ÒN@¡Ù«x5D?4{QÕ î?*¡¿ ‚³¡?dЍ%̤C?O-ìb4Ç@ŸstA@3@¥?u?|í‘@¥?xbMÓ@¥?u?|í‘@¥?uöý!þ@¥?u?|í‘@¥?v4ê@¥?u?|í‘@¥?t`ªdÄ@¥?u?|í‘@¥?uϪ͞@¥?u?|í‘@¥?vz—@­Bl1&é@­BixÔýõ@­Bl1&é@­BkÓÃa@­Bl1&é@­Bl/ƒ{K@­Bl1&é@­BjôðØD@­Bl1&é@­Bn_oÒ@­Bl1&é@­BdM:’@6·â‚@·€@6¶_Ø­« @25ãS÷ÎÙ@25éá°‰ @1‹"Ðå`B@1‹quŽ!–@18DЩ*@19™™™™š@18DЩ*@19Q‚©“ @18DЩ*@14Âø7´¢?1·†Æjñ?jú‚<·™?‘@˜¯³¸?ŽVåç0ÇO?’š'†­`í?’Ýå"çX?‘â%ì˜ ä?’馿œãj?‘K54;­?èÊ\då?’…4Ü.?‘ÔÄ÷Õ?•ë þÅ? $gú‡v?ƒ{¬ÉW?ƒžÂâk,?‡2[síç?гá‡}@@@@@(@*?ð?ð?ð?ð?ð?ð¿Bn#ô¿>E¹àP?7'íß ?UL´+ˆ™¥@¥?vXî=@­BiÊ4µ`?Yµ•L®Å?s*Õ‘ÌÀ3?¸™¢Y ½?â£#¹ã—i@ŸjÙ0¿jW@4@§féxÔþ@§h´9X@§féxÔþ@§tX¼·%@§féxÔþ@§XgÖÝÚ@§féxÔþ@§†ËKö@§féxÔþ@§ W¢.@§féxÔþ@§œð{:”@–Iž¸Që…@–IüiV@–Iž¸Që…@–Io>J¾.@–Iž¸Që…@–IaJ,^%@–Iž¸Që…@–I•æÔ!@–Iž¸Që…@–I BpY@–Iž¸Që…@–IŒ ´î@5òÃÉîËû@5ê@·€4n@3›¥ãSø@2öÆ;ªÎ@2ä¼j~ùÛ@2Æ3Ƚ@2?ò䎊r@2"n;Ÿ> @2?ò䎊r@2j¤ž+ø@2?ò䎊r@2éè§Ãƒ?|¬h2:“?•°‘oN«?”²“üÎ?ަÓõVqä?«xÑŒ8 ?¦5üR‰Æå?ñ3<' ?¡qÖÏl÷? 0¦ ·Ç·?ÊÞYI?©iùðØ?¦€\ã¯d½?„Ôl‡aoÚ?‘ëÜ«ÙÝ?”ñy¦â?‰Yå*^?‘h1È^µ¿?¢<Ø9î}@@&@ @@<@;?ð?ð?ð?ð?ð?ð?‡t1Ù™€¿[ûÀƤ?Irë „UC?'J<ÿ @§zese@–I˜Î\?cPÍyñú?Aí±ÑÓË?lj¸Ö"Tf?€½s‹L¸±@ŸbA©å@5@­œ¬1&é@­œ A‰7M@­œ¬1&é@­œ›šu@­œ¬1&é@­œš–½@­œ¬1&é@­œ”Ö¡aå@­œ¬1&é@­œ”‡ü¹$@­œ¬1&é@­œ•sê³i@¬(S÷ÎÙ@¬(N—Oß@¬(S÷ÎÙ@¬(,1&ê@¬(S÷ÎÙ@¬( ²•é@¬(S÷ÎÙ@¬'ûW>«6@¬(S÷ÎÙ@¬(1[W>«@¬(S÷ÎÙ@¬(K¹Œ~(@8[¹Œ~($@8TêJŒ@3óS÷ÎÙ@3áÞi­BÃ@3q‰7Kƨ@3^!–R½<@2Ì¿±[W?@2³•$Þ@2Ì¿±[W?@2´tSŽóN@2Ì¿±[W?@2´ã¼ÓZ†? Å{¿Ž<º?œÓ¶åø×g?žˆ’By„?­‹ 'òUA?§­DÊ—Š?¨ãòC¾N”?Ž=fA:?±iˆ7î33?¹LJ98Â?Á;‘2 k…?°jú‚<·™? ‡Ü*Qk?’®Üq“£?›’qvš°“?“ÉŸ“_Æ?–¥ Ý})\? Cž#’>?©vq¦[½@@@@@(@$?ð?ð?ð?ð?ð?ð¿d¼r7¿]•H?EþÕÓß,¦?k‰$Æö)@­œ™ŒúH@¬(I¥s-?ffà:#Ù?Ê[ìx(? .zXå@?ýüÚj¤+@Ÿhvå–é@6@¨6aÊÀƒ@¨6wÎÙ‡@¨6aÊÀƒÁ.„€@¨6aÊÀƒÁ.„€@¨6aÊÀƒÁ.„€@¨6aÊÀƒÁ.„€@¨6aÊÀƒÁ.„€@©-49Xb@©-?¾vÈ´@©-49XbÁ.„€@©-49XbÁ.„€@©-49XbÁ.„€@©-49XbÁ.„€@©-49XbÁ.„€@9|ÚQ@9A [À@4{ Iº^Á.„M‰ûçm@3¬j~ùÛ#Á.„QnÙ‡@2õµsê³hÁ.„NÜC,¥@2õµsê³hÁ.„NÜC,¥@2õµsê³hÁ.„NÜC,¥?¸¤(¾ÂeI@8#˜@8¾:@8 >+@8Iç@8Ù?ª[Xxöp@8Î÷@8i§@8Å@8S@8û—?ªÞUWºci@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø7@¨E¡ÊÀƒ@¨FéxÔþ@¨E¡ÊÀƒ@¨JÑôiÿ@¨E¡ÊÀƒ@¨G{Tƒ@¨E¡ÊÀƒ@¨L`Vpy@¨E¡ÊÀƒ@¨@[)',@¨E¡ÊÀƒ@¨@ WÆ@—…Ïß;dZ@—…Óö‚ ;@—…Ïß;dZ@—…¿pøŒÁ@—…Ïß;dZ@—…Ë a @—…Ïß;dZ@—…Í +'Òô@—…Ïß;dZ@—…ÒA¡ X@—…Ïß;dZ@—…Ù1”ëj@7:qÞi­C@7;µsê´@3¡hr° Ä@3¡ÄM=$@2ñ‰7Kƨ@2ó_„yAÖ@2Š0U2a|@2Œ3»Œ-@2Š0U2a|@2‚¼ºßdx@2Š0U2a|@2“rk)C?¡ùõŠm ?“¬Âbî¾?‘‘‡¼Có?&I«$Ò>?“õz©ÕK?–¿Ù“)?|¬Æ Væ?”ÙOfÑo?‘3ühúoç?–,>¬Û,?–S60†?˜X’Ò™N_?'Æh¶[8?ܺ_ïIˆ?ŽXB:3 +?‰ÏÉ›~1¼?ŠùÅBqÐ?äSJVÉ@@,@&@,@4@5?ð?ð?ð?ð?ð?ð¿fLÙW>Åqk?bm¦÷UÕx?@úF„Ùù@¨FÂ:˜z@—…Ó¡‘?y‰<Y:?eù,u ½d?æâÚ&wl.?ÂÀU2^@Ÿlã§õ–M@8@¥Cò-V@¥CôðØDÑ@¥Cò-V@¥D+ñÚJƒ@¥Cò-V@¥D--Gð@¥Cò-V@¥D=ó‡-½@¥Cò-V@¥D'‡^Ò@¥Cò-V@¥DE²ª‹R@›j:^5?}@›j3¶E¡Ë@›j:^5?}@›i}ÇÇz@›j:^5?}@›ijå àý@›j:^5?}@›i1?"úË@›j:^5?}@›h4P‰Áo@›j:^5?}@›iFóÇþ@4-¥œàv@4* ¹„~@2=‘hr° @1ý¯o‡Þ@1§KƧïž@1_÷ï£ø@1OO „M@0ù`p)u¦@1OO „M@0ù4Ãèµ @1OO „M@0ùt· É?|çµB &€? )¬¤!,?¡0Ô?šúfŠÍ‡?š¦ˆ¶FÚS?—Ô^á/rÌ?}õ¬#„­?—ªËÄZz?ª €?‘0ÔÜ Œ_?šó-„¬ï?–~Ô|J›?…Q–e¾ö?œ…`’1?…ô{Rvâ¬?‡ yƒ‘õ?ˆ´OjöH?‡â-™aá@@$@&@$@2@1?ð?ð?ð?ð?ð?ð?÷cwq ¿£Í«R‘Ð?lhOhÿìÜ?ŒžÃæÒÁÁ@¥D u'@›iž£_5£?ŠÕêƒHHå?ª`7Pûu\@‡£–ÒMÄ@[>Œ.£Éè@ŸdD`í²@9@ª{çl‹D@ª{¥ãSø@ª{çl‹D@ª|¾ß¤@ª{çl‹D@ª|àuöý@ª{çl‹D@ª}/Ÿ¾@ª{çl‹D@ª{=ÈK@ª{çl‹D@ª{²þÅn@¤îƧï²@¤îÇ+ J@¤îƧï²@¤îÆÂ&€@¤îƧï²@¤îÆö”Ft@¤îƧï²@¤îÇï²-@¤îƧï²@¤îƵ '@¤îƧï²@¤îÇæšÔ@2=:’£@2=V”@.ðå`A‰7@.ð|„µÜÆ@.cn—P@.bÃÉîËû@.kjçÕfÐ@.jçÕfÏB@.kjçÕfÐ@.jôðØDÐ@.kjçÕfÐ@.j¦L/ƒ|?É^³Dw'?°çR;?‘.Ò®ó_ ?‹×lÇ…N9?‘ ·èf?È2I/?ÐbMçê_x?’˜‰%F²?Œqç©Fü?>\‰å‘?‘Ú‚ýc¯?r¼Jsž?€bMÕky?ŒÛÏ·+?‚2Y0âµ?‚ù8 ±^?†©b/bJö?†špk Y@@@@@,@(?ð?ð?ð?ð?ð?ð¿G.}œ ¿8É¿–¦?8 +²ÄŸ´?1?ÇõßÙ@ª|*ö\m@¤îÇO«Æ3?G òSÍì;?@V+vÇ?Š(,66?wj !C€@ŸsdBP@:@¢Ð¸Qì@¢Ð1&éy@¢Ð¸Qì@¢Ð$Ý/@¢Ð¸Qì@¢Ð Ƨïž@¢Ð¸Qì@¢Ð 7Kƨ@¢Ð¸Qì@¢Ðn—@¢Ð¸Qì@¢Ïþš@¯”ì‹C•@¯”ì‹C•@¯”ì‹C•@¯”èr° Å@¯”ì‹C•@¯”áÊÀƒ@¯”ì‹C•@¯”Ù‡+@¯”ì‹C•@¯”ØQë…@¯”ì‹C•@¯”çË)_@5Âò䎊@5ÁÞi­BÄ@1¸r° Äœ@1¶8†YJõ@0®ùÛ"Ðæ@0¬£n.²@0Vý!ÿ.I@0Q-w1Å@0Vý!ÿ.I@0PË)^ž@0Vý!ÿ.I@0R3œ¾à?ð°–Ž]?ð}óßd?ð’FB:?ð_ŒB?åt—‚XS?’ß5@?™:¤ Ø?@Ÿx6¶ÊK,@;@¡.—Oß@¡.záH@¡.—Oß@¡1ë…¸@¡.—Oß@¡&§ï³@¡.—Oß@¡5Â\(@¡.—Oß@¡)Ô•+@¡.—Oß@¡.Hè§@ ˆËƧïž@ ˆÎ—Oß@ ˆËƧïž@ ˆÄZ¬@ ˆËƧïž@ ˆÍV@ ˆËƧïž@ ˆ´¼j~ú@ ˆËƧïž@ ˆÁ–R½<@ ˆËƧïž@ ˆÃñA \@5ð4mÅÖ8@5ïU›=È@1ør° Äœ@1ÛÓÃa@@0ù7KƧð@0Ýp£× +>@0^«6z‘@0Hâe+Ô@0^«6z‘@0F¸ºÇ@0^«6z‘@0Hšu%F?|¬Çëý ?”ŸÍFÒ?¡"‰HÒur?’úˆ_šª?¢Ì|(‘¾?¡Ëæ%ðÇ?„F/·ÿP5?®€YÏP·?£¹›vp6d?•¯TÒV?©2rz%6ù?¤Wf˯?“àÕèéa‚?²ô‚èBM?¶ddÆ ?…{BÕ0Þ?ˆ¾þúWZ‹?‘øù>3}@@@@@,@,?ð?ð?ð?ð?ð?ð?J:—œ,¿u:…is?T‘¶–1 +X?gzLB…7@¡/²¨$¤@ ˆÄõÊ?qîŒÆÿ;?ƒ’‰GñS ?á@½-SÒ?ýtÔ=0é`@ŸbÞZâ?@<@¢c× +=q@¢ws¤K@¢c× +=q@¢[òt@¢c× +=q@¢G1IŽÁ@¢c× +=q@¢sÔbÏ@¢c× +=q@¢^ÜÍŠ@¢c× +=q@¢Xï4Ö¡@–[˜“t¼j@–[vÈ´9X@–[˜“t¼j@–[Ž•Ÿ@–[˜“t¼j@–[¸é»9Ä@–[˜“t¼j@–[Àø̈@–[˜“t¼j@–[¦”÷@–[˜“t¼j@–[âÐå`B@8rÃÉîËû@8kz7>!@@3» Iº^@3À,m³ +@3A‰7KÇ@3 [$5z@2QÞi­BÄ@29Øa…Š`@2QÞi­BÄ@2H=?°º@2QÞi­BÄ@2P-à r?žÕÈNAc?‘NHR­pÚ?•!È}'û)?Íxeûñ'?™> +¢; ?š½+òªª?¶(-~¢ù1?›eÛÊ@½ ?œ#“Ð:©?“4oýŸÃ?—®Yë(?œ –sPfç?|ÆÁïf^@¢h|ùæR@–[¼‰ˆ¨?‚wwb›?Ž…òÕdÁ?ó¦y›–â@¹£œ×è@ŸoÁ•ôö@=@¨‰å`A‰Á.„€@¨‰å`A‰@¨‰ov_Ø®@¨‰å`A‰@¨‰‚h Ô•@¨‰å`A‰@¨‰$Ý/@¨‰å`A‰@¨‰{µsì@¨‰å`A‰@¨‰{ÚQÏ@ Qhr°!Á.„€@ Qhr°!@ Cn.±Ä@ Qhr°!@ 9XbN@ Qhr°!@ 8l"h +@ Qhr°!@ áG®@ Qhr°!@ &€IS@7ÿ–»˜ÈÁ.„>¤µÜÆ@3ør° Äœ@3áø -à@2ñ‰7Kƨ@2á$Ý/@2”mÅÖ8†@2|í‘hr°@2”mÅÖ8†@2wl‹C•@2”mÅÖ8†@2w†Â&€ž@8J¨?§5ÈÔ—jN?Ÿya´ R?œÖ,? vÁ.þ¼å?¢†)™„}U@8J¨? ¥¬ ˆ? ÍÑtƒ!¢?¡"JîÃ!?°¯l¯Ê?°|Í@¢À@8p÷?—ƒFÛ¯/?‰Ç^)7H?‘V]9½êV?’3¨£„È?’ymícw\@@@@,@*?ð?ð?ð?ð?ðøøøøøøøøøøøø>@ªg÷ÎÙ‡Á.„€@ªg÷ÎÙ‡@ªg+]Ìcñ@ªg÷ÎÙ‡@ªgÔýó¶@ªg÷ÎÙ‡@ªg&šÔ,=@ªg÷ÎÙ‡@ªgC,¥z@ªg÷ÎÙ‡@ªg$Ý/Ÿ@ªÕ¥`A‰7Á.„€@ªÕ¥`A‰7@ªÑ¯Ÿ¾w@ªÕ¥`A‰7@ªÑ“¶E¡Ê@ªÕ¥`A‰7@ªÑÒòä@ªÕ¥`A‰7@ªÑP‰ 'R@ªÕ¥`A‰7@ªÑ4!-w@9}:’£Á.„>¤µÜÆ@5ÎÙ‡+@2XK]Ìcñ@41‰7Kƨ@18bMÒò@3‡ ù kº@0,<žìÀ@3‡ ù kº@0ÕfÏAò@3‡ ù kº@0ã¼Ô@8J¨?“…­tµH?œ‡ë8Ê–?™ÒµR24°?œhÈï?›wMÿIf@8J¨? 3ÝP‰j?¥EE+­?¡¡çL¤?™)Â>¡$;?¡ùŠÀs›@8p÷?îÑšˆHÉ?‰~}œ…o_?eLýÂ2G?æšÔ,<ž?’:™/ʼn@@@@(@*?ð?ð?ð?ð?ðøøøøøøøøøøøø?@«LÌÌÌÍ@«OŸ¾v@«LÌÌÌÍ@«MÒñ©ü@«LÌÌÌÍ@«N!–R¼@«LÌÌÌÍ@«L¿±[W@«LÌÌÌÍ@«L¥zxk@«LÌÌÌÍ@«L¿±[W@¥@Þ5?|î@¥@ݲ-V@¥@Þ5?|î@¥@ßoÒó@¥@Þ5?|î@¥@áÊÀƒ@¥@Þ5?|î@¥@Þi­BÄ@¥@Þ5?|î@¥@à[À8@¥@Þ5?|î@¥@ÝÈK^@6²ÃÉîËû@6±ÿ.Hè§@2i‡+ @2irGE8ï@1©Û"Ðå`@1«àÞÒˆÎ@0𖻘Çã@0ñuŽ!–S@0𖻘Çã@0òa|ÚQ@0𖻘Çã@0ñA [À?‡YÍ_?‘" Á°–•?‘¶å¤wk½?Œ^:Òf?’ðä¼_?ø·-/ge?Œs¤DÅÐ?’ùÎ {?‘Ç€˜­r?½¶³±×ò?’8,²ñ±T?ƒÁþGEÛ?„›‹ÖO?ŒÖ +ÄȲ?„+£QKù?ƒì%­¹Ï‘?‡v>ª¸ ?‡×7°º@@@@@*@&?ð?ð?ð?ð?ð?ð¿Að ?%N  ?%tƒ-xý?:ó€îì´@«Mk°|¾@¥@Þ<éßÎ?Dò/v&4û?Yù½òfµ“?œ“ê «?´xx5i½@Ÿjʧ¹/Å@@@¯ÑÞ5?|î@¯ÑÞ¸Që…@¯ÑÞ5?|î@¯ÑàA‰7K@¯ÑÞ5?|î@¯ÑàhÛ‹«@¯ÑÞ5?|î@¯ÑàhÛ‹¬@¯ÑÞ5?|î@¯Ñܞ쿱@¯ÑÞ5?|î@¯ÑÝ—ö+l@¥¦$Ý/@¥¦$Ý/@¥¦$Ý/@¥¦ðoiD@¥¦$Ý/@¥¦§ï²@¥¦$Ý/@¥¦µ (@¥¦$Ý/@¥¦?@¥¦$Ý/@¥¦E8ï5@2” xFÜ@2”¼¤@0sS÷ÎÙ@0sn.±Ä2@0Ÿ²-V@0ŸÅo@03&Á½¦@03Š Þ@03&Á½¦@03g ù l@03&Á½¦@03,¥zxl?É_ð©«?¦Ì '?‘@˜¯³¸?Œj6_?‘'¬Å™» ?‘ë´¤G?ÐbMçê_x?’7Îf¬ps?Œqç©Fü?K·‘d]?îCq$u?½y ¦Å?€b¡´ñ@?ŒÖ +ÄȲ?‚yî8Á$?ƒ!Ë *(?†Óß +tõ?†µ°jÆÃ@@@@@&@,?ð?ð?ð?ð?ð?ð¿VDIÈ&?+`’~”?Gª°gØý?1€pIm_@¯ÑÞs÷Æ@¥¦¸ûd*?Vµk5Ì(G?@‚;Ç >´?¨NJÌÛ@?w_–Š8…@Ÿrÿ>Ê?š@A@¦Ã¬1'@¦ÃÀ¹#@¦Ã¬1'@¦Ã(ð@¦Ã¬1'@¦Ã/ìVÕÐ@¦Ã¬1'@¦Ã($ x@¦Ã¬1'@¦Ã' ù l@¦Ã¬1'@¦Ã+àÞÒ‰@kY‡+@k.Þñõ„@kY‡+@k£× +=q@kY‡+@kÀhÛ‹«@kY‡+@kŒ~($ +@kY‡+@kš…‡“Þ@kY‡+@k©*/@8 ]cˆe”@7à©òï\Ø@2¦‡+ J@2™XbMÓ@2Z~ùÛ"Ñ@2<ú¬Ùè>@1ÜÚQÎ@1Õ¨Xy=Ú@1ÜÚQÎ@1ÖÜ]cˆf@1ÜÚQÎ@1Ó9Àëíú?¥Jí “^»? WZwnÖ;?± ˜Ú¿ðA?–¼A2xý?”Ôð|c¤?•ŠàuVº`?™9A¨»ý?¯lßÔìy=?¼Aå qi?¡Ð`HÇi?°ö…8Ó}?¢?Êÿ*ç?†×ÔÍ¥Èï?•ÙK°FÑ? “˜¯ÃÛ?‘¶i + ?•ƼÀÖæu?™ì ª# Ù@@@@@,@*?ð?ð?ð?ð?ð?ð?`Úüþö€?†šÈ.GÀ?FåZ)µ™ð?h² b„aÉ@¦Ã' PÓ@kun+¬@?avÖØtõ?ŠâåÃùÖÁ?ªgCeÉ?ð=ÉÇœ@ŸlrM +е@B@ªµMOß;d@ªµM‘hr°@ªµMOß;d@ªµMí(Œç@ªµMOß;d@ªµNV“@ªµMOß;d@ªµMí(Œç@ªµMOß;d@ªµLÌÌÌÍ@ªµMOß;d@ªµLIº^5@®¿àA‰7L@®¿àƒn™@®¿àA‰7L@®¿àÞÒˆÎ@®¿àA‰7L@®¿àªdÂù@®¿àA‰7L@®¿àÞÒˆÎ@®¿àA‰7L@®¿á [À@®¿àA‰7L@®¿àÄ›¥ã@0ý:’£@0üú¬Ùè>@,kƧï²@,kíúCþ\@+?;dZ¬@+?b¶®}V@*Âu%F +§@*Â\(õÃ@*Âu%F +§@*ÂZîc‹@*Âu%F +§@*œwškQ?É^³Dw'?Úþþ³?‘"žæÆó¡?‹Æ úJ-M?åt—‚XS?À­Õß}º?ÐbV‡,?’ +‰¸Ì?ŠA)Nîá?3.Ylî?Î ¯xV?hï,ðà?€bMÕky?Œ­·Ž~('?‚q6tNø7?‚æÊ¬vã?†½ª»—?†ŠúЀ>(@@@@@@?ð?ð?ð?ð?ð?ð¿GHüºà¾þ]šrÀ?æ³/ý?ZËà5û™@ªµM;È8@®¿àë¨:®?'ë5ØÁnu?*ËŸ[óË?L ̱U--?Om¦æ¢!@Ÿs’?]a@C@¨Ê…¸Qì@¨Ê…¸Qì@¨Ê…¸Qì@¨Ê‚\(÷@¨Ê…¸Qì@¨Ê„?åÉ@¨Ê…¸Qì@¨Ê†ö”Ft@¨Ê…¸Qì@¨Ê†Ü]cˆ@¨Ê…¸Qì@¨ÊƒŠ @¢0‚ Iº^@¢0ƒS÷ÎÙ@¢0‚ Iº^@¢0ˆ´9X@¢0‚ Iº^@¢0ƒ•&@¢0‚ Iº^@¢0ƒFÜ]d@¢0‚ Iº^@¢0‚MÒñª@¢0‚ Iº^@¢0TÉ…ð@5™*0U2b@5™JôðØD@2é‡+ @2ìIº^5?@2¬j~ùÛ#@2¯ „M:@2L¿±[W?@2R-V@2L¿±[W?@2PhÛ‹¬q@2L¿±[W?@2PA‰7KÇ?|¬Çëý ?Ï[äe‹w™³@¨Ê…‚"h@¢0‚³Yg?W»#[Hœ?7£9ûmܵ?·M:îä?vVqX¾ @Ÿe¤–;øÞ@D@ »@ƒn˜@ »@A‰7L@ »@ƒn˜@ »=8Qf@ »@ƒn˜@ »?2zÔZ@ »@ƒn˜@ »?}5þ@ »@ƒn˜@ »8•Äß@ »@ƒn˜@ »9N±ç.@ ÄixÔýô@ Ähr +W@ ÄixÔýô@ ÄmôŸ¨@ ÄixÔýô@ Ä„‹›\†@ ÄixÔýô@ Ä„äG³C@ ÄixÔýô@ Ät@ ÄixÔýô@ Äs—mîÿ@42ÃÉîËû@43Í…^L@0¡hr° Ä@0Xu\x’@/íOß;dZ@/åÊnæù@/¸7´¢3œ@/§ÂY¼ô@/¸7´¢3œ@/¥’8\h@/¸7´¢3œ@/¤âsù†J?}õ¬#„­?¨%àçø?‘J}+&ný?‹Á‰¯ö}?’oŽ@%“Û?“W­lH?|¬Æ Væ?’ŽT‘}ø˜?‘£ÌUò?‘µâ´Ñü?˜"ê¬X?—ø+éߊ?‚ûÿû‚ÜJ?Iþòxd?ƒw¦¯äÌ:?„]Þ­*~6?‡G2aÆgŠ?ˆ*?Q@¼@@(@"@"@0@.?ð?ð?ð?ð?ð?ð¿Vd~È?qY~mY?A¡³q¯N”?g>UVˆ‰K@ »=ÑNÚ@ Äqò}e¹?`¦mÁ,FÐ?†,! Sd?Ì]“„Sæp@RciÔƒ@Ÿef²qk@E@¬jféxÔþ@¬jg+ K@¬jféxÔþ@¬jhŒç°@¬jféxÔþ@¬jjW§†Â@¬jféxÔþ@¬jh§æ›@¬jféxÔþ@¬jfšÔ,=@¬jféxÔþ@¬jeýŠÚ¹@ òSt¼j@ òSt¼j@ òSt¼j@ òSüPH@ òSt¼j@ òR×s@ òSt¼j@ òQë…·@ òSt¼j@ òR° Äœ@ òSt¼j@ òQÞi­C@3÷â‚@·€@3ø Ô•*@0£÷ÎÙ‡@0£ê³g ù@/ãn—P@/áò×s@.õ¨Xy=Ú@.õ2a|Û@.õ¨Xy=Ú@.õL˜_÷@.õ¨Xy=Ú@.ô¯O „M?|öOÿÝ?ôÊ_?‘SŸ[ÈÙ?Œ'õ‚$5ñ?‘ §‡g¾?ß-tT?|¬Çëý ?’ ŠŠ¤Hì?™Îd0RÜ?]bËn~?ÚÌA B{?sxÙ/T?‚nâwfÿ?ŒÖ +ÄȲ?‚˜YªüÏF?‚þ——³§ø?†¼Š˜L¥÷?†Óß +tõ@@@@@(@,?ð?ð?ð?ð?ð?ð¿7P¿4JiF@?1’ ‘?ŽwF @¬jg$ø;4@ òR½Žj¡?Q~`Šqm?<¡õ¯$” ?°tmä­”?…Vº²;+@ŸfîËŸ¤@F@«ô Ä›¥ã@«ô¡$Ý/@«ô Ä›¥ã@«ô ðE×'@«ô Ä›¥ã@«ô¡ [À@«ô Ä›¥ã@«ô¡J¯{"@«ô Ä›¥ã@«ô Xߊ­@«ô Ä›¥ã@«ô N%²N@–8 Iº^5@–8 Iº^5@–8 Iº^5@–8 ¦ŽB @–8 Iº^5@–8 ;ß¼@–8 Iº^5@–8 1&é@–8 Iº^5@–8  +%@–8 Iº^5@–8 ,ädš@-zu%F +@-zu%F +@&žùÛ"Ðå@&Ÿö”Fs@%›dZ¬@%›quŽ!–@$fL/ƒ{K@$fV«Þ?¼@$fL/ƒ{K@$fYJôðÙ@$fL/ƒ{K@$fL/ƒ{K?É^¨¯Âj?Âܸ“n?‘…3:?è?‹«F§B ?èy’”&€?´O×û÷«?ÐbMÝn½?’Fó®â?}¸)"Òª?2^€ùù?Ï £mv¡?J› öWˆ?€bMÕ]f?Œ¬.гî?‚nÓ3îŠ?‚âxðÄFD?†‡[ÐJ³“?†‡I‚ÿ¯Û@@&@*@*@<@:?ð?ð?ð?ð?ð?ð¿=f‰IØ>þÝ©0?!$O¤wj>ßL]h2]>@«ô ·e+Æ@–8 D“'?0{ë2x8>ížfuÆyÖ?Z¿®E”Ïe>ÓG=¡ŽŒ@Ÿs ÷[g@G@ kò° Äœ@ kw@ kò° Äœ@ kæ0õM@ kò° Äœ@ kæ>ÿFe@ kò° Äœ@ kÞm„Œ.@ kò° Äœ@ kØbMÓ@ kò° Äœ@ k×´¢3œ@®ÿÕ$Ý@®ÿÔ¯O „@®ÿÕ$Ý@®ÿÐa÷5¥@®ÿÕ$Ý@®ÿÎI—(2@®ÿÕ$Ý@®ÿÄ”¤A„@®ÿÕ$Ý@®ÿÈ´9X@®ÿÕ$Ý@®ÿËŸU›=@4ÞHè§æ@4Úÿ_Ãq@1R Iº^5@1Eí8†@0»Æ§ï²@0¬Iº^5@@0…œàu÷@0mÈ´@0…œàu÷@0oÅo@0…œàu÷@0p-à ?}@T˜ÁÎ¥?Æ–wå1?‘m ØÆs?Œ.@miûz?’Þäi]i?‘•S‚üJ?|çµB &€?’ϹXå?ï»ðæ=‡?Š˜õ¼N0?‘I0‚ìB?ÝÒ¥X[?ƒ±`P„~V?„º{6–?ƒ^6™•±?ƒ\µT¯–?‡×7°º?‡Õ˜]–GÄ@@"@&@&@ @?ð?ð?ð?ð?ð?ð¿u³Pìê¿f­8 ?C92ÿq?T®“Ò“Ó@ kãe¼’Æ@®ÿÎ'§¼r?bÞ»³wü?tïTk"¨™?Ñþ‘~WúÝ?öAµyü4š@Ÿf²ùÍŒ@H@¡5l‹C•Á.„€@¡5l‹C•Á.„€@¡5l‹C•Á.„€@¡5l‹C•Á.„€@¡5l‹C•Á.„€@¡5l‹C•Á.„€@”"49XbÁ.„€@”"49XbÁ.„€@”"49XbÁ.„€@”"49XbÁ.„€@”"49XbÁ.„€@”"49XbÁ.„€@6(†YJôñÁ.„>¤µÜÆ@1Å?|í‘hÁ.„M‰ûçm@0²-VÁ.„QnÙ‡@0®_oÒ Á.„NÜC,¥@0®_oÒ Á.„NÜC,¥@0®_oÒ Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøI@®År-V@®Åo\(õÂ@®År-V@®ÅcS&@®År-V@®Åc× +=r@®År-V@®ÅbÐå`C@®År-V@®Ågâ‚@¸@®År-V@®Åe”¯O@¨_MÒñ©ü@¨_PbMÒò@¨_MÒñ©ü@¨_B Iº^@¨_MÒñ©ü@¨_JÀƒo@¨_MÒñ©ü@¨_9³Ð|…@¨_MÒñ©ü@¨_;quŽ"@¨_MÒñ©ü@¨_:–»@62ÃÉîËû@6/O „M@3uãS÷ÎÙ@3j0U2a|@2¾V“u@2¸ºÇË*@2”mÅÖ8†@2ˆy=Ùc@2”mÅÖ8†@2…ýŠÚ¹ö@2”mÅÖ8†@2€bMÒñª?‡YÍ_?žŽ´)D1ü?”Ä0óçî?‘£ºáõÑ?“Ýâqß?›‹ÞV‘?‚á²Olºü? îÑšˆHÉ?低NëU?¥ZÑpÉç?¡Ý¤`Ìi?¡Ö„æ5ç?…ÑTë0Ó?vùv“?‹f°ùr[ƒ?Šˆ€!B®?’¸ø‰o?’áû¦h@@@@@*@&?ð?ð?ð?ð?ð?ð¿cUŒ¦Æ¿u6#ž2?Rxõd…¦?N¥*µù@®Åi× Ø²@¨_F7¦?q V„>Ø\?mçþ±yøÂ?à†(l– ‘?ÊÔe¹rW•@Ÿe5mzÆÄ@J@¦á™™™™š@¦á¨1&éy@¦á™™™™š@¦á™è>B[@¦á™™™™š@¦áš¬Ùè>@¦á™™™™š@¦á›J#9Á@¦á™™™™š@¦á™#¢œx@¦á™™™™š@¦á™¦µ @ª¼Ù‡+@ª¼Ù‡+@ª¼Ù‡+@ª¼Ùe+ÓÃ@ª¼Ù‡+@ª¼Ø}¿I@ª¼Ù‡+@ª¼Ú¹õYµ@ª¼Ù‡+@ª¼Øâe,@ª¼Ù‡+@ª¼Ùè>B[@8Û¹Œ~($@8伤@1.5?|í‘@1.žš@0;Ƨï²@0;íúCþ\@-³üPH@-³üPH@-³üPH@-³&Á½¥@-³üPH@-³33334?¦NIÉ®š?jú‚<·™?‘ŒQ®üX?‹ó#ƒt£?‘2A¥Ø?ÛF»0?¡ÅꯨŠT?’LÁŒÀ´a?ê‰O)AT?Níú¾?ë,YÁ?e¾DQ„Q?Å 6•™ËÅ?Œþ%å_D?ƒ!A +mº¹?ƒE 8?†£îž«î?†žóB» “@@@@@,@*?ð?ð?ð?ð?ð?ð¿_!Ž¿•¤á ?Qq2–µ&?9¾‰KÐs@¦á›cþR@ª¼ÙÔtX?d“Uxvúh?Pøà6$ ?ÄÒp‹ ?š^/æ›Mò@Ÿp.å$—‘@K@«Š’ñ©ûç@«Š‘ë…¸@«Š’ñ©ûç@«Š£× +=p@«Š’ñ©ûç@«Š¾ í)@«Š’ñ©ûç@«Š„Âø7µ@«Š’ñ©ûçÁ.„€@«Š’ñ©ûçÁ.„€@•Å Oß;d@•ѳÀZ@•Å Oß;d@•Äɺ^5?@•Å Oß;d@•ÄçæšÔ@•Å Oß;d@•Ŧµ @•Å Oß;dÁ.„€@•Å Oß;dÁ.„€@2^Hè§æ@2o“ÎWÄ¿@0E?|í‘h@0/¤?åÉ@0 "Ðå`B@0 JôðØE@/Âu%F +§@/‘hr°!@/Âu%F +§Á.„NÜC,¥@/Âu%F +§Á.„NÜC,¥?Éb¿Þ6ùÛ"Ñ@ övE¡ÊÁ@ ö…ãS÷Ï@ övE¡ÊÁ@ öª™0¾@ övE¡ÊÁ@ öÐå`A‰@ övE¡ÊÁ@ ö®Hè§@ övE¡ÊÁ@ ö¹Àëíú@804mÅÖ8@7}jOv@5c÷ÎÙ‡@5]ÈK]Ì@4¶§ï²-@4«"Ðå`B@4zÔ,<ží@4^_oÒ @4zÔ,<ží@4i 'RTa@4zÔ,<ží@4lÙè>B[?õ\<4ØÉ?ÆøØö‚?­‡-¯ÅsA?³añ÷­þ? k‚ˆŸ;æ?±gU¯»aJ?êñç,ÄÄ?¦ KBI?ªBûúÈ…˜?³ç1‹ñ¹?¦OY¸¾?­‚‰%TUx?õÓâ‚:B©?’žÿ§:­?°^&Mªka?šæÚ§³Á?±¯Q—, +?®†ø.ìP´@@@@@&@(?ð?ð?ð?ð?ð?ð?…ë°Þ3X¿ƒÝy/ ?…ÙþXÚH?„è Ò@«™ÌÜb˜š@ ö¹i¶˜?‰ô ’±?@k0ÿþâ?ÚÀ‹L6G?ß²nÖÛÁì@ŸtÃëû@M@ª‚´¼j~úÁ.„€@ª‚´¼j~ú@ª‚Çp•ãw@ª‚´¼j~ú@ª‚‹ÞÚ™@ª‚´¼j~ú@ª‚u³]@ª‚´¼j~ú@ª‚Ó>å-ð@ª‚´¼j~ú@ª‚ÉØ«@”–¬1&éÁ.„€@”–¬1&é@”–E§ÉÌ­@”–¬1&é@”–"C8…@”–¬1&é@”–‘ñJûO@”–¬1&é@”–\ô(G@”–¬1&é@”–±ôëÊõ@8°4mÅÖ8Á.„>¤µÜÆ@2 Ä›¥ã@1—ºÇNɶ@1,j~ùÛ#@0Ýâ«qyR@0B‚@·€4@0ÜÏz¬@0B‚@·€4@0Ó%ìJb@0B‚@·€4@0Rß«¯g@8J¨?±v>ÅÏF?  v—á®?—Õú›?«Cç4-k?¥Ôû‡.[@8J¨?µGÍ̲„f?”t—Di˜g?œI»ÍÈtå?°ÙÜE¹ˆê?°€qjÛߢ@8p÷?±€„*¸?…±?Aeǘ?ˆûqÆàô‹?æsc`D?”0›Â~6Ë@(@@$@<@:?ð?ð?ð?ð?ðøøøøøøøøøøøøN@¤0¯Ÿ¾w@¤0¯²- @¤0¯Ÿ¾w@¤0¯ªÍž„@¤0¯Ÿ¾w@¤0­úCþ]@¤0¯Ÿ¾w@¤0¯²-@¤0¯Ÿ¾w@¤0°-à @¤0¯Ÿ¾w@¤0± ²•ê@¤«\(õÂ@¤«KƧïž@¤«\(õÂ@¤«aohÝ@¤«\(õÂ@¤«Y=Ùc@¤«\(õÂ@¤«[‹¬q@¤«\(õÂ@¤«^Ñ·@¤«\(õÂ@¤«]p£× +@8 xFÜ@8\‘ÑN<@3¡hr° Ä@3¡Î_p@2Õ`A‰7L@2Õœàu÷@2 +0U2a|@2 +…‡“ݘ@2 +0U2a|@2 àÞÒˆÎ@2 +0U2a|@2 P°ò{³?“Æ×q„nï?”êÎlŒy?‘âTÀÊS“?Œåvæ" ?“r {#¥&?‘É=¦þï?£È‰·akû?—YÜCêî?’€fç½Î?‘W×ý°A?’ºñS©YÖ?‘«VTÓ?–EÑ}?’¿½Ë‡è·?‹v'þ­X?ŒžVE’D?‹¹ÇlŒ?‰_uñšó@@@@@,@(?ð?ð?ð?ð?ð?ð?2<ê`?f¡÷Y€?#DÞzÙOB?U‘Ÿß¼Í@¤0°%5@à@¤«ZÒâ~Ó?@)Ö"T ?lòd Q`?zàÝ/÷¾?Ï“*:oç@ŸnøeÝeÜ@O@£‚‰7Kƨ@£~°bMÒò@£‚‰7Kƨ@£~îV”@£‚‰7Kƨ@£@N¥@£‚‰7Kƨ@£~ñ[W>«@£‚‰7Kƨ@£~èŒç°@£‚‰7Kƨ@£~îŠqÞj@¤(õÂ\@¤‚ØbMÓ@¤(õÂ\@¤‚³ŽóMj@¤(õÂ\@¤‚¹³Ð|…@¤(õÂ\@¤‚ÁTÉ…ð@¤(õÂ\@¤‚Ó¶E¡Ë@¤(õÂ\@¤‚غÇË@6‚ò䎊@3±&éxÔþ@2Ê^5?|í@0^vÈ´9X@2iÛ"Ðå`@/ÄohÜ@2Œ~($ @/v_Ø­­@2Œ~($ @/eýŠÚº@2Œ~($ @/Ÿ¾vȵ?1·†Æjñ?¡U¢WªÂ?¤MD¢e?¥F’ë‚ÝÌ?£”ŠFÉÇ¥?žy—™öW?}Ñ¿ž,?&”ðÚ˜?œjá{X?›çôQPL? ¨„¨ƒZ?šÏ7â4l?Œznyž-g?ŽõÕJ?‡»¢Øˆ‹?‹h¢íc„„?“¡NÙ(£(?Œ8¸wx¯@@@@@*@$?ð?ð?ð?ð?ð?ð?Œ»¤ß@¿Vîù§.?eHòªÙ>é?c]žÏÏzï@£~ÇLSÿQ@¤‚Õ9ðp?‚]°¬&tÅ?€ÎtSô÷Â?þÛ°™’@>ì˜Pr@Ÿbuä ÝÔ@P@¥rMÒñ©ü@¥rMOß;d@¥rMÒñ©ü@¥rN¾ß¤@@¥rMÒñ©ü@¥rPU2a{@¥rMÒñ©ü@¥rPbMÒò@¥rMÒñ©ü@¥rQ©ûçm@¥rMÒñ©ü@¥rRòäŽ@Ÿmò° Äœ@Ÿmó¶E¡Ë@Ÿmò° Äœ@Ÿmó3333@Ÿmò° Äœ@Ÿmîæ1ø¡@Ÿmò° Äœ@ŸmëC,¥@Ÿmò° Äœ@ŸmñÅ@Ÿmò° Äœ@ŸmïhÛŒ@2£g ù l@2£t¼j~ú@0E?|í‘h@0AA [À@.÷Oß;d@.ðbMÒñª@/åÉä@/v8†YJõ@/åÉä@/vð¸»@/åÉä@/vÈ´9X?ðO­W¬ÃÆ?‘–Œ ˆŽ ?’Gßk;m?‘Ä{Oç¿`?’ÒuèçxY?’IåŠú?ð„ƒ;0?“$i «%h?‘½ÀèÑmK?‘.“¥?“4¦{ºÕ?’vMëôUu?ð!̃?ŒÛÏ·+?‚˜YªüÏF?„Ö©Ú0?†ùadô|?‡¤o„C?ð@@@@,@*?ð?ð?ð?ð?ð?ð?I7Ý–?O_õNá?d¦¸öv?G+Â>YI@¥rQYëdÏ@ŸmîWÙ²{?(­áûˆX?UçÌ+Õ?EßAÖò?¡dw"‡ñz@Ÿs¦qgA˜@Q@©!G®záÁ.„€@©!G®záÁ.„€@©!G®záÁ.„€@©!G®záÁ.„€@©!G®záÁ.„€@©!G®záÁ.„€@œ}Á‰7KÇÁ.„€@œ}Á‰7KÇÁ.„€@œ}Á‰7KÇÁ.„€@œ}Á‰7KÇÁ.„€@œ}Á‰7KÇÁ.„€@œ}Á‰7KÇÁ.„€@9¹Œ~($Á.„>¤µÜÆ@4Å?|í‘hÁ.„M‰ûçm@3¬j~ùÛ#Á.„QnÙ‡@3Œ¿±[W?Á.„NÜC,¥@3Œ¿±[W?Á.„NÜC,¥@3Œ¿±[W?Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøR@ŸÜ›¥ãSø@ŸÜœ¬1'@ŸÜ›¥ãSø@ŸÜœö墷@ŸÜ›¥ãSø@ŸÜ¢þ¿cÊ@ŸÜ›¥ãSø@ŸÜ£m¤S]@ŸÜ›¥ãSø@ŸÜ˜ ŸÅ@ŸÜ›¥ãSø@ŸÜ™®Êç@¨ZéxÔýô@¨ZéxÔýõ@¨ZéxÔýô@¨Zç[÷ @¨ZéxÔýô@¨ZæÏAò@¨ZéxÔýô@¨Zèma-i@¨ZéxÔýô@¨ZægÃ]·@¨ZéxÔýô@¨Zæ&êÐ@1åöý!ÿ.@1åÙ/¬Â¨@0^Ù‡+@0^ž`¬ÄŠ@0 ²-V@0 =Æ¢:ò@0#ÉîËû@0%WÞ¨`@0#ÉîËû@0$9n Å@0#ÉîËû@0#¤àQô?É^ž6õP?é=ðL?‘m ØÆs?‹½3H+á?‘,kêcµ”?Ò¸QÛgv?Ðb^57KÏ?’!SP¿˜ú?¦ƒUñ…›?xx1’ó?‘Ì´×>.?^­ÿ|&Õ?€t4æ—nÐ?Œ¸UQxÌš?‚ß\3?‚ñjNÒí,?†ú{j½ì?†Â¿'Ù@@*@*@&@8@1?ð?ð?ð?ð?ð?ð¿b4J{¿P€ÙÄ/?Lð߆0£?0‚‚,—û@ŸÜU_ò@¨Zç ìë?[éó]??L5¤Õ9?²ßª+6 ç?tü¼5ºk…@Ÿs +Šôö @S@žµj~ùÛ#Á.„€@žµj~ùÛ#Á.„€@žµj~ùÛ#Á.„€@žµj~ùÛ#Á.„€@žµj~ùÛ#Á.„€@žµj~ùÛ#Á.„€@¥ Iº^Á.„€@¥ Iº^Á.„€@¥ Iº^Á.„€@¥ Iº^Á.„€@¥ Iº^Á.„€@¥ Iº^Á.„€@8¨†YJôñÁ.„>¤µÜÆ@3Š^5?|íÁ.„M‰ûçm@2gKƧïžÁ.„QnÙ‡@1á:’£SÁ.„NÜC,¥@1á:’£SÁ.„NÜC,¥@1á:’£SÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøT@¨7Ý/Ÿ¾@¨7Ýp£× +@¨7Ý/Ÿ¾@¨7Ý©ˆ”¶@¨7Ý/Ÿ¾@¨7Ý$¿Á @¨7Ý/Ÿ¾@¨7Ý®%ã@¨7Ý/Ÿ¾@¨7ÜÊRs%@¨7Ý/Ÿ¾@¨7ÜäþÄL@•î¼j~ùÛ@•î¼j~ùÛ@•î¼j~ùÛ@•î¼n&ßc@•î¼j~ùÛ@•î¼t•:Ý@•î¼j~ùÛ@•î¼\akû@•î¼j~ùÛ@•î»ÑÂñ@•î¼j~ùÛ@•œÐ(@5ò䎊@5:’£S@0i‡+ @0iM”‰b@/¯ß;dZ@/¯ç˜Å@.fL/ƒ{K@.fw„6Ì·@.fL/ƒ{K@.f4‘G$@.fL/ƒ{K@.fCìó‡0?|Ñb×¶@?ù>J|Ç×?‘@5$³_2?‹²»ø4!Ó?òë6­?¾cÞISá?}@T˜ÁÎ¥?’ã€Õ?—Ó>º¿?1Œ˜x?à!WSñm?WµfóÚ?‚o,¬qVÙ?Œ¶Ï7ƒ­)?‚v«#0ñ&?‚è$: ¦œ?†’¸%9§G?†–Ðé(Y÷@@,@*@(@<@:?ð?ð?ð?ð?ð?ð¿xC€¿3¡@?6À(æA>ô? ¥#£@¨7ÝEàÍÄ@•î¼'G¬?5"êJ›T?¢ìF,ç›?xQÙ¼Sd??5ý|FFŒš@Ÿg +È~=@U@¯8­VÁ.„€@¯8­VÁ.„€@¯8­VÁ.„€@¯8­VÁ.„€@¯8­VÁ.„€@¯8­VÁ.„€@§ üj~ùÛÁ.„€@§ üj~ùÛÁ.„€@§ üj~ùÛÁ.„€@§ üj~ùÛÁ.„€@§ üj~ùÛÁ.„€@§ üj~ùÛÁ.„€@8`ØDЩÁ.„>¤µÜÆ@3Ê^5?|íÁ.„M‰ûçm@3'KƧïžÁ.„QnÙ‡@2ý!ÿ.IÁ.„NÜC,¥@2ý!ÿ.IÁ.„NÜC,¥@2ý!ÿ.IÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøV@®#LIº^5@®#EãS÷Ï@®#LIº^5@®#NÙ‡+@®#LIº^5@®#QÞi­B@®#LIº^5@®#M(Œç@®#LIº^5@®#N.±Ä3@®#LIº^5@®#LcñA!@Ÿ1&éy@Ÿ“t¼@Ÿ1&éy@Ÿ :’¢@Ÿ1&éy@ŸüÓZ…‰@Ÿ1&éy@Ÿ:’£@Ÿ1&éy@ŸëíúE@Ÿ1&éy@Ÿóê³g¡@6rÃÉîËû@6nzáG®@3xr° Äœ@3wü¹#¢œ@2t“t¼j@2têJŒ@2\ÚQÎ@2\cñA \@2\ÚQÎ@2_¤?åÉ@2\ÚQÎ@2]\ú¬Ùè?£G± *Ç‚?’ÕOäª9ô?“mî–‚Žr?ç\Š2˜?–úc‘c?“‡SË{d—?}Ñ¿ž,?”ï©ÛÉ?“®ÂrVŽx?’„÷ò¸?•Ñ^¢?”æâ„o?­dÒ¦Ó 4?îŠõ ?† + Ðló]?‰hS—p]Ð?Œ¸ðËb?Šì¾ ;8´@@@@@,@*?ð?ð?ð?ð?ð?ð?M#à¿R §6¢?Kwü”˜ú??ã¥nW:Ê@®#LFÛ;v@Ÿý®v¢¨?cË¡`¹?d±@ô,?·ðt›jwÿ?ÃPõß“Zþ@ŸmÖݤb@W@¦Ó>ùÛ"ÑÁ.„€@¦Ó>ùÛ"ÑÁ.„€@¦Ó>ùÛ"ÑÁ.„€@¦Ó>ùÛ"ÑÁ.„€@¦Ó>ùÛ"ÑÁ.„€@¦Ó>ùÛ"ÑÁ.„€@ž4|í‘hsÁ.„€@ž4|í‘hsÁ.„€@ž4|í‘hsÁ.„€@ž4|í‘hsÁ.„€@ž4|í‘hsÁ.„€@ž4|í‘hsÁ.„€@8Bò䎊Á.„>¤µÜÆ@3|í‘hrÁ.„M‰ûçm@2çKƧïžÁ.„QnÙ‡@2!:’£SÁ.„NÜC,¥@2!:’£SÁ.„NÜC,¥@2!:’£SÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøX@«8Æ$Ý/@«8Ƨï²@«8Æ$Ý/@«8ÂuåÌñ@«8Æ$Ý/@«8¿(ñµ@«8Æ$Ý/@«8ÂpŸY’@«8Æ$Ý/@«8À²]Q™@«8Æ$Ý/@«8Â__Ä@”b¾vÈ´@”b¾vÈ´@”b¾vÈ´@”b?DÓ@”b¾vÈ´@”b ­šªf@”b¾vÈ´@”b‹Éô@”b¾vÈ´@”b I×@”b¾vÈ´@”b.*ÙÛ@5%öý!ÿ.@5&ÊŒƒž@2é‡+ @2ê¶ËœÀ¦@2¹7KƧð@2¾g1b@2œàu÷@2EPC6@2œàu÷@2TT•‰ä@2œàu÷@2gKo™è?}õ¬#„­?´œCé`?’Ö HCP@?ŒQõôð‚?‘¶,92ïd?’ª¡‰öÇ[?}—êíW?’Ô}^Ãö?‘…kÜ«?mÈuÁ¤‚?‘ª¶ô´yÝ?’)ÉlÕv?„Æxëk?ºc%ù™¶?‡RǶh¼?…ßÂ2ÇÞP?ŠJÝtѧ'?ŠüÛ‘ÖD×@@,@(@&@8@8?ð?ð?ð?ð?ð?ð¿S˜æS8¿JåÈh?3Y Ægm?4¦xü^ê©@«8Ãð—Àã@”b™¯Z¼?RïÜCu¥#?T¶TÄ ;6?±Ã)bZ£Ð?´iN#l˜*@Ÿfª Õ±®@Y@«ß;dZ@«\(õÄ@«ß;dZ@«·éù@«ß;dZ@«Ž.±Ä3@«ß;dZ@«ŠÀƒn@«ß;dZ@«Œ~($ @«ß;dZ@«ŠôðØE@ªz Ä›¥ã@ªz"Ðå`B@ªz Ä›¥ã@ªz A‰7L@ªz Ä›¥ã@ªzžš@ªz Ä›¥ã@ªz!:’£@ªz Ä›¥ã@ªz" Iº^@ªz Ä›¥ã@ªz!×Ûô‡@6#g ù l@6#n.±Ä3@1ã÷ÎÙ‡@1ä“t¼j@1K"Ðå`B@1K¹Œ~($@0Þ«6z‘@0ߟ¾vÉ@0Þ«6z‘@0ß—$tS@0Þ«6z‘@0ÞÙ‡+?€‚ñêã ?­hX™*?‘,fŸCô6?=]. ?‘héø†|?‘£.'É?ˆÿÀ)T¿Æ?“6SÇ{Ó?’¤šÜI«?‘§›ßÉîj?üÓqÔNŠ?‘êey°úà?‚ÂÌ]å?=d­úå?„ò—TËÄ?ƒR¨º“JÞ?‡ã ËÄž?‡&üòI@@@@@&@,?ð?ð?ð?ð?ð?ð¿N°†Óà¿+äªß0?4Ø–íq!#?#•ˆ#Æ\@«ŒÓO‘~@ªz"B 7?U÷þ‘%á´?CL÷¨a}?´}Õ'UõW?‡õ@Tí³@Ÿib‚]ÑÏ@Z@£ Ü(õÂ@£ àîõ@£ Ü(õÂ@£ ßXÍÈ·@£ Ü(õÂ@£ ÓB Êø@£ Ü(õÂ@£ äñx²ó@£ Ü(õÂ@£ Îj09W@£ Ü(õÂ@£ Ò ¿Sþ@˜t +=p£×@˜t÷ÎÙ@˜t +=p£×@˜súÈ@˜t +=p£×@˜søB5µW@˜t +=p£×@˜t%bWö5@˜t +=p£×@˜t(VnÈs@˜t +=p£×@˜t3_E’Ð@5wâ‚@·€@5o H˜@@1õãS÷ÎÙ@1ûÒâ=7@1U`A‰7L@1^+&ŸŽ`@1s&Á½¥@1‚¼‘"Ø @1s&Á½¥@1vÈl·@1s&Á½¥@1s‚õ꣊?~Ov_Ø­«?‘2§Çøoæ?’v=§Ó ?••ÃÖŸ"?¹ p)¶/?˜ó«mÃ?|Ñb×¶@?“"HS?°?’¨g-ÿÿ?™z7ä{û‚?–Uœ:0Û?–bc畯?‚»³hËk?–\Í‘¨iŸ?‡CÿE•¿R?—¢&àûÒ?žÆ”‰¬ôq?žï=L"Ûú@@$@ @$@:@7?ð?ð?ð?ð?ð?ð¿etk þ?hqxÂS?[ra±¨?.Ï’Sƒ/“@£ Ü›@˜tí&A‚?y ”¯?MT¿NrÿI?õZÞ[ƒÇ? 6D(õ²—@ŸdKWkÓF@[@¥X“t¼j@¥X^5?}@¥X“t¼j@¥XKŠ¢ˆ@¥X“t¼j@¥XYÅÙ@¥X“t¼j@¥X¨õõ5@¥X“t¼j@¥X&ÉF@¥X“t¼j@¥X  Ñ.@šš†$Ý/@šš{)² +K@šš†$Ý/@ššŠŒå†@šš†$Ý/@šš‹A"›C@šš†$Ý/@šš‡ôøO•@šš†$Ý/@ššˆÂHa¼@šš†$Ý/@šš‚Q³‹ @7 xFÜ@7Ù”ÿb@1xr° Äœ@1vúu¬@0,j~ùÛ#@0*Ø#l‹^@/#¼ÓZ…ˆ@/©ó±÷@/#¼ÓZ…ˆ@/BA9¾@/#¼ÓZ…ˆ@/ßÜR1q?ƒ_ÿKt˜à?ZUëb?‘9DËç{p?‹ØÆ|€Ñ?‘;—Û [?‘¡­NpI?ƒÔo"ë–?’;ƒùÐêq?¥0ýùŠ?s8”±š?‘ Àþ­?¶Ôò“‰?Ÿ£èyÑ¿?zb›¥¼H?ƒ~m»²Ó?‚ödt?ÍE?†ÙBÖz6ò?‡$°²¾M@@*@&@(@7@8?ð?ð?ð?ð?ð?ð¿OÙÈ?Rûé:p?óD.XV?Dz˜/"×Ë@¥Xý„@ššüõÃ?6¹_T.n?dç¤@ñ‡"?uã î1iÌ?ÑcHù¥Ž@Ÿi ,Žn@\@ ß¶È´9XÁ.„€@ ß¶È´9X@ ß’-V@ ß¶È´9X@ ßtzáG®@ ß¶È´9X@ ßGÈK]Ì@ ß¶È´9X@ ß1‚©“ @ ß¶È´9X@ ßW1Å@¨WOß;Á.„€@¨WOß;@¨x“t¼j@¨WOß;@¨JÚ¹õ[@¨WOß;@¨$Ý/ @¨WOß;@¨H´9X@¨WOß;@¨iÇy¦µ@9‰Î_oÒÁ.„>¤µÜÆ@4Ùº^5?}@4ÔЩ*0@4ï²-@3þ_oÒ @3¨è§æ›@3°-à @3¨è§æ›@3ßb¶®}W@3¨è§æ›@3Õ%F +¦L@8J¨?žè~Œ7* ?°ÛÉÀG?¼ š¥"d?É:NŠð¥?¨¦>Í›Ä@8J¨?«öQÅŽe?²Ã&EÖ«?¹B¥ŽS”?È"ÂÌÑ>?Åáe¤IÌ@8p÷?«Fˆ¶ƒïu?°k pÄ“*?¹›LÎD?¿¨TS§?¾ÙJ½‚*@@@@$@ ?ð?ð?ð?ð?ðøøøøøøøøøøøø]@¬yXbN@¬e¡ÊÀƒ@¬yXbN@¬v8†YJ@¬yXbN@¬zû~‘@¬yXbN@¬y0¾ í@¬yXbN@¬wÎÙ‡@¬yXbN@¬xl"h +@§­,1&é@§­7Oß;@§­,1&é@§­*0U2a@§­,1&é@§­%¸Që@§­,1&é@§­*™0¾@§­,1&é@§­)Q‚©“@§­,1&é@§­)Ô•+@8Ù*0U2b@8Ò° Ä›¦@3° Ä›¦@3ȆYJôñ@3.ùÛ"Ðæ@34›¥ãSø@2‘Þi­BÄ@2•zxl"h@2‘Þi­BÄ@2—RT`ªe@2‘Þi­BÄ@2–R½<6?|öOÿÝ?›ŽÊ–SS?““¶”ÿµb? Ð ÷Ž ?•Ô¦?n¸?–4<‘7?žŒÝÙ›P?i½ÆÝCv?–¬HðºDŸ?‘ÿŒŒhÚ?“â¹Í[Óh?“‚í?eBZ?³äøG—â?˜¼qlPg?–í +e˜›ð?…p=¤J‰?‰©OO ¨?ŠÐ+`È“@@@@@*@*?ð?ð?ð?ð?ð?ð?s¤,,x¿cù*‘¨?S±Øµ* j?RJ•â¤@¬t.õoº@§­,“¢?x<´•Op¼?k· /FÖ#?íw(+¤Î?ÊsOš¿<@Ÿl²\»õ@^@¥Ÿƒn˜@¥žäZ¬@¥Ÿƒn˜@¥Ÿ§æœ@¥Ÿƒn˜@¥žöR½<5@¥Ÿƒn˜@¥žøQë…@¥Ÿƒn˜@¥žû"Ðå`@¥Ÿƒn˜@¥žùrGE9@¤dSt¼j@¤dcn—@¤dSt¼j@¤dK'»1@¤dSt¼j@¤dDêJŒ@¤dSt¼j@¤d=ó¶E£@¤dSt¼j@¤d;/ìV×@¤dSt¼j@¤d-í(Œç@9*0U2b@9ohÜ@3õãS÷ÎÙ@3èDЩ*@3¬j~ùÛ#@3›'»/ì@2𖻘Çã@2ã× +=p¤@2𖻘Çã@2æ$Ý/ @2𖻘Çã@2Ðÿ—$tT?Ÿ‹‘+-/Ü?©•È–¿g?©ÖÌC³1?š+‚¦Ðfñ?–²p+æ0P?«´½H k?š•§q!U?—·f;m?£õ81þ9Ì?¡"JîÃ!?ªËÆŠâqf?®LT1ˆQo?Á[Nä­ð?˜‹”âó?¡D(¸ÿôn?žÞG¤¸'ö?•ó¬>¨ûÝ?¾æX2ú@@@@@@,@&?ð?ð?ð?ð?ð?ð?u… ˆ¿‡ Ìõà€?Uö8y4z?Zw^à†Ûu@¥žó¯5Å +@¤dEíAèÄ?qb/D®ß?yQCqݳ?Æ +¼¥?ÉVÉ]$4@Ÿi7,7™@_@¢¿k…¸R@¢¿Òñ©ü@¢¿k…¸R@¢ÀsMj@¢¿k…¸R@¢¿û"Ðå`@¢¿k…¸R@¢À\(÷@¢¿k…¸RÁ.„€@¢¿k…¸R@¢À Ñ·X@¬j~ùÛ#@¬!ÊÀƒ@¬j~ùÛ#@¬ñë…¸@¬j~ùÛ#@¬WKƧñ@¬j~ùÛ#@¬A$Ý0@¬j~ùÛ#Á.„€@¬j~ùÛ#@¬•Y³Ð|@8‘|ÚQ@8LÚQÎ@4)‡+ @3‰b¶®}@3—ï²-@3 ô!-w@2«xFÜ^@2B&€IR@2«xFÜ^Á.„NÜC,¥@2«xFÜ^@2‚@·€5?£È‰·akû?ÙBÖ}Ï;º?¿>‘9B¨¬?É —§˜È@8Iç?ÝriÉc,?¹&ä"¾ü°?ÑyñCNúë?¢äEÊ»¶)?®Ç4U¤oé@8S?ÙAv"_+S?‘MM….äí?¸G^¿¿~ê?¢æbÂfïU?°%Ùñ¥÷)@8 Ø?ÉJ6Л@@@@@*?ð?ð?ð?ð?ðøøøøøøøøøøøø`@¬;dZ¬@¬8î‘(‚@¬;dZ¬@¬T4M@¬;dZ¬@¬=#èú@¬;dZ¬@¬:S±/d@¬;dZ¬@¬; +Y±L@“/Þ5?|î@“0¸Qì@“/Þ5?|î@“/Þ)c”4@“/Þ5?|î@“/×j¿Â¹@“/Þ5?|î@“/ܵÊgº@“/Þ5?|î@“/ݳ,~@“/Þ5?|î@“/ÞÓz÷@8åöý!ÿ.@8óJ€¿ß¦@3?|í‘h@3S’å`ù@2A‰7KÇ@2Nrª‰¨@1._oÒ @1.š,fX@1._oÒ @1.­ó@m;@1._oÒ @1.Ó Àï?‡ôCbyV?dc:Ná?‘Š‹^‚·Ô?‹ég.ù$W?‘j eéI?‘iÊê›Ø?•$Ý/?’6¸íc?‘ +¯rmH_?fìÃ|w?‘,á4„¯N?±xˆ¬4½?ª³‚úŸ³Š?ŒðãSïê?‚¯Êyˆj?ƒ=¿¼{:é?‡Yû#AÚ2?†ôS˜Í¨@@"@"@"@5@4?ð?ð?ð?ð?ð?ð?? %q°¿mÀhå®?@j”·læ?\ÄzÍQ[ê@¬:ôϺ@“/æwœó?`(‘q¥³Ø?wçY;m?Â2[7¡Õï?ì‡^"{Qý@Ÿl‘~·ÞÆ@a@£ +=p£×@£ +~ùÛ#@£ +=p£×@£ ¹Œ~(@£ +=p£×@£ Ƨïž@£ +=p£×@£ L˜_@£ +=p£×@£ ÁTɆ@£ +=p£×@£ Dg8@§ñV‡+ @§ñVÈ´9X@§ñV‡+ @§ñVÕϪÎ@§ñV‡+ @§ñVâëC@§ñV‡+ @§ñWXâe@§ñV‡+ @§ñWXâ@§ñV‡+ @§ñW>«6z@1-¥œàv@1-‘hr°!@,²-V@,–»˜È@+›dZ¬@+›‹¬q ³@*Aò×t@*O „M@*Aò×t@*\(õÂ@*Aò×t@*\(õÂ?É^³Dw'?Úþþ³?‘Ûü†Nã?‹ª½¨ª8v?íOþtà?´âµÇ>¬?ÐbV‡,?’ +‰¸Ì?r¼Jsž?/ò×ÈZø?Ó%y*£=?X78›š?€rTg€½?Œ­·Ž~('?‚uÞ@>N ?‚â‡~ûÉ\?†ˆ#.÷?†ŠúЀ>(@@@@@,@,?ð?ð?ð?ð?ð?ð¿U²æëË¿ ü ?Bǽ^NK½??<]¤Ä @£ +Bˆ&æ@§ñW<`Óé?Rd8Ó¿ý?!CŽGtØé?  + :œ?:%M¸@ŸsaÍä¢@b@¤ù•$Ý@¤÷àA‰7L@¤ù•$Ý@¤ùjW§†Â@¤ù•$Ý@¤ùo4Ö¡b@¤ù•$Ý@¤ùdoi@¤ù•$ÝÁ.„€@¤ù•$ÝÁ.„€@¥¥áÊÀƒ@¥©›¥ãT@¥¥áÊÀƒ@¥¦fÏAò@¥¥áÊÀƒ@¥¥ôã¼Ó[@¥¥áÊÀƒ@¥¦tSŽò@¥¥áÊÀƒÁ.„€@¥¥áÊÀƒÁ.„€@9m¥œàv@6/hÛ‹¬@5+¥ãS÷Ï@5ˆÎp:û@4 ²-V@4Á½¥@3s&Á½¥@3Oƒ{J#:@3s&Á½¥Á.„NÜC,¥@3s&Á½¥Á.„NÜC,¥?ð°–Ž]?µC\ PçÙ?š6õÂ\9?ŽÝ¡uÒ(r@8Iç@8Ù?ð°–Ž]?¥q¾Ó¡h?•Q²rz¢ù?Ò–‚h±n@8S@8û—?ð*wjs—?¬µöÂ};?ŸÛð°|°?ˆã1µR@8 Ø@8 Ø?ð@@@?ð?ð?ð?ðøøøøøøøøøøøøc@ªÂ9XbNÁ.„€@ªÂ9XbNÁ.„€@ªÂ9XbNÁ.„€@ªÂ9XbNÁ.„€@ªÂ9XbNÁ.„€@ªÂ9XbNÁ.„€@”« 7KƨÁ.„€@”« 7KƨÁ.„€@”« 7KƨÁ.„€@”« 7KƨÁ.„€@”« 7KƨÁ.„€@”« 7KƨÁ.„€@9™*0U2bÁ.„>¤µÜÆ@43S÷ÎÙÁ.„M‰ûçm@34“t¼jÁ.„QnÙ‡@2°–»˜ÇãÁ.„NÜC,¥@2°–»˜ÇãÁ.„NÜC,¥@2°–»˜ÇãÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøød@§Äã× +=q@§ÄÞ5?|ï@§Äã× +=q@§Äáä÷eý@§Äã× +=q@§ÄèÎp:ü@§Äã× +=q@§ÄçæšÔ@§Äã× +=q@§ÄàªdÂù@§Äã× +=q@§ÄÜ64@¡*öE¡ÊÁ@¡*ï\(õÃ@¡*öE¡ÊÁ@¡*õY³Ð~@¡*öE¡ÊÁ@¡*ý—ö+k@¡*öE¡ÊÁ@¡*ô¼j~ú@¡*öE¡ÊÁ@¡*÷Ûô‡ý@¡*öE¡ÊÁ@¡*ë’:)Ç@7žHè§æ@7 ©*0U@3œIº^5?@3œC,¥zx@2éÛ"Ðå`@2ê¹õY³Ñ@2Š0U2a|@2ˆÇâ‚@¸@2Š0U2a|@2‰Î_oÒ@2Š0U2a|@2„!-w2?…ÅBðrç?’«p~v]Ù?’5 µ¿$„?”oý]Þ‡&?’êÔÒ?•zWmoàí?”¼íÒh??’u¦ieõ–?‘K54;­?’¸Ý8h\?“h_N’%¿?˜ÓI­ÂÅ?“²pÅâ-Ý?‘ÓP!¹p?‚Ö˜>µDá?gt»Hö…?ŒXk-¯‚7?·♊N@@@@@&@(?ð?ð?ð?ð?ð?ð?4€ˆR?:WîÀ?Rô¤¨¼ý?]6è̳ Æ@§Äà3Lá@¡*ò°ä‹*?t?ÿï%i¿?y(ïßî:?æ1zü7¶Õ?çÔ™>È@ŸjòËt³Í@e@©Šò° Äœ@©Šõ^Eš@©Šò° Äœ@©ŠÐ‘ƒ*@©Šò° Äœ@©ŠÆ;Û G@©Šò° Äœ@©ŠÖü«@©Šò° Äœ@©Šº,l“n@©Šò° Äœ@©Š¼‚)]@•iõÂ\)@•iï²-@•iõÂ\)@•jy®ÁÇ@•iõÂ\)@•j£amO@•iõÂ\)@•jì-Ö@•iõÂ\)@•jd¦47 @•iõÂ\)@•jEï6À¹@7 ]cˆe”@7 (Wú[D@3ã÷ÎÙ‡@3²’ ™+@3~ùÛ"Ñ@2äð%ŽpT@1Ê0U2a|@1§#‚$@1Ê0U2a|@1§]QùÀû@1Ê0U2a|@1¥uO2?‹ÖFÔÜÚ$?“»ö†Ñ¤h?¦›©ú)³?ŽÖ£‚æ?­¯TŸê-?¨’ŠƒàÎ?‚n—OßÁE@®é+çúó®@žM…õÆõ?PþR+ƒˆ?vn?£JÝ?‰z&6é?Ë=¾ÇpE(@ŸlXÖ°B@h@­±üí‘hsÁ.„€@­±üí‘hs@­±âœwšk@­±üí‘hs@­±å‡“ݘ@­±üí‘hs@­±×Á½¥@­±üí‘hs@­±Ù k¹‹@­±üí‘hs@­±ä÷eý‹@¢5?|îÁ.„€@¢5?|î@¢P-à @¢5?|î@¢4•*™@¢5?|î@¢ZîcŠ@¢5?|î@¢UÂ\)@¢5?|î@¢^ƒä%®@;ð4mÅÖ8Á.„>¤µÜÆ@6«¥ãS÷Ï@6— ù k¹@5²-V@5}ÌcñA @5 ¿±[W?@4ê–»™@5 ¿±[W?@5$Ý0@5 ¿±[W?@5¡ÊÀƒ@8J¨?ÁŸ ¡`?¯ü¦NJL?¨üà«W¦ü?¦Wì07q³?³ŒTAøÉ'@8J¨?ÁI`—Þ?¯µ5®Ë~B?¤á¾Õ·L?ª*-@sØ3?­87ÞŽ@8p÷?®ØùüSY~?¯Vê 2Ó?£ßÊihÂ?¨ƒÑ0¹C?°¬¹57¶ø@@@@(@*?ð?ð?ð?ð?ðøøøøøøøøøøøøi@¤Ç[¥ãSø@¤Ç[¥ãSø@¤Ç[¥ãSø@¤Ç]!ÿ.I@¤Ç[¥ãSø@¤Ç]/Ÿ¾@¤Ç[¥ãSø@¤Ç]cˆe–@¤Ç[¥ãSø@¤ÇZ–½@¤Ç[¥ãSø@¤ÇYõY³Ð@¡+ º^5?@¡+ ûçl‹@¡+ º^5?@¡+ ÞÒ@¡+ º^5?@¡+ÕfÏB@¡+ º^5?@¡+ ù l@¡+ º^5?@¡+â‚@¸@¡+ º^5?@¡+â‚@¸@3 xFÜ@3%®æ1ø@/ö“t¼@/ôýó¶E¡@.ãn—P@.â@·€4n@-ÑÑN;Í6@-ÐU2a|@-ÑÑN;Í6@-ÒGE8ï5@-ÑÑN;Í6@-ÒGE8ï5?|¬Çëý ?ï1ïºÅ?‘\H{gX ?‹ª½¨ª8v?‘ ·èf?ïˆ6ÏJ?|öOÿÝ?’5CàQ?†[‘'Í?Níú¾?üÓqÔNŠ?oÌ‘'ýT?‚n—8‹8?ŒÂ§dß±?‚¯­Ù¤Á¶?‚ù8 ±^?†£îž«î?†©b/bJö@@@@@,@(?ð?ð?ð?ð?ð?ð¿+_}¿@®›W€?7°r©{ø@?"ºŸ£!@¤Ç[jÔÚÔ@¡+ÊÓÞÁ?W‡8ò7ÿ?BméW¯v—?¾}Ýðo??‘Žãçör@Ÿfìü®(‰@j@ª·bMÒò@ª·‘ë…¸@ª·bMÒò@ª·!-w2@ª·bMÒò@ª·n;Í5§@ª·bMÒò@ª·ÈK]@ª·bMÒò@ª·e‡“Ý—@ª·bMÒò@ª·cä%®æ@©qú^5?}@©rÊÀƒ@©qú^5?}@©qË]Ìcñ@©qú^5?}@©qÌ"h Ö@©qú^5?}@©q¢¶®}V@©qú^5?}@©q‡E8ï6@©qú^5?}@©qñ&éxÕ@7įO „M@7ÅÜÆ?@3ÜIº^5?@3ÊŒL˜_@3"-V@3-ã¼ÓZ@23&Á½¥@2QÎ`@23&Á½¥@1òGE8ï5@23&Á½¥@2Ä›¥ãT?îŠõ ?¦®ñd¥?”zùeߎ?¢)[fI?Ã-;‰ ö?¾ ×….ž?˜ž^ƒÿ*ˆ?¤x‰\F®p?—>4ôgŒ9?šªy/2v‘?Ñ0ÂÑ-+þ?°í|:Âã? zkê 3U?ºòã‹3E?¢N²üß0?°FE%ñŽ5?­…zéµl¦?»h¶ðcÓ—@@@@@*@$?ð?ð?ð?ð?ð?ð¿Rˆ´Œ¿”›\Ž@?xÎ‘Š’ƒ?ŽÛõG|2@ª·’ë¸%6@©qÑ |?’è +õJ—ƒ?¨ #ˆwyÅ?ôÕGFz@-_njÏ@Ÿd@žb~¡@k@¨_›¥ãT@¨_›¥ãT@¨_›¥ãT@¨_œàu@¨_›¥ãT@¨_Щ*@¨_›¥ãT@¨_zxl#@¨_›¥ãT@¨_ŽŠqÞ@¨_›¥ãT@¨_ˆe”¯@®ƒ`Ä›¥ã@®ƒ`Ä›¥ã@®ƒ`Ä›¥ã@®ƒa@N¦@®ƒ`Ä›¥ã@®ƒ`ëíúD@®ƒ`Ä›¥ã@®ƒa [À@®ƒ`Ä›¥ã@®ƒ`ù k¹@®ƒ`Ä›¥ã@®ƒa-w1‘@0Hè§ç@0;Í5¨Y@-ÍV“@-Í:’£@-‘&éxÔþ@-å`A‰8@-87´¢3œ@-8 -à @-87´¢3œ@-87´¢3œ@-87´¢3œ@-8}¿H?É^žQ5P‚?Òç{íj?‘1f_¨Ï÷?‹ÑqÔ@vÿ?éDEâ©×?¾ƒìÈÁ?ÐbMçê_x?’#maЀ?ÀpMºÅ?>\‰å‘?ÔÒ@úˆ‘?hï,ðà?€cPßQª?Œµ3‰;šÏ?‚yî8Á$?‚ð'ã:ÂÝ?†©b/bJö?†špk Y@@@@@@"?ð?ð?ð?ð?ð?ð¿JuÃÁ®>ñI(K@?Î8Þ1Ÿå?u‚ϹÛ@¨_-_@®ƒaŸ.Ú?,£Š¯Tð?+óc?TÂ݆ÿÔ?5ì‚­iÙ@Ÿs7êŠæ@l@ U¬‹C•@ U¬Iº^5@ U¬‹C•@ U€K@ßF@ U¬‹C•@ U®“„Þ1@ U¬‹C•@ U­z|rß@ U¬‹C•@ Uœ×Æ*@ U¬‹C•@ Uš#²-@£Fë Iº@£FëÆ§ïŸ@£Fë Iº@£FìèEÔ©@£Fë Iº@£FäsŒ[€@£Fë Iº@£Fá­[@£Fë Iº@£Fé) „Y@£Fë Iº@£Fä­¨ï@4Ç>«6z@4ÇAÕ¥S @2 Iº^5@2È^»õ@1v§ï²-@1f²?êb@1L¿±[W?@18ß }Ê´@1L¿±[W?@1>¶bš/7@1L¿±[W?@1>ÒRˆï?|Ñb×¶@?“u$ðM?‘)Ì~Ï™?”ôOŸ”?š±U'-æ·?š)CÊ"f ?|Ñb×¶@?“VÔ)oÆ?‘P3b东?‘Fq©<?œ×Fj.¤%?•õ7nŸÚ??‚ë‘/ˆ$?±æ‘’Ñ?ƒ'0À­ÅS?‡þVLéSÖ?–: Ê?Œ«ü=–B-@@(@@(@9@8?ð?ð?ð?ð?ð?ð¿gþ¥f§¿]€AŸ?V ÛÛpÊ?O>×ù N@ U§iá’@£Fè*Ø8¨?t•l7y=•?lzQ³M+Þ?ìÛ84ða¯?àQRF#@ŸdK›…†@m@­AG®záÁ.„€@­AG®zá@­A,ÌÌÌÍ@­AG®zá@­AIº^5@@­AG®zá@­AIxÔýõ@­AG®zá@­AVÈ´9X@­AG®zá@­A9‡+@®ÿzáG®Á.„€@®ÿzáG®@®ÿ$Ý@®ÿzáG®@®ÿE¡ÊÁ@®ÿzáG®@®ÿŸ¾v@®ÿzáG®@®ÿfÏAò@®ÿzáG®@®ÿ‡+@7|ÚQÁ.„>¤µÜÆ@2° Ä›¦@2¯HË’:@1ä¼j~ùÛ@1àoiDg8@1G ù kº@1E¡ÊÀƒ@1G ù kº@1?.Hè§@1G ù kº@1@©*0V@8J¨?”ŸÍFÒ?“â÷!N?‹¯eU5?­;â¬"?”º²¶;@8J¨?’‡Iš÷?‘;¨™,?RLnj?”¡S•Ÿ¯?X78›š@8p÷?Fƒ¿p7€?…íŽ(þÇ?„XïWÉò~?‹&¸ê±fÂ?ˆ¾þúWZ‹@@@@@?ð?ð?ð?ð?ðøøøøøøøøøøøøn@¢°>ùÛ"ÑÁ.„€@¢°>ùÛ"ÑÁ.„€@¢°>ùÛ"ÑÁ.„€@¢°>ùÛ"ÑÁ.„€@¢°>ùÛ"ÑÁ.„€@¢°>ùÛ"ÑÁ.„€@–‹E¡ÊÀƒÁ.„€@–‹E¡ÊÀƒÁ.„€@–‹E¡ÊÀƒÁ.„€@–‹E¡ÊÀƒÁ.„€@–‹E¡ÊÀƒÁ.„€@–‹E¡ÊÀƒÁ.„€@9T xFÜÁ.„>¤µÜÆ@4Ìí‘hr°Á.„M‰ûçm@46§ï²-Á.„QnÙ‡@3n_oÒ Á.„NÜC,¥@3n_oÒ Á.„NÜC,¥@3n_oÒ Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøo@¥Ì¸Që…@¥Ìñ©ûç@¥Ì¸Që…@¥Ì¬1&@¥Ì¸Që…@¥Í"u%F @¥Ì¸Që…@¥ÌŸQì@¥Ì¸Që…@¥ÌtÖ¡aå@¥Ì¸Që…@¥Ìk6z‘@ ¯Oß;@ ¯)º^5?@ ¯Oß;@ ±ÊW§‡@ ¯Oß;@ ±÷Oß:@ ¯Oß;@ °ÊdÂø8@ ¯Oß;@ °…+ÓÃa@ ¯Oß;@ °(Û‹¬q@8šÔ,<Ÿ@8_Ø­« @3’ Iº^5@3*Ú¹õY´@2Æ“t¼@2[¬q ²–@1ãÉîËû@1šáG®{@1ãÉîËû@1—$tSŽô@1ãÉîËû@1“ê³g ú?±ÿ}ö?Ó»‹KLý?Î$£»íVL?ØM©. j ?ÂRßqJ ?õ"- +`Ï?™Îd0RÜ?1ð'7éÃ?‘ô 5Y?e¾DQ„Q?…àú^À?Œ²ÅŒÕ6?ƒ<Õp?‚â>¹S?†Óß +tõ?‡L8õASÎ@@@@@ @?ð?ð?ð?ð?ð?ð?@6Åt?0F+/p??&&”¡ º?òþ÷ò^\@¢XÍ4Øð@®ÿŽ×sæ?^ËÃÿ†¯?:º^#®9s?Ç1ågtƒÉ?ÐO%¨@ŸgVϯ µ@q@­èr° Å@­ðbMÒò@­èr° Å@­¾i­BÄ@­èr° Å@­ÌÌÌÌÍ@­èr° Å@­¾š@­èr° Å@­®Ù‡+@­èr° Å@­VR½<6@¦v2-V@¦v+…¸R@¦v2-V@¦v>Åm\û@¦v2-V@¦v7Oß;@¦v2-V@¦v9è>B[@¦v2-V@¦vFÁ½¥@¦v2-V@¦vU*™1@8°4mÅÖ8@8³33334@4#÷ÎÙ‡@4åÉã@3$¼j~ùÛ@3L/ƒ{J@2YŒ~($ @2CÝ—ö+k@2YŒ~($ @2?åÉä@2YŒ~($ @2¸ºÇ?žŒÝÙ›P?¯¡ãƒù?¢X…^ +”1?¢ºã‘~]¦?¬Üd‰ùY5?τˎ^í*?•²»UbB2? ùëङm?¢©cÝä›?¡-ÙóÊÊ´?¨ÃXÜDo|?ÉòàMpù?»ªÔ+Ê„?¡RHÖ¿b?šº(Æ(í?• Cm¨k?—ã ËÄž?¿A·¬çøÈ@@@@@,@$?ð?ð?ð?ð?ð?𿒽̇|@?yÊÆàu?f^o-ýoß?Fˆ>zàØ@­ÍeáðÖ@¦v77ºi?õˆŒÓ‹“?bñh$qéú?Ô\¿GDÔã?Ÿã.ÆqTX@ŸdÐBãØ@r@¥ÿ^¸Që…@¥ÿa$Ý/@¥ÿ^¸Që…@¥ÿ~5?|î@¥ÿ^¸Që…@¥ÿhõÂ[@¥ÿ^¸Që…@¥ÿl‹C•@¥ÿ^¸Që…@¥ÿHXy=Ù@¥ÿ^¸Që…@¥ÿZu%F@¯ „“t¼@¯ ‡l‹C–@¯ „“t¼@¯ ˜Ôýó¶@¯ „“t¼@¯ ³¶E¡Ì@¯ „“t¼@¯ •$Ý@¯ „“t¼@¯ l‹C•@¯ „“t¼@¯ pØDÐ@6Ô xFÜ@6Ô¯O „M@4©‡+ @4”êJŒ@4_²-V@4ZÚ¹õY´@3¦YJôðØ@3¨šu%F@3¦YJôðØ@3²œwškQ@3¦YJôðØ@3µÜÆ??1·†Æjñ?’u~•Ñ?”¦¢œŒÕ?–:²çäÍÍ?’š'†­`í?¥ùÏ@Ì?„F/·ÿP5?¢›â¾Ð'µ?“Z—H|:?¡Ü;çåAˆ?™Ÿ»6“? !™¡kz7?àäœú?Å{¿Ž<º?­~¶Ùµx?¶ºK5ÚAø?– +0gspè? hˆB°š@@@@@@?ð?ð?ð?ð?ð?ð¿l»®f°¿sM›£?k½R.PÃ?gX0ÔÏQ’@¥ÿ[UœHJ@¯ yÔÏ?‰êþÀÒ ?†5ÃkÌÇÁ@ÎÓ`…‡@ÓjF°`@ŸdB1ÛŸú@s@®§xQë…@®§på`A‰@®§xQë…@®§zx$¡@®§xQë…@®§w×j@®§xQë…@®§~U»U{@®§xQë…@®§x±MV@®§xQë…@®§uôûè`@—Ÿhr° Å@—Ÿg=Eªb@—Ÿhr° Å@—Ÿhý8$ @—Ÿhr° Å@—Ÿd”î!.@—Ÿhr° Å@—Ÿcb/ø¼@—Ÿhr° Å@—Ÿeœš³ž@—Ÿhr° Å@—Ÿg²PU‚@8ò䎊@7øKƒ¶8¬@3° Ä›¦@3ÆÐÉŸÀŽ@3)Û"Ðå`@3-K÷uÞ@2\ÚQÎ@2azÃF’ù@2\ÚQÎ@2]²B'Án@2\ÚQÎ@2_ +ö¿ +a?‚n—Oß«_¤?øq¤éyi?§@Ûꘄ@ŸhÑì–ÿ˜@t@¥™ÿ|í‘h@¥šƒn™@¥™ÿ|í‘h@¥™ök)ž@¥™ÿ|í‘h@¥™öñ„3@¥™ÿ|í‘h@¥™÷2§@¥™ý¥ðCÊ@›YûŸj?q{?uª˜M?lÿö½ÉÄ{?츜iy?â·ûâb?“@Ÿf ñ:`;@u@¢CŒIº^5@¢C€ƒn™@¢CŒIº^5@¢C‰Dg8@¢CŒIº^5@¢Cwéùs@¢CŒIº^5@¢Cpÿ—$t@¢CŒIº^5@¢C|wškQ@¢CŒIº^5@¢C¦s×Ü@¦×Që…¸@¦×D›¥ãT@¦×Që…¸@¦×JôðØ@¦×Që…¸@¦×<„µÜÇ@¦×Që…¸@¦× Oß;d@¦×Që…¸@¦×”¼j~ú@¦×Që…¸@¦×Wéùr@7ëµsê´@7å?|í‘h@4)‡+ @4‡1Å@36§ï²-@3kŸU›=@2úÔ,<ží@3z¬Ùè>C@2úÔ,<ží@3ÞcŠ @2úÔ,<ží@3õµsê³h?…ÅBðrç?¿:§A{oŽ?´%=O>Ëæ?ºŠòTÓÁ?ÍéU(Ÿ”?Î^ó§?îŠõ ?Ř¡õ„×Ê?µëªI\8S?ÈÖqÆ‘÷?Ĉ25ƒÇ?Ñ×R9yŒ?£´<×?°hˆB°™?Ãïóˆ5?ÜS~iX?Éë| ¸’?ÕŒžÆì@@@@@*@,?ð?ð?ð?ð?ð?ð¿AÝ} ?‚&˜÷Ü@?q5½ëCÊ{?†yƒnSF@¢Cò#Gv@¦×L-Û¬?ç–ŸÛe¢?˜ç'4DÞ?ÇS÷ÓwÜ?î³*?¦ñÆ@Ÿ]sœY@v@¯”ûçl‹D@¯”õ$Ý@¯”ûçl‹D@¯”þU"!@¯”ûçl‹D@¯”ý!"¿f@¯”ûçl‹D@¯”üþ3}Ž@¯”ûçl‹D@¯”ýí @¯”ûçl‹D@¯”ý0,@™°ËƧïž@™°½+\µ:@™°ËƧïž@™°Ò¯Sü$@™°ËƧïž@™°Õ:Ïân@™°ËƧïž@™°Ñ¾Ö_˜@™°ËƧïž@™°Ò‚“@™°ËƧïž@™°ØhTÂ@8ÉÎ_oÒ@8¸­*c@3ÎÙ‡+@3u)Hl@2ÒÐå`A‰@2Ò¢{c«@1Öý!ÿ.I@1Õb²aZ@1Öý!ÿ.I@1ÕÕUvEÈ@1Öý!ÿ.I@1Ô÷ŒŒÌ?©–Rª—´?ð5 S±?“ }øà?ŒRšúÐË?‘ yòï…nS?’U2ÙLÍ?¢.EZ±?¹Ã4zs?†(Æcf{?–¢Ã­bÖ?‘£"ÃIì¬?—¦GåEP@@@@@4@(?ð?ð?ð?ð?ð?ð?\—-D?WDo²ñ€?Sõ·J{^?gÍ=O#@¦2 mÑm@“¬—;°à?n [™!Ñh?{°ëŒ¨5¹?Ò¿S«÷U?æ'ÿ¹¹y«@Ÿpº~ D@y@¨aÊÀƒ@¨lÌÌÌÎ@¨aÊÀƒ@¨Sœ¾ß@¨aÊÀƒ@¨MjO@¨aÊÀƒ@¨Tã¼ÓZ@¨aÊÀƒ@¨T‡ü¹$@¨aÊÀƒ@¨WsüO@¥õã× +=q@¥õçï²-@¥õã× +=q@¥õð Ä›¦@¥õã× +=q@¥õ×§†Â'@¥õã× +=q@¥õÜàuöý@¥õã× +=q@¥õá°‰ '@¥õã× +=q@¥õåðoiD@7¿–»˜È@7ÃMjP@4}‘hr° @4~ŠqÞi­@3y7KƧð@3yÎ_oÒ@2¨è§æ›@2«~ÿ—%@2¨è§æ›@2«µsê´@2¨è§æ›@2«dZ¬ ?˜ž^ƒÿ*ˆ?›¤<½ÎTß?–™@^Ú¢?Uóú*˜?”§RXFÖf?–҄έ¿o? Å{¿Ž<º?––ïFHÇN?“5ñ µ?Ä…à6 +æ?–å·ÑfWâ?˜Œ» +?ŒÊ­#г^?”kcÿä©Ú?³&Ô,ô?‹8¹ª?Œx[‡:©?‘„1ôñÂß@@@@@,@*?ð?ð?ð?ð?ð?ð¿q§®¯€?1KÆ_H?dºïÓiWà?a'3i…Û×@¨X©Û–¥@¥õá ÷m‘?~ïZÜNh©?x8¾˜¶?ôSÖ(lN?âŒ]C&@Ÿmv<{@z@¡óËC•@¡óÍV@¡óËC•@¡óÚ3ÕN@¡óËC•@¡óâ´0«¦@¡óËC•@¡óài9,@¡óËC•@¡óâÐå`B@¡óËC•@¡óêmw3@“® Iº^@“®SâÖ#@“® Iº^@“­óø¢ñE@“® Iº^@“®rp¡Û@“® Iº^@“­ÙoêO@“® Iº^@“­ÞÑAŸ@“® Iº^@“­Õ‘Ôl(@504mÅÖ8@50m¹ùîÐ@2³S÷ÎÙ@2´ª,4\@3²-V@38i:X…@2G ù kº@2bÈ®@ã@2G ù kº@2N~ááO@2G ù kº@2Sçw¦ ?|Ñb×¶@?“áÍw&?¨óuÌG?ŒF¹lQ‡ô?•#uÃ^´?šñivÌ€?~Ov_Ø­«?“¦èX×?«'_ñóT?žÁÉXÌšý?•J ì'Å—?™· +®]?‚„.™tsÂ?tvÙ•îÐ?ˆ?C Mà:?’N~ÞOÁ?¡TuÃ?™N»lT)ž@@ @@@5@4?ð?ð?ð?ð?ð?ð?y6És€¿r·\ÄþÀ?Ee\lþäî?FÒg ¥­|@¡óØ´ª´@“­ïãGJ?býÓy5Û?e¼ÆfPàp?ÐMØ1á?Ï$‚úrf@Ÿda’WD‡@{@ž•?|í‘h@ž—éûçlŒ@ž•?|í‘h@ž•éÄ)¼m@ž•?|í‘h@ž•ÉF7¹P@ž•?|í‘h@ž”Þj€Q@ž•?|í‘h@ž”Ó4ŒÔ<@ž•?|í‘h@ž”ãbÄ‚r@¤ÛáÊÀƒ@¤Ý€ƒ(\ì@¤ÛáÊÀƒ@¤Üö…®Â@¤ÛáÊÀƒ@¤Ü9u+Ú@¤ÛáÊÀƒ@¤ÛºöÄî@¤ÛáÊÀƒ@¤ÛÁLJñ@¤ÛáÊÀƒ@¤Û»ïý´F@8m¥œàv@8Ã7]P@3f‡+ J@3d1ÚØï@2nùÛ"Ðæ@2k6 Ç@2O „M@2ŒXQÞ›@2O „M@2Ÿ#ÿ ~@2O „M@2¡Tª(¬ö?ìÎ:Å}–?¤uË !a?žb­´‰bÔ?š¸”ò7“‰?°ï¤ N,?¥hqcéDë?ñOqyŸŒ!? Íß#Êû?¢ä¸#²ˆ?›ÈsÖ‚’i?®îLŸ ª…¥¤?[ñ®;b@@"@"@(@9@7?ð?ð?ð?ð?ð?ð¿ƒôaò´¿™¨¶¦]€?j ïõÏ/ó?€<°9İ@ ¤oéYÚb@©·kÚBõü?†ä=åÀFœ?™ÍÝ.—9@Ø"pm‚ƒ@(dV»Q+R@Ÿa¶K[šG@}@ ìÎV“Á.„€@ ìÎV“Á.„€@ ìÎV“Á.„€@ ìÎV“Á.„€@ ìÎV“Á.„€@ ìÎV“Á.„€@šæ;dZ¬Á.„€@šæ;dZ¬Á.„€@šæ;dZ¬Á.„€@šæ;dZ¬Á.„€@šæ;dZ¬Á.„€@šæ;dZ¬Á.„€@5ºqÞi­CÁ.„>¤µÜÆ@3|í‘hrÁ.„M‰ûçm@2M²-VÁ.„QnÙ‡@1ÏO „MÁ.„NÜC,¥@1ÏO „MÁ.„NÜC,¥@1ÏO „MÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø~@©Å3¶E¡Ë@©Å3÷ÎÙ@©Å3¶E¡Ë@©Å/²-@©Å3¶E¡Ë@©Å,cñA @©Å3¶E¡Ë@©ÅLÌÌÌÍ@©Å3¶E¡Ë@©ÅU*™1@©Å3¶E¡Ë@©Å\PHð@£ùwKƧð@£ùw +=p¤@£ùwKƧð@£ùw§†Â'@£ùwKƧð@£ù…o@£ùwKƧð@£ù™=Ùc@£ùwKƧð@£ù§l‹C–@£ùwKƧð@£ù¥+ÓÃa@3‡>«6z@3‡RT`ªd@05ãS÷ÎÙ@0._oÒ @.ΗOß<@.À quŽ@.æL/ƒ{K@.Áaä÷eþ@.æL/ƒ{K@.ÃS&Â@.æL/ƒ{K@.ÅF +¦L0?|öOÿÝ?àIü'?£À¹¿1?¬&¾L=§‰?¹¤¡X‚ ?¯|ÚxÎ?|öOÿÝ?’¼MÒÀ7F?£éIõ¹?³ŸÛ-w?´:±»S÷?¬¬û‹¾5?‚|׿pY?àQdËЈ?†ž5ðqë?Šc^î½)Ô?°4\ɵ?•™ï ufÝ@@@@@,@,?ð?ð?ð?ð?ð?ð?Sô½Ã€?…%ÿ,€?7~Ï"-Ð?Qc^zçW@©Å;«žÌ§@£ù€t¼ ?Höé]€ ?b0dó!^Z?„>!jô–?¸‡Ä7 ¸f@Ÿ]þ a@@¥ÔzáG®@¥Ë Iº@¥ÔzáG®@¥Û/ìVÖ@¥ÔzáG®@¥Õ$Ý@¥ÔzáG®@¥Ù³Ð|…@¥ÔzáG®@¥Õ '»@¥ÔzáG®@¥Ôýó¶F@¥“:^5?}@¥“["Ðå_@¥“:^5?}@¥“:…‡“Þ@¥“:^5?}@¥“7ö+jè@¥“:^5?}@¥“=¿HË@¥“:^5?}@¥“9õY³Ð@¥“:^5?}@¥“9Û"Ðå@7Û¹Œ~($@7ÈDЩ*@2Ùº^5?}@2×KƧï@2M²-V@2LÙè>B[@1œàu÷@1MÒñ©ü@1œàu÷@1•$Ý@1œàu÷@1-V?£G± *Ç‚?”•µ³S_?“u*y?Wø0 ¥?’FL{öó?×°ë*–w?¿Ëg1Ñ?”ï©ÛÉ?–AuøG1?Ë{4æk?’.<ù?ƒÁþGEÛ?»ªÔ+Ê„?ŽátÖÁ»‡?“„*0x)Æ?†‡ °´¥`?ˆ©{2¡Î?‰_uñšó@@@@@,@?ð?ð?ð?ð?ð?ð?/w2õø¿bä'ãîà?_ñ€÷ª9!?VáÔ¨|¤’@¥ÖO#)@¥“;òtI³?t"©’<K?gþ9øY?ã¼ëM¬Â?ÄúAûzÕ>@ŸrŒŒ™ó@€@Ÿ(£× +=q@Ÿ(¼Þ3pª@Ÿ(£× +=qÁ.„€@Ÿ(£× +=qÁ.„€@Ÿ(£× +=qÁ.„€@Ÿ(£× +=qÁ.„€@Ÿ(£× +=qÁ.„€@¥ÑZ¬1@¥Ñm­sªŒ@¥ÑZ¬1Á.„€@¥ÑZ¬1Á.„€@¥ÑZ¬1Á.„€@¥ÑZ¬1Á.„€@¥ÑZ¬1Á.„€@8÷â‚@·€@8õ·¿­%@4{ Iº^Á.„M‰ûçm@3{Ƨï²Á.„QnÙ‡@3 ù kºÁ.„NÜC,¥@3 ù kºÁ.„NÜC,¥@3 ù kºÁ.„NÜC,¥?Œ`àËQã”@8#˜@8¾:@8 >+@8Iç@8Ù?™ÌÜ%=( @8Î÷@8i§@8Å@8S@8û—?¡P:òÔ” @8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@¦­‘ë…¸@¦­bMÒó@¦­‘ë…¸@¦­•?|í’@¦­‘ë…¸@¦­˜_ö”@¦­‘ë…¸@¦­§†Â&@¦­‘ë…¸@¦­”`ªdÃ@¦­‘ë…¸@¦­”¼@¨‡ñ&éxÕ@¨‡îV“@¨‡ñ&éxÕ@¨‡×ÎÙ‡@¨‡ñ&éxÕ@¨‡Èe”¯O@¨‡ñ&éxÕ@¨‡éá°‰¡@¨‡ñ&éxÕ@¨‡ëíúCþ@¨‡ñ&éxÕ@¨‡ì1&é@6¯O „M@6S÷ÎÙ@3ã÷ÎÙ‡@3ç»/ìVÖ@3@å`A‰7@3?\(õÂ@2ºÔ,<ží@2³MjP@2ºÔ,<ží@2ºJŒL™@2ºÔ,<ží@2º0U2a|?}Ñ¿ž,?•tæïá,•?”µ^CjD²?™ÿ " ž?˜/˜Jë­? ^?:à ?„F/·ÿP5?“?xr¢I?“1Ú©! ?‘ˆ¶´M=?˜Uý"ÕT?˜æØ.ô?aäŽ +Ø?›9WTêW?˜Ð™Q$Ò? +ƒBä³?”¦”x£b?– ¼µ(0Q@@@@@*@*?ð?ð?ð?ð?ð?ð?a?ìz"¿H=­ ?bã„ÕžþÏ?=J^L§-@¦­•ÕlÍ@¨‡ì–ö)ò?ô3=àp?[_?sÁ +ñ@Æ¡#ôÔ?¶§„G)M:@ŸeÔdKF@‚@¡:fffff@¡:o\(õÃ@¡:fffffÁ.„€@¡:fffffÁ.„€@¡:fffffÁ.„€@¡:fffffÁ.„€@¡:fffffÁ.„€@¨¥5Â\)@¨¥JÀƒp@¨¥5Â\)Á.„€@¨¥5Â\)Á.„€@¨¥5Â\)Á.„€@¨¥5Â\)Á.„€@¨¥5Â\)Á.„€@8uS&Á¾@8k¹Œ~($@5sS÷ÎÙÁ.„M‰ûçm@4Ÿ²-VÁ.„QnÙ‡@4«xFÜ^Á.„NÜC,¥@4«xFÜ^Á.„NÜC,¥@4«xFÜ^Á.„NÜC,¥?’Óusÿ\Ã@8#˜@8¾:@8 >+@8Iç@8Ù?}Ñ¿ž,@8Î÷@8i§@8Å@8S@8û—?µõ@6¯¢[@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøƒ@ ~ùÛ"Ñ@ bÐå`B@ ~ùÛ"Ñ@Ÿÿ¶Ôaì”@ ~ùÛ"Ñ@Ÿþüt>b@ ~ùÛ"Ñ@Ÿþ°~'‹@ ~ùÛ"Ñ@ŸþÒ¹2/@ ~ùÛ"Ñ@Ÿþùã?@¥ð±©ûçm@¥ð¶%·~@¥ð±©ûçm@¥ñÑæFìL@¥ð±©ûçm@¥ñŒ¡™ÿÕ@¥ð±©ûçm@¥ñßQ²Q@¥ð±©ûçm@¥òoz‹@¥ð±©ûçm@¥ò6´‚' +@7cg ù l@7IJÜ~RÌ@4|í‘hr@3`¡Äm0z@4lj~ùÛ#@2êAÊ Ýœ@3Öý!ÿ.I@2\ GÑÉB@3Öý!ÿ.I@2l¾<9@3Öý!ÿ.I@2~ C±Ál?…Hùg ?¤òe= ü@? ŒV|Ôx{?ޝ5ÜIz?»os{pø?³ž¼µ]Þœ?œÆæXÆd?›Ï5h–$¦?¥"_lû^¢?–·²òa£?±m\=ÖŒ(?°æèh~?¤g|®v¬?ŸE#±&¥Ú?¨'Ì Å?¦„GÛ‹õ³?°h¨ËÂ>?²´Mj¯¶@@(@$@"@9@5?ð?ð?ð?ð?ð?ð¿ÑKO¡n¬?¸<³J`?¥6|»?×n})žA@ 5‰w–À@¥ñˆ¼êø?ÁÐ÷~Hå?©¶> ö‰@t/–€~5@1ÿŸvfò@Ÿeº£.q»@„@­j¤Z¬@­j£n—@­j¤Z¬@­j™Î_p@­j¤Z¬@­j©º^5?@­j¤Z¬@­j‚¶®}V@­j¤Z¬@­jÇE8ï5@­j¤Z¬Á.„€@ª<@@ª<6“u@ª<@@ª<'Ë)_@ª<@@ª<‡+@ª<@@ª<]Ùb·@ª<@@ª`Ï?r¼Jsž?9ÍÇ~FÀ?çêÑHcÇ?e¾DQ„Q?‚¯­Ù¤Áµ?Œ¯þuõí?‚¸“Îè ø?‚ð'ã:ÂÝ?†žóB» “?†špk Y@@@@@,@,?ð?ð?ð?ð?ð?ð¿-:Ó‚À>Ó˜¢?'…šg&œ?ìµ@4dß@¯½< Q@¦Nc›¹&L?GhÇ}…?$GHØ`rÂ?¹ØŸ)æ?U[~@¯sW@ŸfðÞKèH@‡@¬…KƧïžÁ.„€@¬…KƧïž@¬…K'»0@¬…KƧïž@¬…J=p£×@¬…KƧïž@¬…Që…¸@¬…KƧïž@¬…H1&éy@¬…KƧïž@¬…NzáH@Ÿè²-VÁ.„€@Ÿè²-V@Ÿèí(Œè@Ÿè²-V@Ÿè„êJŒ@Ÿè²-V@Ÿè®Ëû´@Ÿè²-V@ŸèTÉ…ð@Ÿè²-V@Ÿè‘ÑN;Í@9¨†YJôñÁ.„>¤µÜÆ@4£÷ÎÙ‡@4¢‚@·€4@3d¼j~ùÛ@3e '»0@3YŒ~($ @3Q·Xâ@3YŒ~($ @3XõÂ\*@3YŒ~($ @3XK]Ìcò@8J¨?–[‹Å ?“ÔÃÆWž?‹¹GüÞõ?–(Ži´™^?™òc¾ÿ:e@8J¨?•íÌÖf?˜Y ¶E–X?“¶Ì¶Öj”?• ¸°R¨?™rÊêÚ×þ@8p÷?•vÇC šŽ?”ù‰ÚÞ©)?‹Bºá­?˜§zy?”Ò +.Ô•@@@@&@*?ð?ð?ð?ð?ðøøøøøøøøøøøøˆ@¨²/Ÿ¾wÁ.„€@¨²/Ÿ¾w@¨²/O „M@¨²/Ÿ¾w@¨²$%®æ2@¨²/Ÿ¾w@¨².±Ä2Ë@¨²/Ÿ¾w@¨²5 rË—@¨²/Ÿ¾w@¨²-_>ü@œHA‰7KÇÁ.„€@œHA‰7KÇ@œH_;dZ@œHA‰7KÇ@œHS&Á¾@œHA‰7KÇ@œHGü¹#¤@œHA‰7KÇ@œHQHýŸÓ@œHA‰7KÇ@œHLÏ'³Ž@9IÎ_oÒÁ.„>¤µÜÆ@4Ô›¥ãSø@4Èšu%F@3b-V@3V$Ý/ @2Åœàu÷@2œwškQ@2Åœàu÷@2ºà@xK˜@2Åœàu÷@2ÅjOR@8J¨?¡'‹Q›p?¡fÛ6Eí?‘ƒZ)Àˆ?“.¶Ã>{ +?•ô)‡è,Û@8J¨?¢ÉÓDý?”Ÿ•/ø]Ÿ?“mŸqa?•U­g¨ã$?‘M/)Üa@8p÷?¬Cʯ–ÕÝ?•(¯(Wø?‡9 ƒ–’”?£×LǺŸ?ä–Âü7@@@@.@&?ð?ð?ð?ð?ðøøøøøøøøøøøø‰@®½·ÎÙ‡@®½¸“t¼j@®½·ÎÙ‡@®½Åðµ{@®½·ÎÙ‡@®½Å ƒ@®½·ÎÙ‡@®½¼´ék@®½·ÎÙ‡@®½»­‘3û@®½·ÎÙ‡@®½ºÇXaï@“ïå`A‰7@“ï刕ú@“ïå`A‰7@“ïö`5+æ@“ïå`A‰7@“ïùV=O¼@“ïå`A‰7@“ïì͉N@“ïå`A‰7@“ðX¤v©@“ïå`A‰7@“ïüÜ”¹@5­¥œàv@5¬L˜_@2° Ä›¦@2¸,=²¢Ï@2F“t¼@2?ŠU×ø@1«xFÜ^@1ž6ß#íý@1«xFÜ^@1¢v|Ý2@1«xFÜ^@1¢¸Œ7'(?|Ñb×¶@?•δ¸k?’mH…Šÿ?Ô6óúÑ?“u"Å0X?’–8ƒt_?}x—™ºD A?^êI³e$}?¶ÈPcŽW?ÀÝ8ä€I@ŸeCV[YH@Š@¡$öE¡ÊÁ@¡$ý?þ¦@¡$öE¡ÊÁ@¡$òþ »¦@¡$öE¡ÊÁ@¡$ê–hZ@¡$öE¡ÊÁ@¡$ÞÓ‘@¡$öE¡ÊÁ@¡$íÇ93@¡$öE¡ÊÁ@¡$ìîõLo@•êë…¸R@•êï@h›@•êë…¸R@•êéCøƒ@•êë…¸R@•êÔÍ šF@•êë…¸R@•ëHõva@•êë…¸R@•ëEb´§@•êë…¸R@•ëUËè.U@6=:’£@6/›ˆ*@2E?|í‘h@28J¦<1q@1’Ðå`A‰@1|j@¯¯Z@1J0U2a|@18v +‚èÃ@1J0U2a|@17Mà}U@1J0U2a|@18ܦËf2?DÛ5C‹?™ªm°:S?—(îÕ‚A?“¥aG€¤S?›ñ½´îÌ?•r¹beEZ?‚5Ù‹?›íÆbÜZ*?¡$ñÑ( ?˜K[À×?’zd¡ŠHô?@'ÃP?”VOhŸZ?“¯øgýR§?“1݉?$õ?¸ÝXTl?‘j*Ó«l?–’¾“"5@@.@,@*@<@<?ð?ð?ð?ð?ð?ð¿sábA?„‘²Ö`@?eB`Õéªè?\“‰ØÃ@¡$ò¾åP8@•ë?{‰È?„ŸÌô̶ï?{rŽíòÏ@ zQ÷8?÷BW·óë@Ÿe©$@˜"^5?|î@˜"Trƒœ`@8 Î_oÒ@8 Xêš@2}‘hr° @2v85ö³˜@1Ãt¼j~ú@1½&Á\œ1@1cÉîËû@1]Ò8@1cÉîËû@1[Wåë(@1cÉîËû@1Z¡«öÄ?˜—"ÝÚá?”÷dþâ¤L?’y"Bã´x?‘GQæèA?”ʦøŸ­ý?–D;§6k?®ÌÅþõ¤À?”ÞèÁu3?“g²’Pl?“Xy™b2«?•Àø·D+?–¯³F%]?.ªzu?޶$š‡ã?ƒ­àX[”Ì?ƒ1ž^ô€g?‰ó­v׿å?ŽÎPcÄWÕ@@*@(@*@<@;?ð?ð?ð?ð?ð?ð?ó–h`¿` ·Å]?4r$þƒä?HÑ¥Já"â@¦grÈ c@˜"XvVè?PšÃ¯ºÎ?]RŠKh¼é?“öÀvõÀB?¦£ Žäèd@Ÿožf}Þ@Œ@¢ Iº^@¢¾ùÛ"Ñ@¢ Iº^@¢²¢ÒÎ]@¢ Iº^@¢¦(§{,@¢ Iº^@¢¹Ji;@¢ Iº^@¢«c¹@¢ Iº^@¢«¨ Ö @”ÕdZ¬@”ÕiP€'@”ÕdZ¬@”ÕPKUÇ?@”ÕdZ¬@”ÔþB“¸@”ÕdZ¬@”ÕGúÒi@”ÕdZ¬@”Õ$“'¦ñ@”ÕdZ¬@”Õ<ˆ +¢@6>«6z@6a®pÁ4@3Ù‡+@3 ÷_Óm@2ûƧï²@2Ó_ïK:ï@2Þi­BÄ@2Çgü³?@2Þi­BÄ@2|ât£¢@2Þi­BÄ@1ût+/¸?~ì“?ÕÒJ?ž*pÌ@¾"?ªÓ vWa?Œ×6åÌ?˜nƒ¢Š¸?œ®•Ùû ³?}x—™ ?’;â9Ö?“;+Ìt"\?“ÍÌËdÏ@@,@*@@<@:?ð?ð?ð?ð?ð?ð¿må48 ¿v¼ +ü?O‹n[IY?R«üŸ>ãî@¢¸Æø+‰@”ÕTàÑöH?kl\£ú÷ó?pú3Í;M“?ÞóEèwS?äajX˜@Ÿdl¿‰„@@©XöE¡ÊÁ@©Xö‡+ @©XöE¡ÊÁ@©Xö»˜Çã@©XöE¡ÊÁ@©Xö»˜Çã@©XöE¡ÊÁ@©X÷KƧð@©XöE¡ÊÁ@©Xõ$Ý@©XöE¡ÊÁ@©Xö4ê@©Ò?|í‘h@©Ò?|í‘h@©Ò?|í‘h@©Ò@4mÅÖ@©Ò?|í‘h@©Ò@N¤¨Á@©Ò?|í‘h@©Ò?Š Þ@©Ò?|í‘h@©Ò@uöý"@©Ò?|í‘h@©Ò?|í‘h@4Ç>«6z@4Ç$tSŽô@0J^5?|î@0J^5?|î@0`A‰7L@0`A‰7L@.ð‰ 'RU@.ðU2a|@.ð‰ 'RU@.ð:û~‘@.ð‰ 'RU@.ð¸ºÇ?|öOÿÝ?¾‰máÚ?‘7[ä­?‹ÑqÔ@vÿ?òǹíT­?ë+ʦÜ_?|¬Çëý ?’NÛˆV(?ß‹…&?;ß $Þû?ß’ºèh!?›ªU3Îp?‚nâwfÿ?ŒÆò/¢äÍ?‚íWçé…?‚ð'ã:ÂÝ?†©b/bJö?†¼Š˜L¥÷@@@@@(@,?ð?ð?ð?ð?ð?ð¿ûÕñ?3…À?&c£Ê»HØ?̬re±\@©Xöl¤éè@©Ò?«»ÑÆ?F;ñušÌ?::Ĺv>?šÃ9Õ‘²‡?Øý¦¶X\@Ÿfëð7Ì@Ž@©ŒÂ\(ö@©ŒÅ¡ÊÀƒ@©ŒÂ\(ö@©ŒÁaä÷f@©ŒÂ\(ö@©ŒÁä÷eþ@©ŒÂ\(ö@©ŒÃS&@©ŒÂ\(ö@©ŒÁ½¥@©ŒÂ\(ö@©ŒÂMÒñª@ ËC•@ Ê=p£×@ ËC•@ Ê~ùÛ#@ ËC•@ ÌIº^5@ ËC•@ ËC,¥@ ËC•@ ËjçÕg@ ËC•@ ˹Œ~(@6:qÞi­C@68õÂ\)@2° Ä›¦@2ä%®æ2@197KƧð@1:Ô,<ží@0Œ¿±[W?@0Žp:û~‘@0Œ¿±[W?@0Ž_oÒ @0Œ¿±[W?@0Žšv?ð°–Ž]?¾‰máÚ?‘šÕU#?ŒÖ +Äȱ?‘5ø gµÒ?ô Î]V?ð°–Ž]?’‡Iš÷?|™,Ž!?°‹Œ÷€?‘ ·èf?¦QÎð\ã?ð*wjs—?ŒÛÏ·+?„A'Š_^?„ mŠmsi?‡L8õASÎ?‡2[síç?ð@@@@(@&?ð?ð?ð?ð?ð?ð¿8­-„?1eÔçÒ?2´$DNô€>íà:^ÆÄ‰@©ŒÂgs4Æ@ Ëg™i?A˘°ulñ>û¾boïÞ?}R ÄÎGÐ>ðXšÌÐaE@Ÿs˜åxa÷@@¤Û3¶E¡Ë@¤Û6E¡ÊÁ@¤Û3¶E¡ËÁ.„€@¤Û3¶E¡ËÁ.„€@¤Û3¶E¡ËÁ.„€@¤Û3¶E¡ËÁ.„€@¤Û3¶E¡ËÁ.„€@¦må`A‰@¦m~¸Që„@¦må`A‰Á.„€@¦må`A‰Á.„€@¦må`A‰Á.„€@¦må`A‰Á.„€@¦må`A‰Á.„€@7uS&Á¾@7P°ò{²þ@5}‘hr° Á.„M‰ûçm@5å`A‰7Á.„QnÙ‡@4 ù kºÁ.„NÜC,¥@4 ù kºÁ.„NÜC,¥@4 ù kºÁ.„NÜC,¥?™™™™™™š@8#˜@8¾:@8 >+@8Iç@8Ù?‡YÍ_@8Î÷@8i§@8Å@8S@8û—?„‘Za¹P@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@«ØŠ=p£×@«ØŠ=p£×@«ØŠ=p£×@«Ø‡ÈK]Í@«ØŠ=p£×@«ØÊÀƒ@«ØŠ=p£×@«Ø{šu@«ØŠ=p£×@«Øö”F@«ØŠ=p£×@«Ø$Ý/@¡`ÎÙ‡+@¡`ÎÙ‡+@¡`ÎÙ‡+@¡`Î.±Ä3@¡`ÎÙ‡+@¡`ÎzáI@¡`ÎÙ‡+@¡`Ïß;dY@¡`ÎÙ‡+@¡`Щ*0@¡`ÎÙ‡+@¡`Í«ŸU›@3 ]cˆe”@3 j~ùÛ#@/²-V@/ Iº^5?@.rn—Oß@.múCþ\’@.£¼ÓZ…ˆ@.›˜Çâ‚B@.£¼ÓZ…ˆ@.š^5?|î@.£¼ÓZ…ˆ@.›‹¬q ³?|¬Çëý ?Qdöÿô¼?“ï~í"?™ ­:>Co?–Õ“z‰öì?”º²¶;?|¬Çëý ?’›ÈÖÝ?ö”iåó¨?’.p»Cþ?’Bg4ð3f?ó‹P=´?‚oÁÆÜ§ö?Œáò¯ž¼ù?‚á²Olºý?„ªÎZ´?ˆ¾þúWZ‹?Š*ÊÔQãú@@@@@,@*?ð?ð?ð?ð?ð?ð¿d­GŸ’¾ã Π?Or^•ñwÆ?/“oQ*’@«Ø„ÛgÙ†@¡`Îï q\?or<ÐÚõ?O|ß˺ƒî?â êÀ©k}?©!QÈGÝ€@Ÿe” “׺@‘@«lýó¶E¢@«lþvÈ´9@«lýó¶E¢@«mƒn—@«lýó¶E¢@«m Iº^@«lýó¶E¢@«lüí‘hs@«lýó¶E¢@«lÿò䎋@«lýó¶E¢@«m[À8@«(‡+ @«(È´9X@«(‡+ @«(A [¿@«(‡+ @«(PHï@«(‡+ @«(àuöü@«(‡+ @«("Ðå`@«(‡+ @«(=Ùd@4(†YJôñ@4(*™0¾@2c÷ÎÙ‡@2a$Ý/@2t“t¼j@2q&éxÔþ@1ÔmÅÖ8†@1Ò•éá°Š@1ÔmÅÖ8†@1ÑG®zâ@1ÔmÅÖ8†@1Ñ×Ûô‡ý?€‚ñêã ?Eˆ‡ðó‹?”^RžpX?‹û…†_?‘¿ +Óñ›?‘¦ µÚ?|öOÿÝ?’j%ÓRa?”ß<ö¥?‘¼Øzé±ï?’êJ>áý?±—'¶Ü+?‚|׿pY?Œ¾»•lŽ?† + Ðló]?†3_¾ˆ?‰©OO ¨?„å;m7.@@@@@,@?ð?ð?ð?ð?ð?ð?0/''p?L%$ H?7:½·^û?A2@ßG]@«lþ»È—Ã@«(ùHŸ?VíæuR"?aÒ‚Xì Ñ?¹r»zÆ)?͵³áÔÛÒ@Ÿg0Õì¸ý@’@Ÿ¢NÙ‡+@Ÿ¢=Ó¼Ú°@Ÿ¢NÙ‡+Á.„€@Ÿ¢NÙ‡+Á.„€@Ÿ¢NÙ‡+Á.„€@Ÿ¢NÙ‡+Á.„€@Ÿ¢NÙ‡+Á.„€@Zž¸Që…@ZT‹@Zž¸Që…Á.„€@Zž¸Që…Á.„€@Zž¸Që…Á.„€@Zž¸Që…Á.„€@Zž¸Që…Á.„€@7>«6z@7»ÝA)ú@4«¥ãS÷ÏÁ.„M‰ûçm@4ˆ“t¼jÁ.„QnÙ‡@40–»˜ÇãÁ.„NÜC,¥@40–»˜ÇãÁ.„NÜC,¥@40–»˜ÇãÁ.„NÜC,¥?Œ1†YPÓ@8#˜@8¾:@8 >+@8Iç@8Ù?’ëà€l@8Î÷@8i§@8Å@8S@8û—?„D%aFy¼@8 * @8p÷@8¶@8 Ø@8 Ø@ ?ðøøøøøøøøøøøø“@¯aÏ\(õÃ@¯aΗOß@¯aÏ\(õÃ@¯aÑÎ^@¯aÏ\(õÃ@¯aÓMj@¯aÏ\(õÃ@¯aÔ¯O ƒ@¯aÏ\(õÃ@¯aÏ·éø@¯aÏ\(õÃ@¯aϪ͞…@«{¸Qì@«{Ðå`B@«{¸Qì@«{\(ö@«{¸Qì@«{×Ûôˆ@«{¸Qì@«{s×Ý@«{¸Qì@«{ÕfÏB@«{¸Qì@«{$ x@5í¥œàv@5çKƧï@2Ù‡+@2úCþ\’@1€å`A‰7@1[W>«6@1 +0U2a|@1“t¼j@1 +0U2a|@1y=Ùc@1 +0U2a|@1 ÞÑ·?|öOÿÝ?•ìspîî?’¿êvG¨½?Wø0 ¥?’š'†­`í?’?=ÆþÎò?„F/·ÿP5?’4 "ëžØ?‘ŽütÅÒ(?‡@Cvì×?‘ØèOÍ ì?‘õe\Š«p?„+£QKø?R©i»èi?ƒÆ×q„nð?„l¯¸‰ŒÎ?‡<û¡71?ˆCns¥ @@@@@,@,?ð?ð?ð?ð?ð?ð?Bø{.¸?SÜl?G “% L ?ï "äýì@¯aÐWºˆ@«{–=o"?h)Þt•y?=âyªz÷ð?ÚÛ¥]žS?€è£ Ž@ŸgØëÖ.I@”@«šô¼j~úÁ.„€@«šô¼j~ú@«šþ…àN@«šô¼j~ú@«šú^¬§Î@«šô¼j~ú@«›@Ðq·å@«šô¼j~ú@«›Ú @«šô¼j~ú@«›w½F@•+33333Á.„€@•+33333@•+q€cá@•+33333@•*–©ƒ@•+33333@•++¨äÜ)@•+33333@•, +#S‹`@•+33333@•,"Z$îû@7zqÞi­CÁ.„>¤µÜÆ@45ãS÷ÎÙ@3éîÒ7º@3ƒt¼j~ú@3:ÎÅ>…$@3L¿±[W?@2ûîMöÕÜ@3L¿±[W?@2û/Øu Í@3L¿±[W?@3â«Þ'@8J¨?¯‹Îˆé—`?¥IþQ‘§?¼wÇoÔê?Å¥ƒ·æ I?ÅÌ8Þ^Üž@8J¨?«´b–?¡˜d á?¼ÝМçõ®?Ãã`HlµØ?Æ \eeb@8p÷?¤`I›ÔM‡?–ñĺêñ?›Š•Hö¼X?¢iuòx_?  +6²[@&@"@,@<@;?ð?ð?ð?ð?ðøøøøøøøøøøøø•@¯¯ÌIº^5@¯¯ËƧïž@¯¯ÌIº^5@¯¯Ñ ²•ê@¯¯ÌIº^5@¯¯Ï–»˜@¯¯ÌIº^5@¯¯Ç“Ý—ö@¯¯ÌIº^5@¯¯ÅýŠÚº@¯¯ÌIº^5@¯¯Çï²-@©AÃn—@©AÂÐå`C@©AÃn—@©A Iº^@©AÃn—@©A½p£× +@©AÃn—@©AÂMÒñ«@©AÃn—@©AºÔ,<Ÿ@©AÃn—@©A¾¸Që†@5[¹Œ~($@5\„µÜÆ>@3uãS÷ÎÙ@3oÒòäŽ@3ï²-@3•$Ý@2YŒ~($ @2Týó¶E¢@2YŒ~($ @2UY³Ð|…@2YŒ~($ @2V€IQƒ?|¬Çëý ?—µ”öŒqÒ?•œ‘æ¦M?‘4ãM^?”Å¥ÒB–W?“¢¾_ÂÜ?|öOÿÝ?”ŸÚ²t©?”_й@’?’ƾ| ?“úaû]?’]Ðgµ0 +?‡9Â@0wæ?œ‘z¥æ?† + Ðló]?…p=¤J‰?‹¹ÇlŒ?‘4hÆpÉ„@@@@@(@*?ð?ð?ð?ð?ð?ð¿RrÓä¿RsÌ(?4 âdB˜?B ø» @¯¯ÉgÁÜv@©AÀ”ë¸?Sµ€"³9÷?bRéÝ%?±àz©©£?ÍÁ“Xi€ö@ŸeÛT‹Åè@–@¨Ó)ûçl‹@¨Ó)º^5?@¨Ó)ûçl‹@¨Ó€IS@¨Ó)ûçl‹@¨ÓµÜÆ?@¨Ó)ûçl‹@¨Óø7´¢@¨Ó)ûçl‹Á.„€@¨Ó)ûçl‹Á.„€@¡&×Oß;@¡&Ù‡+@¡&×Oß;@¡&ÙXbN@¡&×Oß;@¡&È´9X@¡&×Oß;@¡&Ð Ä›¥@¡&×Oß;Á.„€@¡&×Oß;Á.„€@7kµsê´@7oÅo@2«¥ãS÷Ï@2ŽùÛ"Ðå@1Æ“t¼@1¨7´¢3œ@1«xFÜ^@1pò{²þÆ@1«xFÜ^Á.„NÜC,¥@1«xFÜ^Á.„NÜC,¥?”¼íÒh??¢Û)Qé?—ø}òg?œÒø.D‡@8Iç@8Ù?¡ÅꯨŠT?¡i‹ë&6?”_й@’?± Çÿm +È@8S@8û—?†' +³}÷B?²É5†±ó?‹’Ú[ßõ?¡‹ áQ´?@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøø—@­”µÂ\)@­”¶È´9X@­”µÂ\)@­”´ã¼Ó[@­”µÂ\)@­”»=ÈK@­”µÂ\)@­”·$tS@­”µÂ\)@­”´¼j~ú@­”µÂ\)@­”²ÊW§‡@¦I7Kƨ@¦H´9X@¦I7Kƨ@¦?—$tT@¦I7Kƨ@¦;=ÈL@¦I7Kƨ@¦?!-w2@¦I7Kƨ@¦=æšÔ-@¦I7Kƨ@¦A-w1‘@5–»˜È@5—$tS@30Ä›¥ãT@3/²-V@3t¼j~ú@3|„µÜÆ@2¡:’£S@2™­BÃÉï@2¡:’£S@2›ŸU›=@2¡:’£S@2à qv?€‚ñêã ?’ñ¼õì?‘âTÀÊS“?U›=ÈK?”#?3ÆÂƒ?“DŽèw–?€‚ñêã ?”2¦ww ?‘%gÇ¿µ?Y‡…—Ø?—?—³’sB?’Âuþ!BÖ?‚s@ˆaÚ?†¡HŸÊç?„W;RT?‰hS—p]Ð?‘˜M\ÿŠ?°4\ɵ@@@@@*@&?ð?ð?ð?ð?ð?ð¿Bã)}@¿amo|?4µÊ'Ä ?H+,‰9ý…@­”µÂƒ®0@¦Cª:kV?TwÀ[Ãr?h.²@âD?±b< +a1?ÖëûX¡ „@Ÿf¿U@û@˜@©biûçl‹Á.„€@©biûçl‹Á.„€@©biûçl‹Á.„€@©biûçl‹Á.„€@©biûçl‹Á.„€@©biûçl‹Á.„€@£ï¼j~ùÛÁ.„€@£ï¼j~ùÛÁ.„€@£ï¼j~ùÛÁ.„€@£ï¼j~ùÛÁ.„€@£ï¼j~ùÛÁ.„€@£ï¼j~ùÛÁ.„€@9>«6zÁ.„>¤µÜÆ@4xr° ÄœÁ.„M‰ûçm@3ÝV”Á.„QnÙ‡@2æYJôðØÁ.„NÜC,¥@2æYJôðØÁ.„NÜC,¥@2æYJôðØÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø™@¡Ã4¼j~ú@¡Ã4záG®@¡Ã4¼j~ú@¡Ã6E¡ÊÁ@¡Ã4¼j~ú@¡Ã6Ov`@¡Ã4¼j~ú@¡Ã6E¡ÊÂ@¡Ã4¼j~ú@¡Ã3g ù @¡Ã4¼j~ú@¡Ã3×Ûõ@«­V@«­V@«­V@«­jO@«­V@«¬cñA!@«­V@«®_oÒ@«­V@«¯ƒ{J#@«­V@«®ŠqÞj@0^Hè§ç@0^Ov_Ø®@-\j~ùÛ"@-\j~ùÛ!@-Ó¶E¡ÊÁ@-Ó@N¤¨Á@-p‰ 'RU@-o·éùs@-p‰ 'RU@-nóMj@-p‰ 'RU@-nŠqÞi®?É^³Dw'?ÖÈ ¼?‘4!Ÿ•p’?‹¹GüÞõ?‘õbÐ\?ÃwZL?ÐbMçê_x?’MœœN ?§^ ÿo˜?CÚ B÷?üÓqÔNŠ?]#ÍìO¤?€b¡´ñ@?Œ°¶.Ä+Æ?‚† SFò?ƒ†+ Å?†špk Y?†žóB» “@@@@@*@&?ð?ð?ð?ð?ð?ð¿TÁ8V?1Áüq”?=yºk?:˜MÉ~Ôg@¡Ã4˜êšþ@«®£Øª?Kð¶ªø¾;?I84Éo?“³n´^c?‹›®Qø@ŸsC{dw@š@¤ORn—P@¤ORñ©ûç@¤ORn—P@¤ORGE8ï@¤ORn—P@¤OU$Ü@¤ORn—P@¤OVR½<6@¤ORn—P@¤OVlô"@¤ORn—P@¤O]ŠÚ¹õ@«§l‹C–@«§l‹C–@«§l‹C–@««)^ž@«§l‹C–@«©“ àß@«§l‹C–@«©­BÃÉ@«§l‹C–@«ª~ùÛ$@«§l‹C–@«©ã¼@4è†YJôñ@4çâ‚@·€@2¦‡+ J@2§ÎÙ‡*@2'KƧïž@2'y¦µ @1ÜÚQÎ@1Ú’£S&@1ÜÚQÎ@1ØFÜ]d@1ÜÚQÎ@1Ö‡+ J?}Ñ¿ž,?“‹ë÷?’ª®pµ?’³Žbtx=?’°STðS?•Y‚¦\(?|¬Çëý ?•yom?•ÇØ¼áêZ?’ü#q\-v?’.<ù?’¨¢†¼ ¼?‚|׿pY?êzŽx?ŒÊ­#г_?‡¯½.SM?Šì¾ ;8´?‹¼`’ i2@@@@@&@(?ð?ð?ð?ð?ð?ð?YlÑt?Aãˆ??á†Gë’?) aÕÈ„@¤OUþeÐV@«¨­MÐ?_]ïý‰Û-?I¸ñΔ?Äk¾qûßÐ?5«iXº8@Ÿeì»R³*@›@«ÿ° Ä›¦Á.„€@«ÿ° Ä›¦@«ÿË)^ž@«ÿ° Ä›¦@«ÿǓݗö@«ÿ° Ä›¦@«ÿÁ‰7KÈ@«ÿ° Ä›¦@«ÿÊ @«ÿ° Ä›¦@«ÿÈðŽ@£/”záG®Á.„€@£/”záG®@£/µÜÆ?@£/”záG®@£/£ˆe”¯@£/”záG®@£/ŠÀƒo@£/”záG®@£/š6âë@£/”záG®@£/”¼@9=:’£Á.„>¤µÜÆ@5i‡+ @5ZôðØDÐ@4v§ï²-@4i#¢œwš@3«xFÜ^@3 å`A‰8@3«xFÜ^@3•Ϫ͞„@3«xFÜ^@3šOv`@8J¨?¢Ú>¨I ¿?°û}\ie?£à•ÒnÁ?£Mµ¼Ä1?¡úIä?^e@8J¨? us76Ùc?¢n®Ú| X?›‘Ûê\PK?­0d@Ïè‹?¥ <»Þ\@8p÷?¡Ö$•3É?š6v;vî?>æ¿Îï?£,ãR¯o?¥ÕS^^G>@@@@*@*?ð?ð?ð?ð?ðøøøøøøøøøøøøœ@£r»çl‹D@£r¼(õÂ@£r»çl‹D@£r½p£× +@£r»çl‹D@£r½IQ‚ª@£r»çl‹D@£r½cˆe–@£r»çl‹D@£r»šu@£r»çl‹D@£r»/ìVÖ@¥·+ Iº@¥·+C•@¥·+ Iº@¥·*³g ù@¥·+ Iº@¥·*ôðØF@¥·+ Iº@¥·+6z@¥·+ Iº@¥·+xFÜ@¥·+ Iº@¥·+C•@1¥öý!ÿ.@1¦ +¦L/„@)³t¼j~ù@)³üPH@'Ýó¶E¡Ë@'ÝÌcñA @'fL/ƒ{K@'e¼£n/@'fL/ƒ{K@'e¼£n/@'fL/ƒ{K@'eÉã½?É`¯&xŽ?ÉGãA­÷?‘ÌË>¯f?‹µ™eU!µ?òǹíT­?¸û:?ÐbV‡,?’˜‰%F²?€s8rÅ?7枪y7?ß’ºèh!?NÂò‚Ì`?€cPßQª?Œ¬Çëý ?‚oÁÆÜ§÷?‚ãaÎúvh?†ˆ#.÷?†ŠúЀ>(@@@@@,@*?ð?ð?ð?ð?ð?ð¿P¤‚ƒ>ÿòý ?8lÅ1±E±?Aj²o æ@£r¼…»b@¥·+NÓ©?G~ÓðîÑj?#/LÙÔÇ4?‹¦åaë%?@ukƒw@Ÿsè‡;‡@@¤l¸Ôýó¶@¤l¶“v@¤l¸Ôýó¶Á.„€@¤l¸Ôýó¶Á.„€@¤l¸Ôýó¶Á.„€@¤l¸Ôýó¶Á.„€@¤l¸Ôýó¶Á.„€@¢þâÐå`B@¢ÿ  Iº@¢þâÐå`BÁ.„€@¢þâÐå`BÁ.„€@¢þâÐå`BÁ.„€@¢þâÐå`BÁ.„€@¢þâÐå`BÁ.„€@9šÔ,<Ÿ@9‚©“ á@6k¥ãS÷ÏÁ.„M‰ûçm@6 ²-VÁ.„QnÙ‡@6 +0U2a|Á.„NÜC,¥@6 +0U2a|Á.„NÜC,¥@6 +0U2a|Á.„NÜC,¥?žŒÝÙ›P@8#˜@8¾:@8 >+@8Iç@8Ù?š•§q!U@8Î÷@8i§@8Å@8S@8û—?µ*”éÌ’@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøž@¡Ç…¡ÊÀƒ@¡Ç‚MÒñª@¡Ç…¡ÊÀƒ@¡Ç„Âø7µ@¡Ç…¡ÊÀƒ@¡Ç‹àÞÒ‰@¡Ç…¡ÊÀƒ@¡Ç‚¶®}V@¡Ç…¡ÊÀƒ@¡Ç~\‘ÑN@¡Ç…¡ÊÀƒ@¡ÇxQë…@¡úÞ¸Që…@¡úÞ5?|î@¡úÞ¸Që…@¡úã× +=q@¡úÞ¸Që…@¡úߊ ß@¡úÞ¸Që…@¡úèK]Ìd@¡úÞ¸Që…@¡úá‰7KÇ@¡úÞ¸Që…@¡úÜPHð@7šÔ,<Ÿ@78ï4Ö¢@3Ê^5?|í@3Æ_Ø­«Ÿ@2U`A‰7L@2TêJŒM@25µsê³h@23¯·éú@25µsê³h@22:)Çy§@25µsê³h@2-\ú¬Ùè?žˆ2}?“+ÄWè?“=P™Ê?“ׂa†Üü?”‰Wïÿ·?Ÿ@*Få?‚á²Olºü?˜&§dU(?‘Ûcu%ç+?”`íÖ†›?”¡S•Ÿ¯?•ÔWŒ°R¨?‚íWçé„?—E!Üý·'?ŠÇÿú?Q§ ç´Í?‰©OO ¨?Š—à `ž@@@@@*@*?ð?ð?ð?ð?ð?ð¿R®™´?@ÿµ°8?E|ì¬W(¢?TŲȺç‚@¡Ç€=˜.@¡úàJCx?d¦KÅ?t˜ø¾äÓO?ȯ¸ŒÿçL?ëº ÐŸ,ð@Ÿf[ØÌ9@Ÿ@£ƒð Ä›¦@£„Ä›¥ã@£ƒð Ä›¦@£ƒÞš@£ƒð Ä›¦@£ƒó3333@£ƒð Ä›¦@£ƒË’:)Æ@£ƒð Ä›¦@£ƒñœàu÷@£ƒð Ä›¦@£„ùÛ"Ò@«jt¼j~ú@«jnV“@«jt¼j~ú@«jnzáI@«jt¼j~ú@«j‹ÓÃa@«jt¼j~ú@«jmžƒä%@«jt¼j~ú@«jj#9Àì@«jt¼j~ú@«jSÃaA@8eöý!ÿ.@8b½<64@4J^5?|í@4L£n.²@3V”@3§Xâe@3L¿±[W?@3WOß;d@3L¿±[W?@3L£n.²@3L¿±[W?@38ð¹?–ªÎ­¡?–„Ø?8ˆ?¡ÙuüZÍ?§¶¡Àc?¨ƒ ¹´?³†Z Ü—?Ž=fA:?›Ò¦—†ž?©º?SRÏ?«­Îþl^%?˜ +†Y ë*?¸üTPš?¡ÿ¶?B ?¥\7e)?¨Y²Y¬Æñ?™/#ÕË®r?óRÏ4?™Øl›¹@@@@@(@&?ð?ð?ð?ð?ð?ð¿jñ3´¿W)éjð?zå=~Ý8A?Q4×±aÐ@£ƒõßGtF@«jk…ˆæ?™—Ç2H^?pêOã¡Y@íÇñ3àh?ÈYIQÈ–È@Ÿf’5¨¿@ @©áÑhr°!@©áB\(ö@©áÑhr°!@©áÊ Þ@©áÑhr°!@©áÆ$Ý/@©áÑhr°!@©áÈ Ô•@©áÑhr°!@©áËŸU›>@©áÑhr°!@©áÇ_oÒ @«ízáG®@«í|(õÂ@«ízáG®@«í á°‰ @«ízáG®@«í +Ížƒã@«ízáG®@«í?@«ízáG®@«í¾ß¤A@«ízáG®@«íü¹#¢@7wâ‚@·€@6È$ xG@3E?|í‘h@3=ÌcñA @2•`A‰7L@2—ö+jè@1î_oÒ @1ãÝ—ö+k@1î_oÒ @1ê)Çy¦µ@1î_oÒ @1ç8}¿H?áüBØ&³W?’@k=[?”lš5B¬î?ŽAtùð¥t?’¥.Kn Í?’¯-! )m?Ú. Íù#?”ï©ÛÉ?“?T¾¹µ ?”A8 Kú¿?’8,²ñ±T?•ÔWŒ°R¨?öªë˜Zj¯?ï7è-ÖR?„„OW°ó?‡¯½.SM?‰©OO ¨?$Ìj½BÙ@@@@@*@$?ð?ð?ð?ð?ð?ð?*ÁÎÄ0?L˜ò+ ?aTá¬OÄ[?oMÝò/]@©áÈØÌü“@«í +*5æ?p}‹© +›Z?{¦œXOà?ÕÔóíÙ•ê?çut%PC@ŸsC(mºM@¡@¡<¶È´9X@¡<¶È´9X@¡<¶È´9X@¡<±Fª?U@¡<¶È´9X@¡<°‡’ÃÏ@¡<¶È´9X@¡<º›¡»„@¡<¶È´9X@¡<¾üÊuš@¡<¶È´9X@¡<¯ Ê×V@œcS÷ÎÙ@œbÐå`C@œcS÷ÎÙ@œ~ ¨ +ð@œcS÷ÎÙ@œZ¶Ö@œcS÷ÎÙ@œK-z®8@œcS÷ÎÙ@œ*Â;a @œcS÷ÎÙ@œU‰4'A@3¿–»˜È@3¾á[ Ͼ@0…?|í‘h@0 ‚#+ @/´ýó¶E¢@/­Ž·¸UF@/åÉä@/zåsŸÑÉ@/åÉä@/…ˆÁ>™b@/åÉä@/yI×K( ?}@T˜ÁÎ¥?’é0§ÕÎq?‘S4zïÎs?‹Ó&=ø?]?‘ ó—4ˆw?•§2ðñ?|Ñb×¶@?”¦´´ç´?€€óì–'?P}^ˆU=?‘Ã-ß(?‘ãùR¿?‚r—Ge?‘ÓªÑýœ?„t(XW?ƒ3êp>?” ÝšÒi?“«=ºÜx@@$@@@.@1?ð?ð?ð?ð?ð?ð?@/íпl”w Þ?V¤¢ü!Æ?b¸è¸}@¡<¸KÁ.!@œRî8!?u¦W0ÀP?‚Oû‰[?öÙTÇV_—@¬[¿1Ó@ŸfPð @¢@®îûçl‹D@®îýp£× +@®îûçl‹D@®ï$Ý0@®îûçl‹D@®îþš@®îûçl‹D@®îÿ¾vÈ´@®îûçl‹D@®îûÀ6ã@®îûçl‹D@®îý!ÿ.I@£*¤Z¬@£*œí‘hs@£*¤Z¬@£*£× +=q@£*¤Z¬@£*¥ðoiD@£*¤Z¬@£*¡ä÷eþ@£*¤Z¬@£*¤Ý/¡@£*¤Z¬@£*¤÷eý‹@5T xFÜ@5PÑ·Xâ@2ã÷ÎÙ‡@2æµ '»@24“t¼j@28r° Äœ@1™Œ~($ @1›xFÜ^@1™Œ~($ @1šÀƒn˜@1™Œ~($ @1šÇË)_?€‚ñêã ?”SyÑûê?’µ<ëvar?Œ9‚Ù.?’»–j˜ú?‘C!ƒžÈ? Eˆ‡ðó‹?•jÒb¹¾®?“èËôy?Ä…à6 +æ?‘êë·áþA?‘C å;Ã?šÒÅšnê?‘ +òtMŠ?‡9Â@0wç?„ìsMQ(Œ?‡YÍ_?ˆ +¿„r©Ý@@@@@,@*?ð?ð?ð?ð?ð?ð¾ÿ£Ñ=?Z»÷‡,?;43¦ÿ¼K?4@ßùP@®îýšç÷€@£*¢óîf?`3èo¼0?MØGj·?Àú‘Ë\&?‘1¬fú4@Ÿmîp̧%@£@¢ªÆ§ï²@¢¨ A‰7L@¢ªÆ§ï²@¢¨¸ºÇË@¢ªÆ§ï²@¢¨Â Iº]@¢ªÆ§ï²@¢¨¼‘ÑN<@¢ªÆ§ï²@¢¨©Dg8@¢ªÆ§ï²@¢¨°|„µÞ@Ä+ Iº@Ì'l‹C–@Ä+ Iº@Ëóê³g @Ä+ Iº@ËÐHð@Ä+ Iº@ˈ1&éz@Ä+ Iº@Ì©“ á@Ä+ Iº@Ìu%F @7Û¹Œ~($@4fffff@4©‡+ @0”SŽóMj@4t¼j~ú@0 #¢œwš@3°–»˜Çã@/C,¥zxn@3°–»˜Çã@/87´¢3œ@3°–»˜Çã@/@>ØjO㛦@ŸdÙ®.×@¤@¢ôíV@¢ôì‹C•@¢ôíV@¢ôíjO@¢ôíV@¢ôíOß;d@¢ôíV@¢ôí¸ºÇ@¢ôíV@¢ô첕éâ@¢ôíV@¢ôì¥zxl@®Rn—P@®R° Ä@®Rn—P@®RÊW§‡@®Rn—P@®R•éá²@®Rn—P@®R䎊s@®Rn—P@®Rñ©ûè@®Rn—P@®R䎊r@0D¯O „M@0D¯O „M@*)7KƧï@*)*0U2b@)h1&éxÕ@)h Ô•+@(̲•éá±@(̘_ö•@(̲•éá±@(̲•éá²@(̲•éá±@(̲•éá±?É^žQ5P‚?Ï[äeÊxê?$ë.¦ÑÕ>ó>ƒ¼=eP@¢ôíL@Œ@®Rè“®ô?3>pzc‹y?3xÎà[?b+ù+ë>ý 7Z,ä@ŸsIѨZ@¥@­tÚ¬1@­tÞ5?|ï@­tÚ¬1@­tÐ£× +>@­tÚ¬1@­tÝ}¿H€@­tÚ¬1@­tߊ Þ@­tÚ¬1@­t؆YJö@­tÚ¬1@­tÞi­BÅ@¾« Iº@¾²-V@¾« Iº@¾©ûçl‹@¾« Iº@¾œ¬1'@¾« Iº@¾„M:“@¾« Iº@¾¹=Ùd@¾« Iº@¾—$tS@7-¥œàv@7/b¶®}V@4Å?|í‘h@4µ¸Që…@3ß²-V@3Ý}¿HÌ@4ý!ÿ.I@4¸Që…@4ý!ÿ.I@4'†Â&€ž@4ý!ÿ.I@4ƒ{J#:?‘â%ì˜ ä?•ßóV_Ü^?•|®6zj?©aµ`aÊ?¦p3/ ¤?š›dFÍ?}Ñ¿ž,?—8©$ +"º?™”uÀdª? Ñ¡b£?¾?¢ üb9Ú×? !™¡kz7?ŠÇÿú?•)1Îá_?³&Ô,ô?±å«Oÿ.­?¢ÈÀºn–¿?±GÔšÔj@@@@@,@ ?ð?ð?ð?ð?ð?ð¿%àJ]¿d‘þ›#?A^÷ÔÑ ?byì"@­tÝÍB'@¾§ÏP?c‹q[b?‚ð¦Óæµ?¯S6ƒ#i°?÷åÉ S z@Ÿfp_Gm£@¦@­7O\(õÃ@­7a$Ý0@­7O\(õÃ@­7WeýŠÛ@­7O\(õÃ@­7SMj@­7O\(õÃ@­7UY³Ð|@­7O\(õÃ@­7Mí(Œç@­7O\(õÃ@­7MBÃÉï@¡þå`A‰@¡þ¡$Ý/@¡þå`A‰@¡þ’n—P@¡þå`A‰@¡þ°ò{³@¡þå`A‰@¡þ•¨Xy>@¡þå`A‰@¡þ‰ 'R@¡þå`A‰@¡þ’:)Çz@9 Î_oÒ@9Fs×Ü@3ør° Äœ@3øK]Ìcñ@3q‰7Kƨ@3uzxl"h@3‚@·€5@3Që…¹@3‚@·€5@3‡+ J@3‚@·€5@38}¿I?´M ó¬^õ?’Z†Aži?˜U%ÛÌx?Ú¾ÉÛ²º?”§RXFÖf?˜Cíˆi- ?µÕjùq®p?“ÈÂ`?˜€OìØ¯i?@§[*^?”dápŠ?™J•Ø3ÈÖ?–¥}°i?\{ÏïŽ?†Æ‹™ÿ?ˆã1µR?ˆT“Ÿÿ?ŽNîV˜C&@@@@@(@,?ð?ð?ð?ð?ð?ð¿p—¿–ð¿ci+r?KH\•ß™&?Qþžô¿@­7Qõúcª@¡þ“º¥Ø?[@!)‚ ?aÚCÈB¹?©Éùªçu·?´ >îá½@Ÿp‡9>½@§@¢^¥`A‰7@¢^žvÈ´9@¢^¥`A‰7@¢]̲•éâ@¢^¥`A‰7@¢]ÚÔ,< @¢^¥`A‰7@¢]7ö+jè@¢^¥`A‰7Á.„€@¢^¥`A‰7Á.„€@¦«³3333@¦«¤›¥ãT@¦«³3333@¦¬f +¦L/@¦«³3333@¦«¼64@¦«³3333@¦«Ì‹C•@¦«³3333Á.„€@¦«³3333Á.„€@8·â‚@·€@8¹³Ð|„¶@4Ìí‘hr°@4+ÓÃa@@4~ùÛ"Ñ@3~ƒä%®æ@3kxFÜ^@3Ov_Ø®@3kxFÜ^Á.„NÜC,¥@3kxFÜ^Á.„NÜC,¥?|öOÿÝ?Å)—·#á?ß´UmsA?ÊyÄHá>c@8Iç@8Ù?¥K¶{Oÿ?¿l{׬?׉B,|̶?¼8‘F²µ@8S@8û—?±¶K¬ÞYæ?·z‡ÏÓJ?ÇæWüÌ©'?±/Ö…tÿ,@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøø¨@­‰“t¼j@­‰”ýó¶F@­‰“t¼j@­‰®æ1ø¡@­‰“t¼j@­‰ÆL/ƒ{@­‰“t¼j@­‰­Òñ©ü@­‰“t¼j@­‰£¼l?@­‰“t¼j@­‰¢Õ$ô®@œ&MÒñ©ü@œ&M5¨Xy@œ&MÒñ©ü@œ&…8ï4×@œ&MÒñ©ü@œ&‡Ë)^@œ&MÒñ©ü@œ&qÞi­C@œ&MÒñ©ü@œ&{…¤—Å@œ&MÒñ©ü@œ&#pÅ¢@5–»˜È@5€SàO:<@3#÷ÎÙ‡@2ÿ¾vÈ´:@2~V“u@2V+jçÕg@2ý!ÿ.I@1ù 'RTa@2ý!ÿ.I@1ù£â2@2ý!ÿ.I@1õ®½ði?€Ã{s°úi?®ÖJ éf?¸þåx€+?£¯u]÷¥?£c‰Aqæ¤?¢H ¢N_Î?|çµB &€?º¹•»È?¹8䂪P$?¨F'^÷ŠD?§~c]–êl?™Æjð8g/?ƒÄV©äE ?ªájÔø$Û?¬¯¥´öE@©@¨° Ä›¦@¨°bMÒó@¨° Ä›¦@¨¯€‚è“@¨° Ä›¦@¨°YßB@¨° Ä›¦@¨±ú D@¨° Ä›¦@¨®Ý @¨° Ä›¦@¨¯™øX,@•ÒäZ¬@•Òã¼ÓZ†@•ÒäZ¬@•Ò彨>@•ÒäZ¬@•ÒäÅïðË@•ÒäZ¬@•ÒãôÓ`‚@•ÒäZ¬@•Òä;ÿfq@•ÒäZ¬@•ÒäÒ^µ@4zqÞi­C@4ziÜn¦@0Œí‘hr°@0Œó˜épq@0ï²-@0 /¡­W@.½Vlô"@.½ÞJü@.½Vlô"@.½’Ã&‹S@.½Vlô"@.½„M:”?|Ñb×¶@?ÐU£L p?‘1õ‡²"?‹ÁË…ÉT?ðgû*ã±?Ïà­î®š?|çµB &€?’Ø úR?U.VŽœ?FàQ"qH?Ù™r“‘?ZÒì#¼\?‚¨ò15?Œ°XI¬|!?‚ÄA„vÀ?‚ê¬Ù:âk?† Ýèƒ?†•‘d®Bæ@@(@(@,@:@:?ð?ð?ð?ð?ð?ð¿& ¸¤?*î¹`?)jou8IÜ>ìbýè¼C±@¨°ª{†@•Òãë‚2°?IJN˜?? îÒe±?¡eÚjCºé?%Åî&¬þ@Ÿfú0£³@ª@ªŠfffffÁ.„€@ªŠfffff@ªŠAohÜ@ªŠfffff@ªŠ\wškQ@ªŠfffff@ªŠi­BÄ@ªŠfffff@ª‰Ð‰ 'R@ªŠfffffÁ.„€@”Y#× +=qÁ.„€@”Y#× +=q@”XþÅm\û@”Y#× +=q@”Z!-w1@”Y#× +=q@”X>vÈ´9@”Y#× +=q@”X Iº^@”Y#× +=qÁ.„€@9¥öý!ÿ.Á.„>¤µÜÆ@4Œí‘hr°@4Ë’:)Ç@3â-V@3­ó¶E¡Ë@3cÉîËû@3*^5?|î@3cÉîËû@3E2a|Ú@3cÉîËûÁ.„NÜC,¥@8J¨?¶²ÅRž{•?Ã> +ØöA?ÀÔÒ’¢Ÿ?·oŠÀ‡”@8Ù@8J¨?³…±Û!ø?Ã>¦¹ý—?ÂtC½ãœ?®èÚB.ªå@8û—@8p÷?«Ÿ¾=X?¼°=É9?¥÷RãÅü^?®ï£îÏé@8 Ø@@@@*?ð?ð?ð?ðøøøøøøøøøøøø«@ªu·ÎÙ‡@ªu¬Iº^5@ªu·ÎÙ‡@ªu¹b¶®@ªu·ÎÙ‡@ªu²×sû@ªu·ÎÙ‡@ªu¾ÒˆÎp@ªu·ÎÙ‡@ªuÀƒn—@ªu·ÎÙ‡@ªuÁG®z@©‹wÎÙ‡@©‹}/Ÿ¾@©‹wÎÙ‡@©‹^ߤ?æ@©‹wÎÙ‡@©‹Që…¸@©‹wÎÙ‡@©‹mjO@©‹wÎÙ‡@©‹d›¥ãT@©‹wÎÙ‡@©‹gË)_@7òÃÉîËû@7æ1ø .@3E?|í‘h@3:u%F +@2d¼j~ùÛ@2X*™0¾@1Œ¿±[W?@1ë…¸R@1Œ¿±[W?@1}Oß;dZ@1Œ¿±[W?@1'»/ìW?|öOÿÝ?‘6 '8?•XYäý?r*ž¾Ž?—ÒGþUÀ?˜ÝÈYD? Eˆ‡ðó‹?’uß¿çÒ?—ˆ”„òõ¤?“AúìÊ„?—QÀ–Íù?œøD4f™?ëýK|æ?¬HO?…cü›Š×Õ?‡9 ƒ–’”?ˆk! ¨l?™GXêâ@@@@@,@,?ð?ð?ð?ð?ð?ð?u*3(h¿tPÑ +F?Nø<}Úå?SùT'÷µ@ªu»,àˆP@©‹mBbž?r+´n—­g?mœì±«Å?Þ œ/ÕïX?ÆÕe2‰ô@ŸkÚë¤J@¬@¢´®záH@¢´¯\(õÃ@¢´®záH@¢´¯Òòå@¢´®záH@¢´®;Í5¨@¢´®záH@¢´®¤¨ÁU@¢´®záH@¢´­\ú¬Ú@¢´®záH@¢´¬ô!-@¨&ŸQì@¨&¿;dZ@¨&ŸQì@¨&ÈË’:@¨&ŸQì@¨&ÅF +¦L@¨&ŸQì@¨&Ƶ (@¨&ŸQì@¨&Æ$Ý/@¨&ŸQì@¨&Åm\ú®@7 ]cˆe”@7y¦µ @2’ Iº^5@2‘×Ûô‡ü@2U`A‰7L@2UÜÆ?@15µsê³h@16YJôðØ@15µsê³h@168†YJõ@15µsê³h@16“t¼?‡YÍ_?ûJ`ÕYð?‘£Ä›è?Œ2ÌUÃT?’(æ„+Zk?’ïJ8Èž?гá‡}?’Q_Ú¸FN?ŽËÜ¿€?’ÁÛ/’:?‘ØèOÍ ì?‘C å;Ã?•bkòì?3I¶#i?…~ÆÎÇ$‡?†3_¾ˆ?‡YÍ_?ˆ©{2¡Î@@@@@,@*?ð?ð?ð?ð?ð?ð¿?p{ø?W¦D=?<ýž•ø?Byñ;­°@¢´®<›â¤@¨&ÃÈ’Ì?88obtÝ?bF4Í Š?t´çúÙ]†?Äøß"D@Ÿj\†ñºW@­@ ÔÎÙ‡+@ ÔÑ&éxÕ@ ÔÎÙ‡+@ ÔÛxÄX¬@ ÔÎÙ‡+@ ÔÝ6 ¤·@ ÔÎÙ‡+@ ÔকǞ@ ÔÎÙ‡+@ ÔÐ?îî @ ÔÎÙ‡+@ ÔΣ€Ñ@§+Ðå`A‰@§+ÐK¡Ðl@§+Ðå`A‰@§+é¡ÝPí@§+Ðå`A‰@§+ð9Û’@§+Ðå`A‰@§+âRû»@§+Ðå`A‰@§+×ÛB¬@§+Ðå`A‰@§+îÍ6\@6ð4mÅÖ8@6ñÝ$‰Ù¢@2õãS÷ÎÙ@2燛SZ¦@2²-V@2;6K.@1¸DЩ*@1¥•Ö .T@1¸DЩ*@1¨àç%$@1¸DЩ*@1ª³|òà?ƒ_ÿKt˜à?™º0–„7Ä?—DÊŠ,?ŒÃ0íj+ä?’x††d?’läËU?ƒ…†r÷šâ?©1èÂéé?¢š¦ðÓÈ?í¹a0 ”?‘èçý>"?žŒ®Û- ?†¡ÎUë##?ð¾¾LE?žó³Ëö?VDx-~¥?‹è¹”†?—šú]‡…_@@"@$@@0@2?ð?ð?ð?ð?ð?ð?5ý P?ph=@€?dZÌx¬V¢?aá¼T1õC@ ÔÔ:måÞ@§+Ùºô]b?ƒ²•†Q?!n­ *š@ì^²zÚ@.ÖRähR@Ÿg^ÛŽŠL@®@ sY‡+@ sS3333@ sY‡+Á.„€@ sY‡+Á.„€@ sY‡+Á.„€@ sY‡+Á.„€@ sY‡+Á.„€@Ÿ§hr° Å@Ÿ§cS÷ÎÙ@Ÿ§hr° ÅÁ.„€@Ÿ§hr° ÅÁ.„€@Ÿ§hr° ÅÁ.„€@Ÿ§hr° ÅÁ.„€@Ÿ§hr° ÅÁ.„€@7>«6z@6ì¾ß¤@@3xr° ÄœÁ.„M‰ûçm@2>V“uÁ.„QnÙ‡@1ÔmÅÖ8†Á.„NÜC,¥@1ÔmÅÖ8†Á.„NÜC,¥@1ÔmÅÖ8†Á.„NÜC,¥?æ ç«Z–@8#˜@8¾:@8 >+@8Iç@8Ù?æ ç«Z–@8Î÷@8i§@8Å@8S@8û—?æ¡‚á¾A@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø¯@¤HaÊÀƒ@¤HaÊÀƒ@¤HaÊÀƒ@¤Haä÷eÿ@¤HaÊÀƒ@¤Ha×Ûôˆ@¤HaÊÀƒ@¤Hb@·€4@¤HaÊÀƒ@¤Ha-w1@¤HaÊÀƒ@¤Hbe+Ô@¤þ(õÂ\@¤þ(õÂ\@¤þ(õÂ\@¤þ(õÂ\@¤þ(õÂ\@¤þ)*0U1@¤þ(õÂ\@¤þ%S&Â@¤þ(õÂ\@¤þ'»/ìW@¤þ(õÂ\@¤þ(Œç°@2D¯O „M@2D¼j~ùÛ@0µãS÷ÎÙ@0µÏªÍž„@0ï²-@0´¢3œ@0Þi­BÄ@0N;Í5¨@0Þi­BÄ@0ÑN;Í6@0Þi­BÄ@0ÊÀƒo?É^žQ5P‚?°çR;?‘\H{gX ?ŒÖ +Äȱ?‘§›ßÉîj?‘W×ý°A?ÐbMçê_x?’ +‰¸Ì?Å)Ì_“?‘~¬Àm?ó?‘\{3>Ôa?ó‹P=´?€cPßQª?Œ¸†‡ÄÅ?‚ù…žÄ`x?ƒì%­¹Ï‘?‡<û¡71?†ïRÉv‘Ñ@@@@@*@*?ð?ð?ð?ð?ð?ð¿"*À?V‚â*?4¤¥ð)zË?2Ÿ YÏCÄ@¤Haå#‰@¤þ' —— ?Cæ‡I²-?A‡ 륕?öÒìán?xHDØ}`T@Ÿsb^Xö@°@Ÿc‡+ J@Ÿc…¡ÊÀ„@Ÿc‡+ JÁ.„€@Ÿc‡+ JÁ.„€@Ÿc‡+ JÁ.„€@Ÿc‡+ JÁ.„€@Ÿc‡+ JÁ.„€@Ÿ9¦éxÔþ@Ÿ9»çl‹D@Ÿ9¦éxÔþÁ.„€@Ÿ9¦éxÔþÁ.„€@Ÿ9¦éxÔþÁ.„€@Ÿ9¦éxÔþÁ.„€@Ÿ9¦éxÔþÁ.„€@7D¯O „M@7HË’:*@4‡ÎÙ‡+Á.„M‰ûçm@4_²-VÁ.„QnÙ‡@3Åœàu÷Á.„NÜC,¥@3Åœàu÷Á.„NÜC,¥@3Åœàu÷Á.„NÜC,¥?æ ç«Z–@8#˜@8¾:@8 >+@8Iç@8Ù?æ ç«Z–@8Î÷@8i§@8Å@8S@8û—?æ¡‚á¾A@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø±@¯J=p£×@¯J=p£×@¯J=p£×Á.„€@¯J=p£×Á.„€@¯J=p£×Á.„€@¯J=p£×Á.„€@¯J=p£×Á.„€@¡VIº^5?@¡VIxÔýô@¡VIº^5?Á.„€@¡VIº^5?Á.„€@¡VIº^5?Á.„€@¡VIº^5?Á.„€@¡VIº^5?Á.„€@3G>«6z@3GæšÔ-@1áhr° ÄÁ.„M‰ûçm@1éÛ"Ðå`Á.„QnÙ‡@1Œ~($ Á.„NÜC,¥@1Œ~($ Á.„NÜC,¥@1Œ~($ Á.„NÜC,¥?|¬Çëý @8#˜@8¾:@8 >+@8Iç@8Ù?|öOÿÝ@8Î÷@8i§@8Å@8S@8û—?‚yî8Á#@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø²@¢» A‰7L@¢»'®zá@¢» A‰7L@¢»2䎊r@¢» A‰7L@¢»($ x@¢» A‰7L@¢»®¾ß¤@@¢» A‰7L@¢»Ov_Ø®@¢» A‰7L@¢»VâëC@¨z'l‹C–@¨zŸ¾w@¨z'l‹C–@¨z•L˜_@¨z'l‹C–@¨z'8}¿@¨z'l‹C–@¨z=—ö+k@¨z'l‹C–@¨zl‹C–@¨z'l‹C–@¨zS&Ã@6õS&Á¾@6ÕÉã½@4?|í‘h@4n—Oß@3b-V@3vÁ½¥@3‚@·€5@3(Ë’:*@3‚@·€5@3œàu÷@3‚@·€5@2ð[À6ã?|öOÿÝ?±(¬úÝ?¹EïZS‹)?¿™C‰Ü?²¯oÊA>?»̇Ùa?¦NIÉ®š?«Ñ]¼‘’?¡œåVÉh?ªò<8?®¶h†i¾m?¯I$ŠP ‹?¢š'†­`í?µK¶{Oÿ?²+HŽKdÅ?¶ágw_؆?½XSª]ÿ•?Ã&A@% @@@@@&@(?ð?ð?ð?ð?ð?ð?‹F¤ÏÇ@¿Oþ¼ñ?€É ài?€–/„>ä @¢»CŸt˜›@¨z Ï?¡£ÓñtÓ?Ÿç ‚óX@ˆÆ¤ð @@Û1膄@Ÿf@ÒO'n@³@¬ƒÄ“t¼Á.„€@¬ƒÄ“t¼@¬ƒïŸ¾w@¬ƒÄ“t¼@¬ƒÍÒñ©ý@¬ƒÄ“t¼@¬ƒÆYJôñ@¬ƒÄ“t¼@¬ƒÉùrG@¬ƒÄ“t¼@¬ƒÁG®z@§·KƧðÁ.„€@§·KƧð@§ˆ>BZï@§·KƧð@§˜üPH@§·KƧð@§Ÿ±[W?@§·KƧð@§¨Œç°@§·KƧð@§«Æ§ïž@9 xFÜÁ.„>¤µÜÆ@3Å?|í‘h@3²° Ä›¦@2ƒt¼j~ú@2xbMÒò@1Š0U2a|@14Ö¡aå@1Š0U2a|@1@N¤©@1Š0U2a|@1‚ZîcŠ@8J¨?°Uíù˜&? õ/ ebà?F?H´>©?”óÆ»1Ta?–"ûe”M@8J¨?¬Ö ¿_øË?›«9ØYº,?š‰+D¨x?’êJ>áý?‘–íÍQÜ@8p÷?¡"ÒIHÛœ?’-BR1Å?‹h¢íc„„?‘ÔþÆvI‡?’3¨£„È@@@@"@ ?ð?ð?ð?ð?ðøøøøøøøøøøøø´@¥æÛ¥ãSø@¥æÝp£× +@¥æÛ¥ãSø@¥æËxFÝ@¥æÛ¥ãSø@¥æÙ¦µ @¥æÛ¥ãSø@¥ææµ (@¥æÛ¥ãSø@¥æà-à @¥æÛ¥ãSø@¥æ×ÎÙ‡@ ®Rñ©ûç@ ®OŸ¾w@ ®Rñ©ûç@ ®=cˆe•@ ®Rñ©ûç@ ®b&€I@ ®Rñ©ûç@ ®Aò×s@ ®Rñ©ûç@ ®Z)Çy§@ ®Rñ©ûç@ ®]²-V@7ÉÎ_oÒ@7Èâe+Ô@4û Iº^@5æ1ø @3´“t¼j@3¶z–¼@3£ÉîËû@3Ÿ–»˜È@3£ÉîËû@3oiDg8@3£ÉîËû@3•‡“Ý—ö?1·†Æjñ?­ìªJý‘?šQ"Äš%?¢50«åµÎ?§?7¡â±?£¸½X—Œ?¤I~Óy‘?¶™~ˆFs?¦oi(¢î? ô%bB§Û?°±îã"?¦kxÜ““?‚á²Olºü?ª‡ªfƒ‚?šWÔ\æ%¢?¤DúÚ`?®,ÐZ´¹?¡‘8²™ç@@@@@&@$?ð?ð?ð?ð?ð?ð?&ʵ ?f›×:?Ut› ²eÔ?pB’`Ä@¥æÞ@bü@ ®NE¶+?ySÒì–?ŒÌñª=¥ü?Ön”ëzT?íhaj¬è@Ÿi¦ùâní@µ@¯F•%@¯F“t¼@¯F•%@¯F€:ß5@¯F•%@¯FÏf¡À@¯F•%@¯F‡ª‰@¯F•%@¯F*‚ü:@¯F•%@¯FÏ=†@•Ƨï²-@•ƧîQyR@•Ƨï²-@•ƨÊRÝ@•Ƨï²-@•Ʀûü¶d@•Ƨï²-@•ƨ +™ö@•Ƨï²-@•Ƨí[+Û@•Ƨï²-@•ƧÁœ@3«µsê´@3«)^ž@1pÄ›¥ãT@1p¦âô-Þ@0)Û"Ðå`@0)ˆn t@/åÉä@/P3;@/åÉä@/ϲ+ì@/åÉä@/cþ +ºÂ?}@T˜ÁÎ¥?å- ?‘/NÇ‹?ŒL7Š÷?þÞâ(á¸?ÄQg–HÄ?|¬Æ Væ?’ ¦ï)óè?¤¯Õ”öù?6¦K'Y +?á¥,Uw¯?sîÇ0êÒ?‚|´ †Ë#?Œ×ÑŸTŸ?‚­ôÌbø‚?‚æVSà +x?†–9Ζ{?†¬?³$ë@@,@*@(@:@9?ð?ð?ð?ð?ð?ð¿@Í÷¾àèŠ €>öéÓ­ÙŸ>é!TIJm~@¯F÷qéÞ@•Ƨè÷Á?ÐàÐ7? ›ÀGFF?;ù¥Åyâ>?!mœ»%z@ŸfýBåº*@¶@¬[ Ƨïž@¬[ ÌÌÌÍ@¬[ Ƨïž@¬[;Í5¨@¬[ Ƨïž@¬[4Ö¡b@¬[ Ƨïž@¬[ Ô•+@¬[ Ƨïž@¬[ ^ž @¬[ Ƨïž@¬[ Iº^5@¬rß¾vÈ´@¬rÝ/Ÿ¾@¬rß¾vÈ´@¬rèðŽ@¬rß¾vÈ´@¬rßb¶®}@¬rß¾vÈ´@¬r唯O@¬rß¾vÈ´@¬rÝŠÚ¹ö@¬rß¾vÈ´@¬ráaä÷e@6·â‚@·€@6¸è§æ›@4W+ Iº@4Y³Ð|„¶@3ÐA‰7KÇ@3ÒZîcŠ@3Eœàu÷@3GæšÔ,@3Eœàu÷@3DðØDÐ@3Eœàu÷@3Eœàu÷?ˆÿÀ)T¿Æ?–[‹Å ?’d3ð"7?Wø0 ¥?”#?3ÆÂƒ?”1Ÿøš?}Ñ¿ž,?–ÖÀeªw?—ÿfFº?”‘v»?” E®!—?•}ç›–X?Ž“‹}Ty?“êXÔ #{?†aÞàI*•?ŒÅÐ7N³¬?IÏáå$?’Oûh´6c@@@@@(@*?ð?ð?ð?ð?ð?ð¿=6(Þ°?LiH› ?>%KÁÏò?K1ÞúÏž¤@¬[ ?L«s@¬rßuŽ¡Ñ?\(ë¹®?lë.ÅÝÁÓ?¹Þ¬ÔKž?Üç¿6γ@Ÿh§e`@·@®]²-V@®]²-V@®]²-V@®^6Gt@®]²-V@®^ ×Q³@®]²-V@®\e²í@®]²-V@®Y|ß8@®]²-V@®Ywß+@•ý$Ý/@•ýؤT@•ý$Ý/@•ý|p£­@•ý$Ý/@•ý~°‰@•ý$Ý/@•ý{/«ßÙ@•ý$Ý/@•ýzǧ€@•ý$Ý/@•ý|‚V|k@3ºqÞi­C@3º…‡“ݘ@2J^5?|í@2Dž?h@1ÒÐå`A‰@1ѲƒÎ@0î_oÒ @0êŠÅÁ?Ñ@0î_oÒ @0ìzÖq±@0î_oÒ @0ìàv¶M'?}@T˜ÁÎ¥?‘q ªÖ‘?‘FxÌ+IÕ?‹Ð Û¸ig?‘˜DH/7¨?‘y“>Ôm?|¬Æ Væ?“Á¼ó!T?¥CÖ÷W?—WHF,ó?‘}é†ëóv?{8–õä?‚nݺªšG?ÁµFG?ƒ¸‹–æ?ƒ?¾$ɘ1?‡ñîŃH?‡ IÛµ­p@@$@(@"@6@1?ð?ð?ð?ð?ð?ð¿M²ñø¿D–—Xz?'ã q·z@?*Ò(8vK@®[Õå[ª@•ý~ã|?G­()”1â?KXŸLÏÎÐ?°ÐXTÈ?£ÈêÔXº@ŸfÜ#€b[@¸@­ÄÐbMÒò@­ÄÐbMÒò@­ÄÐbMÒò@­ÄÑÄ2ÊX@­ÄÐbMÒò@­ÄÕ*™2@­ÄÐbMÒò@­ÄÎ.±Ä3@­ÄÐbMÒò@­ÄÎ}Vlô@­ÄÐbMÒò@­ÄÌô!-@¤ôã× +=q@¤ôã•%@¤ôã× +=q@¤ôâu%F @¤ôã× +=q@¤ôéùrG@¤ôã× +=q@¤ôß¾vÈ´@¤ôã× +=q@¤ôá½¥@¤ôã× +=q@¤ôâh Ô•@6‚ò䎊@6‚£S&@3+¥ãS÷Ï@3+P°ò{²@2—ï²-@2˜è§æ›@2OO „M@2N¤¨ÁTÊ@2OO „M@2NOv_Ø®@2OO „M@2NOv_Ø®?ˆÿÀ)T¿Æ?‘u:|ñ²¨?”Ä0óçî? Ð ÷Ž ?“r {#¥&?“ÚÁRš )?Ž=fA:?“$i «%h?’Qÿc +?“ŠH#=?” E®!—?’j“O’I?‚nâwfÿ?ŽátÖÁ»‡?„ËD(ºp?‡ÕZ›µûÜ?ˆ0&YÊEd?Š|)-}í(@@@@@*@*?ð?ð?ð?ð?ð?ð¿Dåß¿5#Y¾P?!é¦){¡­?<áX¦O¿ï@­ÄΣlo0@¤ôâË( +?A‚•z$z–?\f¦¸ïî?‚ ™AÀ­‹?³ÿÈöFG@Ÿjtö©ú@¹@¯í‘hr°@¯‘ðÕ¥ñ@¯í‘hr°@¯cI]Ñß@¯í‘hr°@¯ÀJϽš@¯í‘hr°@¯·TU/@¯í‘hr°@¯ì;„݇@¯í‘hr°@¯lÖJ{+@–ÕJÀƒo@–Õ6E¡ÊÂ@–ÕJÀƒo@–ÖQèâíò@–ÕJÀƒo@–ÕâTkq@–ÕJÀƒo@–ÕÉ”úž@–ÕJÀƒo@–Õqÿ°î@–ÕJÀƒo@–ÖJ;ˆŸ@8÷â‚@·€@8õÆ*»IA@4½‘hr° @4z#ñ„yù@3A‰7KÇ@3Tíœg–-@2ÏO „M@2›˜¥—@2ÏO „M@2¤g¦êÐ@2ÏO „M@2 ôûqª?µ…7YuÍì?Åa%Ü莠?´Ë`[þŠ?«c¿ÚV?•Ë=½%uÐ?Ìã*¹~?Ÿ>KtAÿ?ÄeTëC?½ÄXx+Á?·“2ƒhe?•ÎJèÃæÃ?Â-=~º·?ÁȧÄí£?¡;’MÕšw?–¢öúAº²?•Mu]P%®?»f=ä›®?«ø–Oþú@@(@,@,@5@7?ð?ð?ð?ð?ð?ð?Pø“ +?v™0$¾?lõA˜@¹?sôÈðÑ­@¯åK–z@–Õiv§Ë?¡›ù7Ê?’!×ê1@L¡üxèP@±b×Öð@Ÿm§]Ó@º@®æùÛ"Ðå@®æÍV@®æùÛ"Ðå@®æþƒä%¯@®æùÛ"Ðå@®çªdÂø@®æùÛ"Ðå@®æûdZ¬@®æùÛ"Ðå@®æú¬1@®æùÛ"Ðå@®æ÷>«6{@¬"ÌIº^5@¬"œí‘hr@¬"ÌIº^5@¬"ÉùrF@¬"ÌIº^5@¬"Ð:û~‘@¬"ÌIº^5@¬"ÊW§†Â@¬"ÌIº^5@¬"Ì~($ +@¬"ÌIº^5@¬"Í‘hr¯@7°4mÅÖ8@7‡¯·é@3R Iº^5@3R•éá°‰@2Ÿ²-V@2 °ò{²ÿ@28DЩ*@29xÔýó¶@28DЩ*@2:¬1'@28DЩ*@29‡+ ?´Ð3¥}Å?’Qÿc +?‘K]Ã4?Œ9‚Ù.?’ÒuèçxY?’»«ÒñŒ?”ä¸zé—?”&OÖýæï?ß‹…&?Ë{4æk?“uR4ìH?‘êey°úà?´:Fõa¢á?ÉGãA­ø?…ÑTë0Ô?…<ò N ?‰®ââP\?ˆk! ¨l@@@@@*@(?ð?ð?ð?ð?ð?ð?A€"„?a¹³#?mÞm³z?`•G”b{@®æùX7qV@¬"Ës~µ?~¯:­œI?p æs¨—?ô ü:ŽöŽ?ÒÆX—a¦@Ÿr¢Ýµ)@»@¦ø~ùÛ"Ñ@¦ø;dZ@¦ø~ùÛ"Ñ@¦ø€D(Mý@¦ø~ùÛ"Ñ@¦ø€8SVE@¦ø~ùÛ"Ñ@¦ø€%³œ¦@¦ø~ùÛ"Ñ@¦ø~»mš@¦ø~ùÛ"Ñ@¦ø}æšÔ-@•²'ï²-@•²'ï²-@•²'ï²-@•²'†Â&‚@•²'ï²-@•²(1&éy@•²'ï²-@•²'Øåó@•²'ï²-@•²'Â#›@•²'ï²-@•²(PïÝ@+Ùb¶®@+Ùb¶®@%Gï²-@%Gï²-@#N—Oß;@#N—Oß;@#`ªdÂù@#g8}À@#`ªdÂù@#`ªdÂù@#`ªdÂù@#`ªdÂù?É^¨¯Âj?Á؆Qùd?‘c“Ô?‹©`ƆƵ?çzn~1?²ê¶vQS?ÐbMÝn½?’ªK‹}?lÒ:¼?/ÑÕ +Ä?μšjH0?I¼ì'ô%?€bMÔŠ»?Œ¬ (ÇÊ¢?‚n¼Õ‰W?‚âc[ø€?†‡I‚ÿ¯Û?†‡I‚ÿ¯Û@@(@*@(@;@:?ð?ð?ð?ð?ð?ð¿P‹…A?JF(?1m76òm“?¿ô›Šâ@¦ø~ß)&@•²'âä +Ÿ?@Âì+'?±qlð?{©+ßj€P?»¡”ØJî@Ÿsäòº@¼@¤ËâMÒñª@¤Ëç®zá@¤ËâMÒñª@¤ËÞ¸Që…@¤ËâMÒñª@¤ËâÐå`B@¤ËâMÒñª@¤ËÞÒˆÎp@¤ËâMÒñª@¤Ëâ‚@·@¤ËâMÒñª@¤ËâZîc!@«­_;dZ@«­dZ¬@«­_;dZ@«­\í‘hr@«­_;dZ@«­ixÔýó@«­_;dZ@«­`6âê@«­_;dZ@«­aä÷eÿ@«­_;dZ@«­a [À@7Ç>«6z@7Åzxl"h@3‡ÎÙ‡+@3‚a|ÚQ@3Ct¼j~ú@35oi@2Eœàu÷@2<ô!-x@2Eœàu÷@2Ezxl"h@2Eœàu÷@2E¼£n/?¦NIÉ®š?‘6 '8?–™@^Ú¢?ޝ“¶¶ÒÍ?’êÔÒ?’€ú¤ˆ4 ?|¬Çëý ?”‡r¦5MS?¢K‹´ºe?—QÀ–Íù?“NM–8/?’„³GÓ’?„+£QKø?ÉGãA­ø?‹‘+-/Ý?ˆÝíá‰?Š*ÊÔQãú?гá‡}@@@@@*@(?ð?ð?ð?ð?ð?ð?0˜1€¿GwíY(?U& ø‹Ûè?/ˉ¼ª@¤Ëá.ýÕ€@«­añÉ­ÿ?iØøÝ>Z?UYaÀÝ£?ËIùÖ«ïc?¥ÜMÏS:Ú@Ÿo@‚ @½@£nâMÒñª@£nâMÒñª@£nâMÒñª@£n䎊qß@£nâMÒñª@£náÊÀƒ@£nâMÒñª@£nãn.±Ã@£nâMÒñª@£ná×Ûôˆ@£nâMÒñª@£náÊÀƒ@ ‚^¸Që…@ ‚_;dZ@ ‚^¸Që…@ ‚^ž™@ ‚^¸Që…@ ‚^ í(@ ‚^¸Që…@ ‚]ÌcñA@ ‚^¸Që…@ ‚_ö”F@ ‚^¸Që…@ ‚^ùÛ"Ñ@4Bò䎊@4B3œ¾à@/žùÛ"Ðå@/žvÈ´9X@/DZ¬1@/D“t¼k@-£¼ÓZ…ˆ@-¢ÃÉîËü@-£¼ÓZ…ˆ@-£FÜ]c‰@-£¼ÓZ…ˆ@-£S÷ÎÙ?€‚ñêã ?Ì&ÏøHÃ?‘Ûü†Nã?‹ë¤½?‡á?ÿ £‰¸9?Ðýð^–Ö?€‚ñêã ?’MœœN ?r¼Jsž?EÇàÔPà?‘Ú‚ýc¯?hï,ðà?‚Ÿ JŠÅ?ŒöOÿÝ?‚yî8Á$?‚æÊ¬vã?†Ë¢L1Ù?†£îž«î@@@@@*@(?ð?ð?ð?ð?ð?ð¿?°¶€¿.j“?)¬½êS†E?$×Â6¤7@£nâ^?@”@ ‚^ãÍuF?I¯4UÈ?EmLž-gr?ŸýœGÈ;?•3ÊK‹¢u@Ÿgìjvx—@¾@¦×Â\(ö@¦×¾5?|î@¦×Â\(öÁ.„€@¦×Â\(öÁ.„€@¦×Â\(öÁ.„€@¦×Â\(ö@¦×Çï²-@¦×Â\(ö@¦×¿¾vÈ´@¯‰éûçl‹@¯‰æ§ï²@¯‰éûçl‹Á.„€@¯‰éûçl‹Á.„€@¯‰éûçl‹Á.„€@¯‰éûçl‹@¯‰Û¥ãSø@¯‰éûçl‹@¯‰ØÔýó¶@6Û¹Œ~($@6àªdÂø8@3c÷ÎÙ‡Á.„M‰ûçm@3nùÛ"ÐåÁ.„QnÙ‡@2ó&Á½¥Á.„NÜC,¥@2ó&Á½¥@2ùŒ~($ @2ó&Á½¥@2ú0U2a|?š•§q!U@8#˜@8¾:@8 >+?éDEâ©×?‘W_Ì?1·†Æjñ@8Î÷@8i§@8Å?”dápŠ?‘"›ö?¢Ì÷y\ÛÎ@8 * @8p÷@8¶?™^ÓnÔl©?”¦”x£b@@@?ð?ð?ðøøøøøøøøøøøø¿@¨6ËÆ§ïž@¨6ÌÌÌÌÍ@¨6ËÆ§ïž@¨6É^ž +@¨6ËÆ§ïž@¨6ÊçÕfÏ@¨6ËÆ§ïž@¨6ÊôðØE@¨6ËÆ§ïž@¨6ÌIº^5@¨6ËÆ§ïž@¨6ÊçÕfÏ@¡¿‰7KÇ@¡¿§ï±@¡¿‰7KÇ@¡¿n.±Ã@¡¿‰7KÇ@¡¿n—Ž@¡¿‰7KÇ@¡¿|ÚQ@¡¿‰7KÇ@¡¿uöý"@¡¿‰7KÇ@¡¿-à @6h†YJôñ@6fR½<6@2xr° Äœ@2x$ xG@1~V“u@1}Òñ©ûç@1(è§æ›@1)Çy¦µ @1(è§æ›@1)ùrGE@1(è§æ›@1(ÁTÉ…ñ?€‚ñêã ?’&Á¯»?“a#mU?ŽõÕJ?‘˜¯ +`É?‘·díW‚?ˆÿÀ)T¿Æ?’áÄïÃõ?‘å†36åG?‘l™šU?‘¦‘=W?‘Ê$̤T?‘¼Åâ<{?îŠõ ?„³3Z\ð…?ƒ¼9XNÄu?‡”_Õ­çW?‡gϵ’õ@@@@@*@,?ð?ð?ð?ð?ð?ð¿6aUˆ¿V€2¤H?'²¨ÔÕ?1äv0Ÿ@¨6Ëá‡@¡¿êW:Û?H8ØÞ&XQ?Q’)z±£ý?˜WÄ]Ê­?£ä?OÃ@ŸiDÝá‡.@À@¤Õ¥ãSø@¤Õ^5?}@¤Õ¥ãSø@¤ÖžùÛ"Ñ@¤Õ¥ãSø@¤Ö{"Ðå`@¤Õ¥ãSø@¤Ö Iº_@¤Õ¥ãSø@¤ÕgRT`«@¤Õ¥ãSø@¤ÕJ=p£×@¯D†$Ý/@¯D‡l‹C•@¯D†$Ý/@¯D´¼j~û@¯D†$Ý/@¯DÉxÔýô@¯D†$Ý/@¯EA‰7K@¯D†$Ý/@¯C•fÏAò@¯D†$Ý/@¯DÓ÷ÎÙ@6àØDЩ@6Ý«ŸU›=@4¦‡+ J@4hÛ‹¬q @4V”@3ÀIQ‚ª@3µµsê³h@35sê³g¡@3µµsê³h@4Mó¶E¡Ë@3µµsê³h@3†µ '¼?žˆ2}?»EÉa¬:j?ÅøºB¿?Ȇ³Î?°STýÑ;‚?‘<ƒÜ_õ?‡YÍ_?¥ˆÒ¯ó•?³M•Q±?²¸xG‚„?±oEcƒ¼r?‘KÔ#•N ?‡š¿]bœ?”£®e›Ðg?‘Ó0<ïL{?®†*®®?™GXêâ?ˆCns¥ @@@@@@?ð?ð?ð?ð?ð?ð?…ê8³€?‹4ª]€?w{x)2É?Š«º¥@¤Õ0”9@¯D¡ìŠ[?™ËöK•,?®FŽ(¶?@1¶Ê*Î q@S†LU\%O@Ÿf(ê@Á@¯ú²-VÁ.„€@¯ú²-V@¯úkš­¸^@¯ú²-V@¯úލÜàP@¯ú²-V@¯û­ ÔE@¯ú²-V@¯û òt@¯ú²-V@¯úöq†³@–h¼j~ùÛÁ.„€@–h¼j~ùÛ@–hγm(@–h¼j~ùÛ@–gª8ð@–h¼j~ùÛ@–h`îýJ•@–h¼j~ùÛ@–h„pD@–h¼j~ùÛ@–h–›ÿCó@82ÃÉîËûÁ.„>¤µÜÆ@4×+ Iº@5;u8²{@4 "Ðå`B@4G·=ÞŒ@3‘Þi­BÄ@3îzšûR6@3‘Þi­BÄ@3Ñ!A@3‘Þi­BÄ@3¹5.†@8J¨?À–pˆóë?½ž®¯'?£ do) ?­ dßý?°’ZüK@8J¨?Á”;ž]^Y?Çðé7?²)„LÝ ?·ŠeŒòr?´=¶ž +ß@8p÷?Á r`ŸÓ?¬™—s±«K?±ÎH‹b‘L?¨2“Q†·?­¨ÀË^Ð@*@,@(@<@:?ð?ð?ð?ð?ðøøøøøøøøøøøøÂ@£Wð Ä›¦@£XÄ›¥ã@£Wð Ä›¦@£WÞ5?|î@£Wð Ä›¦@£XaÊÀƒ@£Wð Ä›¦@£XL¥zxm@£Wð Ä›¦@£XŠ=p£Ø@£Wð Ä›¦Á.„€@¬e­‘hr°@¬e¬ÌÌÌÍ@¬e­‘hr°@¬dݲ-W@¬e­‘hr°@¬d¸»@¬e­‘hr°@¬e…+ÓÃa@¬e­‘hr°@¬eÄ xG@¬e­‘hr°Á.„€@8–»˜È@8dSŽóMj@4\Iº^5?@3øK]Ìcñ@3Ãt¼j~ú@3"Ðå`B@3YŒ~($ @2çö+jçÖ@3YŒ~($ @2Ùº^5?~@3YŒ~($ Á.„NÜC,¥?žŒÝÙ›P?ǯ;ÔF?Ô³Œ/#*?ÈÊ6ÔÁÁV?Á! Ù¤5ž@8Ù?°:-%šÀ?ÃÀTíŠ î?ËÃSXt'›?ÙŽVån‘?¶i©0Kª @8û—?¨À°ÒÞ@?«l{)ÞŠ?¦W¾ »ZÕ?¥wc U/?²Ì7r_@8 Ø@@@@@?ð?ð?ð?ð?ðøøøøøøøøøøøøÃ@­#•$Ý@­#˜“t¼i@­#•$ÝÁ.„€@­#•$ÝÁ.„€@­#•$ÝÁ.„€@­#•$Ý@­#ÄZ¬@­#•$Ý@­#Çl‹C—@¯0ß;dZ@¯0Û¥ãSø@¯0ß;dZÁ.„€@¯0ß;dZÁ.„€@¯0ß;dZÁ.„€@¯0ß;dZ@¯/w +=p£@¯0ß;dZ@¯/è´9X@6#g ù l@6!$Ý/@4=‘hr° Á.„M‰ûçm@3Õ`A‰7LÁ.„QnÙ‡@2ºÔ,<žíÁ.„NÜC,¥@2ºÔ,<ží@2úCþ\’@2ºÔ,<ží@2Œ¬1&ê?ˆÿÀ)T¿Æ@8#˜@8¾:@8 >+?¸ÏjeЕ?¨ü¦:ka?ˆÿÀ)T¿Æ@8Î÷@8i§@8Å?Ò,¡Û¯á?Äw[¹ä@?D/ +b°Þ@8 * @8p÷@8¶?•ó¬>¨ûÝ?¢¯À<ÝÞ@@@?ð?ð?ðøøøøøøøøøøøøÄ@«Î›"Ðå`@«Î›¥ãSø@«Î›"Ðå`@«Î¸Që…@«Î›"Ðå`@«Ïò䎋@«Î›"Ðå`@«Ïå¼£n@«Î›"Ðå`@«Ï·ö+jé@«Î›"Ðå`@«Ï¬²•éâ@ªûD“t¼@ªûDZ¬@ªûD“t¼@ªû¥‡“ݘ@ªûD“t¼@ªû}¥œà@ªûD“t¼@ªû¶”Fs‚@ªûD“t¼@ªû¡:’£@ªûD“t¼@ªû–ð¸@2ý:’£@2üàuöý"@0\Iº^5@@02•éá°Š@/|¬1&ê@/ w1Å@/(Û‹¬q @.]ÌcñA!@/(Û‹¬q @.^Ñ·Y@/(Û‹¬q @.\¾ß¤@?É^žQ5P‚?•QÂ^ø™?ÃNSCçÚQ?Ét4B¥T?ͤ±ròõ?ÐÐ-†(³?ÐbV‡,?—¿ºÖ÷?³æû8KÝ?¶!úþ!öñ?°‘0Äñ×?±ùý¿?€cPßQª? $gú‡v?Œznyž-i?˜$– Ñê?•XðküÏ?“¡NÙ(£(@@@@@,@*?ð?ð?ð?ð?ð?ð?°/XÚ ¿Eê“Ì?ž€sµ{Ê™?‰•Ï*i@«ÏŒ-múö@ªû g‚ì´?¼iTJ†?¡‚An?þìäÆm9¤µÜÆ@/ö“t¼@/õÜ5%jQ@.cn—P@.c)£`n;@-Ǔݗö,@-ÇlÅÐê@-Ǔݗö,@-Ç.J/@-Ǔݗö,@-Ç&”sˇ@8 +Näy?ÍÛòM9?‘(u‹¹HØ?‹¦ïbew?òë6­?ÃNñÓðó@82rê?’ EÇNÔ?‹ð"à ?0§j3A?× m"öƒ?Xžëú–@8L?ŒËQ=sÝß?‚À%?‚ägûȶÿ?†‘$Ñþþ‘?†–í8Ñ(@,@,@&@:@;?ð?ð?ð?ð?ðøøøøøøøøøøøøÆ@°Â\)Á.„€@°Â\)@°†L/ƒ{@°Â\)@°„›¥ãT@°Â\)@°‹…¸R@°Â\)@°Oò䎊@°Â\)@°KíúCþ@œ«8Që…Á.„€@œ«8Që…@œ«oj@œ«8Që…@œªô¼j~ú@œ«8Që…@œªÙ‡+@œ«8Që…@œ«t¼j@œ«8Që…@œ«*³g ù@8p4mÅÖ8Á.„>¤µÜÆ@3k¥ãS÷Ï@34ðØDÐ@2©Û"Ðå`@2~($ x@2 ¿±[W?@1á&éxÔþ@2 ¿±[W?@1à|„µÜÆ@2 ¿±[W?@1â×süP@8J¨?Öî÷Œ¬ûì?°Ânö Ö‹?®=“ •0˜?Lj!þ_¸ï?È ÷Vß¹Ñ@8J¨?»N4Ï7Š?§‚42¾?¯ò,?°1üTn]?²fÄF›Ž7@8p÷?¡ A™fg?©é‰ÊØo'@@@@@(@*?ð?ð?ð?ð?ð?ð¿g,!¯*¿ƒˆynÓ€?3‡h™ì’?Ró÷¢´³@ª©†þÙaò@¦È…VÚ[?Nïß ?iOÐïXvj?™û™Æ•Ö?½Ï™¢?`R@Ÿ`'æ%Ë@È@¬Ìð Ä›¦Á.„€@¬Ìð Ä›¦@¬Ìû‹¬q @¬Ìð Ä›¦@¬Ìæ?@¬Ìð Ä›¦@¬Ìî¾ß¤@@¬Ìð Ä›¦@¬ÌíOß;d@¬Ìð Ä›¦@¬Ìíí(Œæ@¡‡¥`A‰7Á.„€@¡‡¥`A‰7@¡‡±&éxÕ@¡‡¥`A‰7@¡‡¨Û‹¬q@¡‡¥`A‰7@¡‡žžš@¡‡¥`A‰7@¡‡¥œàv@¡‡¥`A‰7@¡‡£9Àëî@9–»˜ÈÁ.„>¤µÜÆ@4æ‡+ J@4ë~ÿ—$@3ÝV”@3ÜPHð@2Ì¿±[W?@2ÎvÈ´9X@2Ì¿±[W?@2Ð@2Ì¿±[W?@2Ð|„µÜÆ@8J¨?“ÓLáS{?ššÒèôɲ?d"¹QZ?–Õ“z‰öì?“^õA‰°@8J¨?–gÝ3ýø’?¢W@3tå²?”Â1`´?”s̯}¼?”F„t*•5@8p÷?’|׿pZ?’úz."?ˆ6‘F:™Ê?mŽÃÎŽ?”ø™¾@@@@*@(?ð?ð?ð?ð?ðøøøøøøøøøøøøÉ@­òÐbMÒò@­òÕ%@­òÐbMÒòÁ.„€@­òÐbMÒòÁ.„€@­òÐbMÒòÁ.„€@­òÐbMÒòÁ.„€@­òÐbMÒò@­òÅ”¯O @ $Ý/@ n—@ $Ý/Á.„€@ $Ý/Á.„€@ $Ý/Á.„€@ $Ý/Á.„€@ $Ý/@ Õ›=È@7rÃÉîËû@7rT`ªdÃ@5|í‘hrÁ.„M‰ûçm@4ä¼j~ùÛÁ.„QnÙ‡@4a:’£SÁ.„NÜC,¥@4a:’£SÁ.„NÜC,¥@4a:’£S@4s¶E¡ÊÁ?ð°–Ž]@8#˜@8¾:@8 >+@8Iç?³9!.€ê ?ð°–Ž]@8Î÷@8i§@8Å@8S?ª« +#9ï”?ð*wjs—@8 * @8p÷@8¶@8 Ø?¥J'Y=¢?ð@(?ð?ðøøøøøøøøøøøøÊ@­5»dZ¬@­5Í‘hr°@­5»dZ¬@­5Í«ŸUš@­5»dZ¬@­5¶È´9Y@­5»dZ¬@­5¨´9X@­5»dZ¬@­5Ì‹C•€@­5»dZ¬@­5¾vÈ´8@§Ï“t¼j@§Ï¸Që…@§Ï“t¼j@§Îÿö”G@§Ï“t¼j@§Ï%zxl!@§Ï“t¼j@§Ï( Ô•@§Ï“t¼j@§ÏA£n.²@§Ï“t¼j@§ÏLÙè>C@7åöý!ÿ.@7Üú¬Ùè>@4¡hr° Ä@4›C•%@3A‰7KÇ@3‡Á½¥@3¡:’£S@3¡ ²•éâ@3¡:’£S@3¿HË’@3¡:’£S@3ƒg ù l?óA[ØïF?§¤Æµï\?–•Kù̃æ?•èöyÈÜQ?–JØi™”?§Zs»¢Z?©Ùƒ|ËI?²‡†üÇS?•¥º~§?¡Dþ zC1?•MšuVÑQ?¯áƒÙ²? Ú }P!?Á½ï5Jܦ?•Wí+ Æ?˜<å05ä?‘À³ûê%§?®á)»ž0@@@@@@*?ð?ð?ð?ð?ð?ð¿hUAr?…߬¶à?wÞ`) è?iÙ\àwa@­5ÀA@§Ï4½O´?—ב¤Ë?”`ÔØ1@²+ÑG“×?Þ½_â6ÿ@Ÿl¢6k4×@Ë@ ’]²-V@ ’lÌÌÌÍ@ ’]²-VÁ.„€@ ’]²-VÁ.„€@ ’]²-VÁ.„€@ ’]²-VÁ.„€@ ’]²-VÁ.„€@2m‘hr°@2aÊÀƒ@2m‘hr°Á.„€@2m‘hr°Á.„€@2m‘hr°Á.„€@2m‘hr°Á.„€@2m‘hr°Á.„€@4uS&Á¾@4W=ãÎg @1Ê^5?|íÁ.„M‰ûçm@1H“t¼jÁ.„QnÙ‡@0úÔ,<žíÁ.„NÜC,¥@0úÔ,<žíÁ.„NÜC,¥@0úÔ,<žíÁ.„NÜC,¥?}‰c™ýI®@8#˜@8¾:@8 >+@8Iç@8Ù?|Äô­ú}q@8Î÷@8i§@8Å@8S@8û—?‚¬h3zÙ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøÌ@ À§ï²-@ À¨§æ›@ À§ï²-@ À¦v î@ À§ï²-@ À¦-Ô¹@ À§ï²-@ À®N ?‚ìxqC?†ŠúЀ>(?†–f_ÔŠŠ@@@@@(@*?ð?ð?ð?ð?ð?ð¿<ÙŒ?%å%eà?ñûºÇe?Ü)æÃÞ’@§ÓÂ…¦œ&@¦µ’u$c?,È #°K?#¹Å>ÿÝ”?TS³7T˜?A™üfÃ@Ÿs¹£û@Î@¨÷Ü(õÂ@¨÷ìÌÌÌÍ@¨÷Ü(õÂ@¨÷Ûµsë@¨÷Ü(õÂ@¨÷ÕfÏAó@¨÷Ü(õÂ@¨÷ß¾vȵ@¨÷Ü(õÂ@¨÷×Oß;@¨÷Ü(õÂ@¨÷Ø_ö”@­Hçl‹C–@­Hâ\(÷@­Hçl‹C–@­HàÄ›¥ã@­Hçl‹C–@­HÚ¬1@­Hçl‹C–@­Håzxl"@­Hçl‹C–@­Hèè§ç@­Hçl‹C–@­Hèe”¯P@5 ØDЩ@5—Xâe@3}‘hr° @3}úCþ\’@3t“t¼j@3qÿ.Hè§@2¨è§æ›@2¤êJŒL@2¨è§æ›@2¥éá°‰ @2¨è§æ›@2§Á½¥?¯oÝ ÷6}?“”üU§<­?–•Kù̃æ?‡{@áè?“XMHñëž?•zWmoàí?óA[ØïF?“áêqú ?“’OÕƒõ‘?—]à4?’ºñS©YÖ?˜ÓI­ÂÅ?´6¤_[í?Ž•ýÙ—±?†Æ‹™ÿ?„•ˆG’Z¾?Œ¸ðËb?‘4hÆpÉ„@@@@@*@(?ð?ð?ð?ð?ð?ð¿pbw¡…?Vk[?Sn’úœ›?0¶…hÛ@¨÷ÜÀCf_@­Hçu±â?eKøÀ k?QU;ªãBñ?À¯Š9?“øwè»B@Ÿo¼‡êgM@Ï@®©ùXbN@®©ù‹6Ëç@®©ùXbN@®©û,}/ @®©ùXbN@®©ü—ÊÈ@®©ùXbN@®©úŸÏ^3@®©ùXbN@®©ø™ï?@®©ùXbN@®©ø”@™’…¸Qì@™’ˆFØ¿¿@™’…¸Qì@™’„h|›ó@™’…¸Qì@™’‰»`Q«@™’…¸Qì@™’†ç6N«@™’…¸Qì@™’„÷ºñ@™’…¸Qì@™’„þDr6@7Žì¿±[X@7ä 1Âh@1¡hr° Ä@1¡ÙÓEŒÒ@0€å`A‰7@07dŒ7ì@/…oi@/…œN×°@/…oi@/…ðoiDg@/…oi@/†W€}„†?ƒ6ð]g™ä?$ëÕæG?‘$‚Ð2_Ó?‹¬=ã§@v?‘ +T* B?»pôe>—?†c£ïDì?’CW¶Ð?Uåä#v?0rìÝ>ê?éR•+¾?^´¡•à•?…ùL÷ëw?ŒÑÚ÷e?‚ÐñétbJ?‚ï%U|5?†žy½œ4h?†Ÿ¥ÊóšÁ@@$@ @"@9@5?ð?ð?ð?ð?ð?ð¿+ÓŒÏÀ¿7:éX?1Á3Ú[ž*? ¬^\ÓÝ—@®©ùJˆÎ$@™’†ŒC?QÀ”üÊ"0?-«·p‡*°?ªî|<ž ?`l`‰z@Ÿi¸ñ†´@Ð@¥ú’ñ©ûç@¥úˆr° Å@¥ú’ñ©ûçÁ.„€@¥ú’ñ©ûçÁ.„€@¥ú’ñ©ûçÁ.„€@¥ú’ñ©ûçÁ.„€@¥ú’ñ©ûçÁ.„€@¯y¤Z¬@¯y™‡+@¯y¤Z¬Á.„€@¯y¤Z¬Á.„€@¯y¤Z¬Á.„€@¯y¤Z¬Á.„€@¯y¤Z¬Á.„€@4p4mÅÖ8@4a·Xâ@2”›¥ãSøÁ.„M‰ûçm@2A‰7KÇÁ.„QnÙ‡@1O „MÁ.„NÜC,¥@1O „MÁ.„NÜC,¥@1O „MÁ.„NÜC,¥?žˆ2}@8#˜@8¾:@8 >+@8Iç@8Ù?|¬Çëý @8Î÷@8i§@8Å@8S@8û—?˜&™*0ø\@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøÑ@¨\Týó¶F@¨\Cn—@¨\Týó¶F@¨\Rñ©ûç@¨\Týó¶F@¨\^š@¨\Týó¶F@¨\Y=Ùc@¨\Týó¶F@¨\O·éø@¨\Týó¶F@¨\JqÞi­@¬ß¤Z¬@¬ß/Ÿ¾@¬ß¤Z¬@¬ß¢&€H@¬ß¤Z¬@¬ß†Â&€ž@¬ß¤Z¬@¬ß¾ í)@¬ß¤Z¬@¬ßŸ¾w@¬ß¤Z¬@¬ß”mÅÖ9@8rÃÉîËû@8p@4B° Ä›¦@4?v_Ø­¬@3’Ðå`A‰@3ŠîcŠ @3(è§æ›@3v_Ø­¬@3(è§æ›@3! [À7@3(è§æ›@3$‡ü¹#£?¡ÅꯨŠT?éDEâ©Ö?¡¶ü_΋å?•˜Ú܆‡?•RC}Ëq?›µ¥Ë»‡ ?™™™™™™š?™´¦]˜ó?•swŽ)Ò? ŒÙ¶êm¤?–ÓîTî?œa8wóì|?“mŸq`?š³á‡}?”US9úÅ?‘@fº¬o(?š3 ˜ÔDš?–7Qûñ@@@@@(@*?ð?ð?ð?ð?ð?ð?D%¾–¿c´ô&7?lÿrY·b?U÷œ¯Ä@¨\P#‡Åž@¬ß”èœ~?…>ªƒ[?s—Ê« +zY?ögOÁö?Ñef§Ž@Ÿm‡nˆáý@Ò@­+#× +=q@­+#× +=q@­+#× +=q@­+%¾À@­+#× +=q@­+$P¼=T@­+#× +=q@­+$ûrí@­+#× +=q@­+")U@­+#× +=q@­+#;Oò@“_p£× +=@“_p Ä›¦@“_p£× +=@“_m¥tMd@“_p£× +=@“_o¡Úâ@“_p£× +=@“_q.ð®@“_p£× +=@“_p‰¯ß@“_p£× +=@“_p{µ´@4õS&Á¾@4õrö|ò*@1#÷ÎÙ‡@1$2ÁÓwÌ@0PA‰7KÇ@0PP3ò:@0B‚@·€4@0BÆåA ~@0B‚@·€4@0Bó±Ñ!@0B‚@·€4@0BÞÑ·?|¬h2:“?ÐÍpPïb?‘hÌŒQK?‹öɰŸM6?ò“A]2?Ï"{@Y8?|Ñb×¶@?’AÌ*À¹?Uåä#v?=W:f&/?ÖdȨ –?Uk°>&‚?‚ªp“5/?Œ¾·EÊš?‚®Ë Ë?‚îúb²~?†·6Ö´É@?†° Ñòo@@$@ @"@2@4?ð?ð?ð?ð?ð?ð¿l–ˆÀ? È€ž`?+ÎöxNRv?õ°£5@­+#Í q4@“_pmkf?K²Šþ7s?'c»ša?¤àÖ!l&?\—=n~®@Ÿfó*]½Â@Ó@­2-V@­.Ù‡+@­2-V@­"ÞѸ@­2-V@­Ô,<ž@­2-V@­'»/ì@­2-V@­,¥zxl@­2-V@­*~ùÛ"@ª^bMÒñª@ª^wOß;@ª^bMÒñª@ª^DêJŒ@ª^bMÒñª@ª^<64@ª^bMÒñª@ª^>BZîd@ª^bMÒñª@ª^TzáG®@ª^bMÒñª@ª^Vlô"@8Bò䎊@8E '»0@3œIº^5?@3ŠkP°ò|@2Ú~ùÛ"Ñ@2ÃFÜ]cˆ@2Öý!ÿ.I@2µ$Ý/@2Öý!ÿ.I@2Ó•$Þ@2Öý!ÿ.I@2Õ¸Që…?žˆ2}?«‰O\Íê™?©ÖÌC³1?°«]m…Mä?’PY8~Qj?–"ûe”M?|öOÿÝ?²ÿãkÇ@‚?´pg}5z?³ŸÛ-w?”*v7¹¿?™J•Ø3ÈÖ?§>Ìx¢Þƒ?™¬¨YWî?£´<×?­Ðí+L?ž„ýŸÒ`Ø?Ÿba_¸†@@@@@"@(?ð?ð?ð?ð?ð?ð¿L\(†¿€AÜI?À?Sy=t& ?YP0Z®0Þ@­,ÿ œ,@ª^g늵5?sÜTàž?yõW±¶Q?écMF¿#E?óëûž¦?@ŸeBÖa@Ô@¡ê.—Oß@¡ê0 Ä›¦@¡ê.—OßÁ.„€@¡ê.—OßÁ.„€@¡ê.—OßÁ.„€@¡ê.—OßÁ.„€@¡ê.—OßÁ.„€@¤iˆ1&éy@¤iƒn—@¤iˆ1&éyÁ.„€@¤iˆ1&éyÁ.„€@¤iˆ1&éyÁ.„€@¤iˆ1&éyÁ.„€@¤iˆ1&éyÁ.„€@3쿱[X@3®}Vlô@1 Iº^5Á.„M‰ûçm@1t¼j~úÁ.„QnÙ‡@0ÑÞi­BÄÁ.„NÜC,¥@0ÑÞi­BÄÁ.„NÜC,¥@0ÑÞi­BÄÁ.„NÜC,¥?|¬Çëý @8#˜@8¾:@8 >+@8Iç@8Ù?‚á²Olºü@8Î÷@8i§@8Å@8S@8û—?†aÞàI*”@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøÕ@«û/²-Á.„€@«û/²-@«û0ØDÐ@«û/²-@«û.V“@«û/²-@«û0|„µÞ@«û/²-@«û/Aò×@«û/²-@«û.}Vlô@©Ô ÌÌÌÍÁ.„€@©Ô ÌÌÌÍ@©Ô ¸ºÇ@©Ô ÌÌÌÍ@©ÔzáG@©Ô ÌÌÌÍ@©Ô.±Ä2@©Ô ÌÌÌÍ@©Ô¾ß¤?@©Ô ÌÌÌÍ@©ÔŠqÞj@9[¹Œ~($Á.„>¤µÜÆ@2³S÷ÎÙ@2³•$Ý@1×ï²-@1؆YJôð@1YŒ~($ @1Z=p£× +@1YŒ~($ @1Z™0¾ î@1YŒ~($ @1ZÔ,<ží@8J¨?Žd±Ìº?‘t‘ócjë?ŒÇQ´æ?íOþtà?·t¤¢‚J?ÐbMçê_x?’˜‰%F²?†[‘'Í?1ð'7éÃ?ÔÒ@úˆ‘?PS2K¯™?€b¡´ñ@?Œ¯þuõí?‚nâwg?‚äÍ“½E'?†‰Oú|q?†ˆ#.÷@@@@@,@,?ð?ð?ð?ð?ð?ð¿SÓõnd?_ì;à?8Ö’e?óîµÒ(Ÿ@­/·ž]må@žò4kt?GáßµZÝ%?ýê¾Ü0G?‹üÍ(mð?WGˆó†@ŸsßµÃ@×@¯UxÔýó¶@¯UxbMÓ@¯UxÔýó¶@¯Up£× +>@¯UxÔýó¶@¯Ur-V@¯UxÔýó¶@¯UnzáH@¯UxÔýó¶@¯Ug8}¾@¯UxÔýó¶@¯Uiá°‰¡@££ŠÀƒo@££‹ Iº@££ŠÀƒo@££¬L˜^@££ŠÀƒo@££¦$Ý/@££ŠÀƒo@££³Z…‡”@££ŠÀƒo@££¶8†YJ@££ŠÀƒo@££§RT`ª@5Q|ÚQ@5R&€IR@3žÙ‡+@3“&Á½¥@3;Ƨï²@3+ÓÃa@@2¸DЩ*@2¡hr° Å@2¸DЩ*@2 -à @2¸DЩ*@2¢T`ªdÃ?|öOÿÝ?“gU·q#?”P"ÒhI?¢º™ÁLŠ?¥-wî?¦ æY²dR?„m~Z_s,?àìÚJ>?‘ +òtMŠ?ŒOà†cÍ?¢—„¯l?˜øÁ«}@@@@@,@(?ð?ð?ð?ð?ð?ð¿j¿‘æT?~j/€??Ü¿ù×?a½  ¿¹}@¯Uso¬P@££•ŒëÕ?Z°Î•ª|«6zÁ.„>¤µÜÆ@4 Iº^5Á.„M‰ûçm@3)Û"Ðå`Á.„QnÙ‡@2ò䎊rÁ.„NÜC,¥@2ò䎊rÁ.„NÜC,¥@2ò䎊rÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøÚ@©féxÔþ@©;dZ¬@©féxÔþÁ.„€@©féxÔþÁ.„€@©féxÔþÁ.„€@©féxÔþÁ.„€@©féxÔþÁ.„€@Ÿ»Oß;d@Ÿ»‰7Kƨ@Ÿ»Oß;dÁ.„€@Ÿ»Oß;dÁ.„€@Ÿ»Oß;dÁ.„€@Ÿ»Oß;dÁ.„€@Ÿ»Oß;dÁ.„€@8N쿱[X@8m²-V@5sS÷ÎÙÁ.„M‰ûçm@5@å`A‰7Á.„QnÙ‡@4s&Á½¥Á.„NÜC,¥@4s&Á½¥Á.„NÜC,¥@4s&Á½¥Á.„NÜC,¥?ð°–Ž]@8#˜@8¾:@8 >+@8Iç@8Ù?ð°–Ž]@8Î÷@8i§@8Å@8S@8û—?ð*wjs—@8 * @8p÷@8¶@8 Ø@8 Ø?ð?ðøøøøøøøøøøøøÛ@£Í¸Qì@£ÍZ¬@£Í¸Qì@£Í“t¼@£Í¸Qì@£ÌþÑ·@£Í¸Qì@£Ìüàuöý@£Í¸Qì@£Ìù™™™š@£Í¸Qì@£ÌýÌcñA@¢0Ö“u@¢0ÕÂ\)@¢0Ö“u@¢0ÓŽóMk@¢0Ö“u@¢0Ô,<ží@¢0Ö“u@¢0Ô‡ü¹$@¢0Ö“u@¢0Ó÷ÎÙ@¢0Ö“u@¢0Òòä@4£g ù l@4¢h Ô•@0°Ä›¥ãT@0®¤¨ÁTÊ@0A‰7KÇ@0Œ¥zxl"@/ܾߤ@@/Ô¢3œ¾@/ܾߤ@@/Ô`ªdÂù@/ܾߤ@@/Õ2a|Û?|öOÿÝ?%¼ÇÆÃ±?“â÷!N?,¡r×gÁ?•rf?¢ê€?‘À?ÙÂ#’?|öOÿÝ?’u¦ieõ–?“v@á¿bî?‘jýÚXÜ?‘+ùÔ!½‹?äqÅYÈ?‚ÂÌ]å?ŒÆò/¢äÍ?„ò—TËÄ?„XïWÉò~?‡…¤$Ó?‡L8õASÎ@@@@@,@&?ð?ð?ð?ð?ð?ð¿^óÛø¿D<} ?C¯ËNE‹?#ý9 [¸@£Íc3@¢0Ô‚ <±?c·ËšŠ€­??‚º'äÄÿ?ÑÓœu=V?‰BßõBW(@Ÿfi[7f)@Ü@ "gl‹C–@ "dÝ/ @ "gl‹C–@ "jˆ³‚i@ "gl‹C–@ "q ²•ë@ "gl‹C–@ "gjÈeô@ "gl‹C–@ "fYWH°@ "gl‹C–@ "e®æ1ù@¨ °£× +=@¨ °=±¹Y@¨ °£× +=@¨ ¯#¦'a@¨ °£× +=@¨ °ßºcq@¨ °£× +=@¨ ¯:²µþ@¨ °£× +=@¨ ¯cÚÅn@¨ °£× +=@¨ ¯:Zþ@6²ÃÉîËû@6°AûY¬ @1Yº^5?}@1] +ïc‚@/ΗOß<@/Üó©-µ±@.úÇË)_@/ziçUõ@.úÇË)_@.û¤¿Ê.@.úÇË)_@.ü© +\†ö?|¬h2:“?äE««²Ø?‘(™Ö€?‹¸³…_¼‘?ûÁ ÿW?»pôe>—?‚Ú¡ËG7ø•©Òp>ý ¬så@®3ÊšÊef@¬B¨ÏNGÜ?¦ –‘¤? ʘH¥@1‘Þi­BÄ@0©=Ùb·@1‘Þi­BÄ@0¤•*™1?‚á²Olºü?Ú™ U–?Ñ-Ì\8?ÀlˆfW¬?×ù¦½é‚?ÜôäO©#? Eˆ‡ðó‹?²š5¥´¢?¿»1ˆÙ?»5;7Ä»M?È4Ö="C!?ÏEÏSŒ±?˜Ð™Q$Ò?œÎgœTíþ?™Ä¶BϪ?“äÐå÷à?Ú¾ÉÛ²º?–{=rƒ™K@@@@@*@*?ð?ð?ð?ð?ð?ð?Ãs¡÷ø(?²¶O9¨P?Ÿ˜Do¡Á?oŽËƒÙ@£ÉŒ‘Ò@¨!±ûà~?«.Å8r†÷?”2MÚwø@6¹Oå`ÿ?ç2âD +@Ÿ\¶oÔ|@ß@­ŸA$Ý/@­Ÿ2° Äœ@­ŸA$Ý/@­Ÿ?|í‘g@­ŸA$Ý/@­Ÿ1&éxÕ@­ŸA$Ý/@­Ÿ)ùrG@­ŸA$Ý/@­Ÿ,cñA @­ŸA$Ý/@­ŸL篹@¦ÈdÝ/ @¦Èy‡+@¦ÈdÝ/ @¦Èk…¸R@¦ÈdÝ/ @¦ÈnV“@¦ÈdÝ/ @¦Èbø7´¢@¦ÈdÝ/ @¦Èk]Ìcñ@¦ÈdÝ/ @¦ÈU›=@8žHè§æ@7ñuŽ!–S@4\Iº^5?@4_ªÍžƒä@3y7KƧð@3ÿ.Hè§@3ž«6z‘@3¦_Ø­« @3ž«6z‘@3¤‡ü¹#£@3ž«6z‘@3A [À?DzʘzT?£ Ú³ñ?¤½’ƒÚc?˜ŸÉZ ÃT?¥r.,¨i†?¥à×Ê/?˜ž^ƒÿ*ˆ? Í”{Í?¢zhû›\¾?žuÉ>—M?£ ƒU¾Š?¬ÞçP°ÐI?õT€…tn?Ÿ$Ìj½BÙ?’q6tNø6?—4`¾ÓÍì?•*†*Zû?­ìpÔÍ@@@@@(@*?ð?ð?ð?ð?ð?ð?‡™ ÇãÀ¿ƒö2Èö?vãß„ÛÅŽ?yMõë6ª@­Ÿ0e½­z@¦È[PB'­?†Ïšh?œ-ð+«ýÍ?å^µœn!æ@ êúF< +T@Ÿo¨°W(ê@à@¬¹’n—P@¬¸áÊÀƒ@¬¹’n—P@¬¹u0ð@¬¹’n—P@¬¹9!±Ï@¬¹’n—P@¬¹—¸m@¬¹’n—P@¬¹•ÔGi”@¬¹’n—P@¬¹’Ø€ûv@“dixÔýô@“bÚàm—@“dixÔýô@“di³2 @“dixÔýô@“dZ¢U]@“dixÔýô@“d\ÆwÇ@“dixÔýô@“da#3G @“dixÔýô@“d^ð÷@8è†YJôñ@7±Û ú–Æ@4\Iº^5?@4U¤ÐkAV@3K"Ðå`B@3B)µàÎ@3‚@·€5@3”,ä@3‚@·€5@2þãd?³@3‚@·€5@3-Q÷-b?ØqT Ä?ž`ñýŸMÉ?—:Ò–DåÎ?‘ð8©(/?’‡#<'?–5xw!¬?â‹_¡Rè?ŸÆçp‚")?–w žº?”yáÜ$¨Ã?’$;î™d3?‘{è,o®û?þ~6„×Èé?’‰½"„Ú?‡5«òì¤?‰ð’;MeÙ?Š_¦òûûœ?Œ#"oØ…K@@*@&@*@2@6?ð?ð?ð?ð?ð?ð¿Q],íª?B4L£¼@?pŠAÀ_ùl?fÎ\Ó–„@¬¹•Qü…„@“d^sd•Œ?}ÇËlœ}˜?t¡ÂT³€5?ìæ„`¾NÒ?ÜלvúJ@Ÿs‹xÏ9@@á@¥ì1&é@¥æffff@¥ì1&é@¥åzxl"@¥ì1&é@¥ì¥zxl@¥ì1&é@¥í‘hr°@¥ì1&é@¥î—Oß@¥ì1&é@¥í„M;@¯ŠÀƒo@¯„›¥ãT@¯ŠÀƒo@¯{~ÿ—@¯ŠÀƒo@¯z^5?~@¯ŠÀƒo@¯mV@¯ŠÀƒo@¯vð¹@¯ŠÀƒo@¯s¶E¡Ë@8?–»˜È@8/Ë’:)È@4B° Ä›¦@4M@¨CTTȺ@¯fî¼ÿ±€?{AVÀ^?V[éÖ¾{ð?ߎ{@ ˆ?˜HÏoLh@Ÿr0-`u@ã@©_!G®{Á.„€@©_!G®{@©`0£× +>@©_!G®{@©`ªdÂ÷@©_!G®{@©`}—ö+j@©_!G®{@©`KC•@©_!G®{@©`?.Hè§@ ¯·ÎÙ‡Á.„€@ ¯·ÎÙ‡@ ±/ „M@ ¯·ÎÙ‡@ °ðË)^ž@ ¯·ÎÙ‡@ ±T!-w@ ¯·ÎÙ‡@ ±ÿ.Hé@ ¯·ÎÙ‡@ ±“Ý—ö+@9šÔ,<ŸÁ.„>¤µÜÆ@4½‘hr° @3Ñ‚©“ á@3ÒÐå`A‰@3z–¼@3Š0U2a|@2~ùÛ"Ðæ@3Š0U2a|@2um\ú¬Ú@3Š0U2a|@2y#¢œw›@8J¨?©•È–¿g?¡rF§‚Å)?¡¤ˆ«>?·rýƒá7?¬cíxë â@8J¨?ÇàI>Wj?¡4þŒk†U?£Á4œÝi?ÆUT¼jî?¿>Äy÷ú@8p÷?—b…ªH=?‡~ ~ã?>æ¿Îï?IÏáå$?¾Á{þÆ%@@@@,@(?ð?ð?ð?ð?ðøøøøøøøøøøøøä@ ¿âÐå`B@ ¿Í±›-ž@ ¿âÐå`B@ ¿×…*>~@ ¿âÐå`B@ ¿ßž9)­@ ¿âÐå`B@ ¿êš*Ó¿@ ¿âÐå`B@ ¿â,ø—@ ¿âÐå`B@ ¿â´Ì"¸@¬høQë…@¬i$¼>± +@¬høQë…@¬hý`´wF@¬høQë…@¬hðhfR@¬høQë…@¬hê’Æ{F@¬høQë…@¬hÔ-nãZ@¬høQë…@¬hïIDC@75S&Á¾@74mŠÝC@40Ä›¥ãT@42žfn@3È“t¼j@3ÚJ³•@²@2ÏO „M@2åpÖ0ƒ@2ÏO „M@2Þæñ ,é@2ÏO „M@2Ý”,L•O?¥—å–?®Ôcö8?›a»òî?çÓ¯×/?•[_¸Ž0?“òÿ|‘G»?Á[‚ÎÉy?’PéC9 +ë?šd)EÑÕÓ?¢Zé¢gæ¹?“Ëî4ó…°?™]Úex‰?Ð}Wä‡?”6ÄTW;?Š_›àq¿Z?§§Î)–N?Œ{:5ÞiÍ?“ýý#¯@@$@*@,@6@8?ð?ð?ð?ð?ð?ð?P{Í¿2)9Þ0?o -xÚ[ö?ˆ­ÉäZß@ ¿äç‰Û~@¬háÇ8?ƒèJ MT\?–ƒu×PœR?üFùÇ‚_@­¼½l@Ÿry±“ +:¥7?–|€‹èÔ2?–f¦¢‚~ƒ?¹ñø« 2¶?‘­$÷Ì™?Ž5-³³?‰pWúÏ¿Ö?Â-qvP?“üO<ˆþï@@$@$@&@9@7?ð?ð?ð?ð?ð?ð?r68€?]±cÊ·€?eI"xð—%?hÔ×p…@­¨¢ãíï¤@— c/Eåj?}+”Õ˜Ý?x~H¨O­ô?í¾µŽg-ø?ß â|Œ@ŸqµkÙd@æ@¬eÈ´9XÁ.„€@¬eÈ´9X@¬e¶ð¸@¬eÈ´9X@¬e‘&éxÕ@¬eÈ´9X@¬e¯O „N@¬eÈ´9X@¬eßåÉ@¬eÈ´9XÁ.„€@¢.Ÿ¾vÉÁ.„€@¢.Ÿ¾vÉ@¢.ùÛ"Ñ@¢.Ÿ¾vÉ@¢.¼j~ú@¢.Ÿ¾vÉ@¢.)á°‰ @¢.Ÿ¾vÉ@¢.;ô‡ü¹@¢.Ÿ¾vÉÁ.„€@7IÎ_oÒÁ.„>¤µÜÆ@2W+ Iº@2Sa@N¤@2t“t¼j@2‚-V@1a:’£S@1hQë…¸@1a:’£S@1Wï²-@1a:’£SÁ.„NÜC,¥@8J¨?‘u:|ñ²¨?Ÿ!=T®?â?žéQÁö£?¥õŒôÓ"@8Ù@8J¨?”¤P ƒË?’ðÀ,°ø?—d¨XM?¡G÷fx^K@8û—@8p÷?›ì8h z=?³çÞOÚD?¡‹ áQ´??ž S è›@8 Ø@@@@&?ð?ð?ð?ðøøøøøøøøøøøøç@ª¸÷ÎÙ‡@ª¸ñƒçù`@ª¸÷ÎÙ‡@ª¸ñ@Çß@ª¸÷ÎÙ‡@ª¸ùT6ö@ª¸÷ÎÙ‡@ª¸ìkj0@ª¸÷ÎÙ‡@ª¸ðÕÊŸ@@ª¸÷ÎÙ‡@ª¸óHÇgÀ@›ð€@›ð†ë,‡Ä@›ð€@›ðÆ|E@›ð€@›ð‚ðUú@›ð€@›ð‰_ý!Ÿ@›ð€@›ðuý_5@›ð€@›ð„§Y|K@7Ç>«6z@7¾þ·76@4J^5?|í@4E áÉÝ@3M²-V@3Lé/×r@38DЩ*@32Ö~AoÞ@38DЩ*@333áM‡@38DЩ*@35õñ–äŽ?Ž\Õl6Ò?–·±áå0?”9 %S½?Œ† }-.Ý?“;<äA›«?À|ÏtËE?œÆæXÆd?“qÌ©ào?’†jN(˜É?³)0ù•?•ø~# ?’ ð½:(œ?‰%‡Ø„DZ?ŽƒÈS­t"?…øf‚ËkÄ?†V¼™²ä?ˆ•úæ©ß?×2в@@(@$@ @0@.?ð?ð?ð?ð?ð?ð?.H²Z¿M-ôBZ?PQ6Ÿ?[A¶˜iÃi@ª¸ðEØT@›ðƒ¨Èïi?n¬º[Oܬ?tØ?MßÞK?Ü#µY$R?àí7úK•@Ÿm’Ì XQ@è@¡rÄ“t¼@¡rÅ¡ÊÀƒ@¡rÄ“t¼@¡rÅ¡ÊÀ„@¡rÄ“t¼@¡rÃñA \@¡rÄ“t¼@¡rÆs×Ü@¡rÄ“t¼@¡rÂ@·€4@¡rÄ“t¼@¡rÂMÒñª@§Õ¯²-@§Õ±ë…¸@§Õ¯²-@§Õ®óMj@§Õ¯²-@§Õ­5¨Xy@§Õ¯²-@§Õ²ÊW§‡@§Õ¯²-@§Õ¯v_Ø®@§Õ¯²-@§Õ®Ù‡*@6D¯O „M@6EÂ\(ö@2k¥ãS÷Ï@2k¹Œ~($@1×ï²-@1×€4mÅÖ@1._oÒ @1,1&éy@1._oÒ @1,‘ÑN;Î@1._oÒ @1,í‘hr°?€‚ñêã ?ï1ïºÅ?‘\H{gX ?ŒÖ +Äȱ?“2{Áw¸?‘W×ý°A?|öOÿÝ?’4 "ëžØ? Dñ£P?’GÎ>GÅ?‘êë·áþA?’ ÃCÀ`ú?„³3Z\ð„?2ô]7?‚ù…žÄ`x?Šˆ€!B®?‡Õ˜]–GÄ?‰_uñšó@@@@@,@*?ð?ð?ð?ð?ð?ð¿Bý/›¿@WtÆh?9zÍŸñi—?3Ô‘¯¨N@¡rÄ¢g›Ú@§Õ°ýŒú¼?Y6Ô3Ê ?T 99ªq©?½jQþ*?³ +:¦÷ê@ŸfþÄ€@é@«p@«o¼í‘hs@«p@«oü¬1'@«p@«p¶®}U@«p@«p ¹Œ~)@«p@«p ûµt@«p@«pÅm\ú@«ÑÒñ©ü@«Ñ¼í‘hs@«ÑÒñ©ü@«Ñƒ9Àëí@«ÑÒñ©ü@«Ñ„êJŒ@«ÑÒñ©ü@«ÑquŽ@«ÑÒñ©ü@«Ñà r@«ÑÒñ©ü@«ÑŒô!-@8ÿ–»˜È@8ì¥zxl#@4áhr° Ä@4æÁ½¥@3ìj~ùÛ#@3ñÎ_p@3”mÅÖ8†@3™Çy¦µ @3”mÅÖ8†@3“œ¾ß¤@3”mÅÖ8†@3oÒòå?ÏÁ³Uy?’°BÉô-?[_œ(Ä? ãçùÇùw?“Ïb³0)3?§—´ ¼r?Á,æ*D7Ö?œ"ÛJÓUO?¦P{ìjÿ?“ÅÒÏPÉä?‘†óèJL\?™J•Ø3ÈÖ?Îî÷! ˜È?Ÿ‚Þ'h»?“àÕèéa‚?Ž«]O8èº?·♊N?¥È©¾ó‚ž@@@@@$@,?ð?ð?ð?ð?ð?ð?~ îÈ[¿W­)®?wyšI®=û?hJFÒ±@«p Åg6ƒ@«ÑØqx/?€ÞF[)?u†}ηx?áã8E-^ œ?è±1uw@¢*~ÞMlJ@¨&挿CX?C5 hG6?$½í‹IŽß?ñŒ…>?B¾~‚q²F@Ÿs¨OÔ±@ì@¬[?|í‘h@¬[<ÈsD™@¬[?|í‘h@¬[< aWB@¬[?|í‘h@¬[@µ<Õ@¬[?|í‘h@¬[>ÔIb²@¬[?|í‘h@¬[?O€yÍ@¬[?|í‘h@¬[?á†h@šø‚ Iº^@šø‚\(õ@šø‚ Iº^@šø€¢€–U@šø‚ Iº^@šøƒ»@šø‚ Iº^@šø~¾Ί@šø‚ Iº^@šø…S]ÏH@šø‚ Iº^@šø„G[åR@6ð4mÅÖ8@6ðbaênØ@2Å?|í‘h@2Ƥ#ͽÆ@2å`A‰7@2&ýëá\@1cÉîËû@1d¢†Øû@1cÉîËû@1c¥œ?©@1cÉîËû@1c¶–•G€?ñ3<' ?O©äú?‘£­ÿÃÏ?‹¬½Þꃩ?‘¯5Gí±½?‘Qãm²0I?†‡+ Iº?’$%Ÿè'?ãõÞ¿`?0Ò£Ìî ?‘Qõ9¥ï?ô<üîìG?Žh 3·œA?k…f¼ü ?‚׆W­–?ƒ$æJîÇ?†ç¬CÈ?†ôð¾6^@@&@(@ @4@2?ð?ð?ð?ð?ð?ð?EIh\h?&®–áÐ? ³ozA«7?87;g¡Ë¤@¬[>nà¿L@šø‚°½½?,ô+·öe?X?܃ݴ?bD®n” ?µ$Å](6@Ÿi/›^¤.@í@¡ñ&éxÕ@¡íOß;d@¡ñ&éxÕ@¡Î'*û"@¡ñ&éxÕ@¡œ}ûÙ@¡ñ&éxÕ@¡è?¨$@¡ñ&éxÕ@¡ö p @¡ñ&éxÕ@¡…:(@Ÿ]üí‘hs@Ÿ]çï².@Ÿ]üí‘hs@Ÿ]±7ñý¨@Ÿ]üí‘hs@Ÿ]sùå3@Ÿ]üí‘hs@Ÿ]Ã>äô,@Ÿ]üí‘hs@Ÿ]°ì)oñ@Ÿ]üí‘hs@Ÿ]öõ•›6@8 Î_oÒ@8åÉä@2Ùº^5?}@2ÇÝ ˆþW@2ˆ“t¼j@2A´P%ä@1kxFÜ^@1M¡-o#@1kxFÜ^@1I‹~Í_@1kxFÜ^@1^%\ïI”?æ ç«Z–?§›BÞ +à‰? "|æ=e?œã}MãmH?š0„ÈRpµ?—!¬CÔ?æ ç«Z–?¬~9;¸xN? ýŒsEj?œ +ø@Ÿjn‰[ØS@ï@¥ +ËÆ§ïžÁ.„€@¥ +ËÆ§ïžÁ.„€@¥ +ËÆ§ïžÁ.„€@¥ +ËÆ§ïžÁ.„€@¥ +ËÆ§ïžÁ.„€@¥ +ËÆ§ïžÁ.„€@š ¢Ðå`BÁ.„€@š ¢Ðå`BÁ.„€@š ¢Ðå`BÁ.„€@š ¢Ðå`BÁ.„€@š ¢Ðå`BÁ.„€@š ¢Ðå`BÁ.„€@8¯O „MÁ.„>¤µÜÆ@4’ Iº^5Á.„M‰ûçm@4Ðå`A‰Á.„QnÙ‡@3”mÅÖ8†Á.„NÜC,¥@3”mÅÖ8†Á.„NÜC,¥@3”mÅÖ8†Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøð@®ªë…¸@®ª`ƒn™@®ªë…¸@®ªa|Ú@®ªë…¸@®ªë…¸@®ªë…¸@®ªbMÓ@®ªë…¸@®ªùrGE@®ªë…¸@®ªGE8î@©8ýó¶E¢@©8‘ë…¸@©8ýó¶E¢@©8þÑ·@©8ýó¶E¢@©8ý¥œà@©8ýó¶E¢@©8øy=Ù~@©8ýó¶E¢@©9Ý/ @©8ýó¶E¢@©8ùÀëíû@7ÿ–»˜È@7Éûçl‹D@3ÞÙ‡+@3áä÷eý‹@2ˆ“t¼j@2‹’:)Çz@2Œ¿±[W?@2'»/ìW@2Œ¿±[W?@2ˆ7´¢3œ@2Œ¿±[W?@2ŽHè§ç?Ûa‚ßi?—hÄ”V?’ʶ‹ùs?Ž,OêK˜u?–JØi™”?•(Ï¢Uÿ?ÙYܲð?˜ü^Š1??• -o‡É§?‘Ò–¬q?¡ºøò¤âÍ?“ 3—·²W?׬˜çß?’pP‡È»?† + Ðló]?†ü¢q+ÄU?Š—à `ž?mŽÃÎŽ@@@@@,@(?ð?ð?ð?ð?ð?ð¿i®@R?QïÞz®À?^zž)ý ?iرô­ƒŠ@®ªI—«@©8úQ ®û?m/ìoו ?{pbf_?ÌÜD߉EÎ?äÃl\lÎ@Ÿr·Ç¬ <@ñ@¯>+…¸R@¯>+ Iº@¯>+…¸R@¯>,ô!.@¯>+…¸R@¯>+àÞÒ‰@¯>+…¸R@¯>-\ú¬Ú@¯>+…¸R@¯>+)^ž@¯>+…¸R@¯>+ I»@ ý*~ùÛ#@ ý)ûçl‹@ ý*~ùÛ#@ ý*JŒM@ ý*~ùÛ#@ ý+)^ž@ ý*~ùÛ#@ ý*³g ù@ ý*~ùÛ#@ ý*qÞi­@ ý*~ùÛ#@ ý+¹Œ~(@4‘|ÚQ@4ޱÄ2ÊX@0žÙ‡+@0ž—Oß;@0A‰7KÇ@0N¤¨ÁT@/(Û‹¬q @/)Dg8~@/(Û‹¬q @/(>BZîd@/(Û‹¬q @/(´9Xb?ð°–Ž]?õ¹Ëh?‘D&»ä?Œ:Z2‚b?‘Dj?ë+ʦÜ_?ð°–Ž]?’ÍîfÕ? Dñ£P?CÚ B÷?ñ«Ý„ Õ?«àÓ RÆ?ð*wjs—?Œáò¯ž¼ù?‚|׿pZ?ƒ¦$H?†špk Y?†µ°jÆÃ?ð@@@@&@*?ð?ð?ð?ð?ð?ð¿QÝ«Ä?:¿ú?2šÍ5Á*Â?2çÊÖ®@¯>+ð¤Á¯@ ý*ñÚ?Aµ?»ØF©?A›îË7I?}Ï·A¬ª?zäS'sJ@Ÿs…87e@ò@®Ðõ?|í‘@®Ñ Iº]@®Ðõ?|í‘@®Ðóïò¨@®Ðõ?|í‘@®Ðõ¢öºL@®Ðõ?|í‘@®Ðõ: ¥Œ@®Ðõ?|í‘@®ÐòŠm, +@®Ðõ?|í‘@®Ð÷Šqq…@˜ Ä›¥ã@˜"•™Ø^@˜ Ä›¥ã@˜0zØËé@˜ Ä›¥ã@˜rX–V@˜ Ä›¥ã@˜A³öÐ@˜ Ä›¥ã@˜8ºïñ@˜ Ä›¥ã@˜,T|þ@9Hè§ç@9+âÙ¦@3Ê^5?|í@3ÐjJèJ@3²-V@3##N™à@2}cˆe”°@2ƒÚ]6væ@2}cˆe”°@2{Ô¸æAQ@2}cˆe”°@2…¸pe°?§›&°#;?ÝÙä3ð?–Õ)`x¿y?ÙzëÄö?’:׉êÑ?’ŸÜùý?£Vå”Åz?“Ú)?¡T‘H³N?ï=?’6ad á=?’p<þþe‹?¸ TÆûØv?D‡¡ÖýÌ?„Ôô²*™ÿ?†%"¸ü?‡‚¹§JDà?Š0‹Ñr;ü@@ @*@&@7@8?ð?ð?ð?ð?ð?ð¿Op x$¿`Ü}‘€?]A?I±Fƒ?q©²L„ßz@®Ðõê° Æ@˜-ÆÎ]?q¹!¸¿¥?†è¹ Ȱ?ÙYüæÁº\@ÒþíB“½@ŸpV¢BÎ@ó@¥[ +=p£×@¥[ ûçl‹@¥[ +=p£×@¥[ jçÕg@¥[ +=p£×@¥[ +™0¾@¥[ +=p£×@¥[ C•@¥[ +=p£×@¥[ +=p£×@¥[ +=p£×@¥[ ÞÒ@­9`Ä›¥ã@­9`Ä›¥ã@­9`Ä›¥ã@­9b@·€4@­9`Ä›¥ã@­9`uöý"@­9`Ä›¥ã@­9`IQ‚@­9`Ä›¥ã@­9b\(ö@­9`Ä›¥ã@­9a [À@4Ç>«6z@4Ç$tSŽô@1 +^5?|î@1 +Ô,<žì@0v§ï²-@0vÈ´9X@0 ù kº@0â‚@·€@0 ù kº@0Oß;e@0 ù kº@0†Â&€ž?|öOÿÝ?*£|3Né?‘°&޲P?ŒArUã@?‘ ·èf?‘£.'É?}Ñ¿ž,?’LÁŒÀ´a?§^ ÿo˜?]bËn~?‘!U?Ð{Ò?hï,ðà?ƒ¡É^&Ö?ŒÖ +ÄȲ?‚ÂÌ]æ?‚þ——³§ø?†Ü‘ °Ô?†ÃÛSPã@@@@@*@&?ð?ð?ð?ð?ð?ð¾îZœb?&ùõ‡ ?-ŠÂ÷±“²?&Š‚Gj}@¥[ +vcG@­9a"ä1Q?Mps»µƒ:?Fü9;„Ät?§Hi ?šžS=-ðv@Ÿg •vä@ô@¬ÔÞ¸Që…@¬Ôݲ-V@¬ÔÞ¸Që…@¬ÔÞ‰ŒUí@¬ÔÞ¸Që…@¬ÔÞ‹Æ^Z@¬ÔÞ¸Që…@¬ÔÝmk„6@¬ÔÞ¸Që…@¬ÔÞ[íE<@¬ÔÞ¸Që…@¬ÔÝ_/ëÇ@–‡ð£× +=@–‡è Ô•@–‡ð£× +=@–‡ôÌö”@–‡ð£× +=@–‡ïȈ¹@–‡ð£× +=@–‡ð'8®@–‡ð£× +=@–‡îÕ˜M@–‡ð£× +=@–‡ï@oC@6” xFÜ@6‘eÚ>iÎ@2^Ù‡+@2^x†çˆ@2.ùÛ"Ðæ@2-Yû×ò@1s&Á½¥@1q¤é›@1s&Á½¥@1rIR1I@1s&Á½¥@1qyAê¥?€‘gQÚÃ?©ýSÏìÅ?‘ÀbÑÀç?Œ´›È?‘ÇÜc娸?‘PÉRŸŒ?|ï"<¶~~?“¿ñ#ëu?‘^Ö:[Î,? íkßÞ?‘w«~A?¹ØÖ3?„ö–'@¡è?ŒÚ¦üˆƒ?†[µó¥t‚?ƒ•sç +í ?‡÷2o»9?‡5zj›«@@(@$@$@9@6?ð?ð?ð?ð?ð?ð¾Ásëø?L†[d?Ìt:ÇDž?.:EÑ•i@¬ÔÝ®Uà@–‡ìÁî?:u, Í?O°zˆ¤?H¸A>q?§Óbù]ÕH@Ÿg2ŒpÎ|@õ@§[ݲ-V@§[ݲ-V@§[ݲ-V@§[Þi­BÄ@§[ݲ-V@§[ÝÙb·@§[ݲ-V@§[ÞÑ·@§[ݲ-V@§[Ü]cˆf@§[ݲ-V@§[Ûçl‹E@°n—P@°n—P@°n—P@°¤¨ÁU@°n—P@° Ô•+@°n—P@° …ðoj@°n—P@° ]Ìcñ@°n—P@° Òñ©û@3Ù*0U2b@3ÙQ‚©“ @/žùÛ"Ðå@/œàuöý"@/dZ¬@/FÜ]d@.-úCþ\’@.*#9Àëî@.-úCþ\’@.*~ùÛ"Ð@.-úCþ\’@.*¦L/ƒ|?|¬Çëý ?dYûë„{?‘£Ä›è?ŽÆv‹‰k?‘‘n{ÆäK?ý‰w'¬?|¬Çëý ?’j•×›c?‘ŽütÅÒ(?‘èÒ§ˆ„Æ?‘c3¸cÜ(?‘á.†8?‚˜YªüÏE?ŒË›Í‡Çq?‚¯­Ù¤Á¶?ƒ*|š\/´?†špk Y?‡&üòI@@@@@,@*?ð?ð?ð?ð?ð?ð¿3ÜÕ€¿G×8t\?$2e¬XD?6Ñãe2f[@§[Ý)¨‘@°ï`Ëi?DAÝ€â?WG6ÀÕ8@2OO „M@2L篷é?¡ë MV{¶?¹sOeÖwS?›(`¥Æ´?¥__z8Ž`?g;+³ûu?¦ŠãóŒìš?Žì«ÍÊ#?¾Iû ÖÒÍ?’ðÀ,°ø?¦róPès¥?¦kG r©Ï?©Êâaþ¾?—¹|­T â?žTK eð?”³Ž+k?ŸB-j·ï?¬D©`Ä?¡‘8²™ç@@@@@,@*?ð?ð?ð?ð?ð?ð¿t ºŸì¿~`H?~y(Kæ¬u?]IXêwe@§„zˆ5æÚ@œÊ]êt–?›—? p™Œ?€‰Rp@Š6´S?Ù¥„¨È÷f@Ÿi”³uÎd@÷@¤ìŠÀƒo@¤ì‰Y:1¨@¤ìŠÀƒoÁ.„€@¤ìŠÀƒoÁ.„€@¤ìŠÀƒoÁ.„€@¤ìŠÀƒoÁ.„€@¤ìŠÀƒoÁ.„€@$D›¥ãT@$Qèó@Ñ@$D›¥ãTÁ.„€@$D›¥ãTÁ.„€@$D›¥ãTÁ.„€@$D›¥ãTÁ.„€@$D›¥ãTÁ.„€@8VšÔ,<Ÿ@8;ô‡ü¹$@4Å?|í‘hÁ.„M‰ûçm@4¢-VÁ.„QnÙ‡@4 ¿±[W?Á.„NÜC,¥@4 ¿±[W?Á.„NÜC,¥@4 ¿±[W?Á.„NÜC,¥?®ÌÅþõ¤À@8#˜@8¾:@8 >+@8Iç@8Ù?²ŒNìK3Í@8Î÷@8i§@8Å@8S@8û—?¢O>Fâ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøø@¥NÙ‡+@¥j~ùÛ"@¥NÙ‡+@¥'†Â&@¥NÙ‡+@¥Ä2ÊX@¥NÙ‡+@¥÷eý‹@¥NÙ‡+@¥õÂ\@¥NÙ‡+@¥ á°‰Ÿ@­tvÈ´9X@­tˆ´9X@­tvÈ´9X@­tN;Í5§@­tvÈ´9X@­tD2ÊW¨@­tvÈ´9X@­tF§ï²@­tvÈ´9X@­tDÝ/ @­tvÈ´9X@­t=Ùb·@8Œ]cˆe”@8yDg8~@3uãS÷ÎÙ@3\ÓZ…‡”@2ù7KƧð@2Ò©“ àß@25µsê³h@2 <64@25µsê³h@2Ov_Ø®@25µsê³h@2 <žì¿²?½=,ÜŠ{g? È»v\¶?¤½’ƒÚc? Tã|ø2Ñ?¡YË@ÜíÛ?©©åðLè…?´ Z è´ß?&”ðÚ˜?£€-S¡^?›=:=N…>?œC]F~Ü?°•†(z@†?º‡Øpi?œ‘z¥æ?‹v'þ­X?…âC£½¾Ý?‰w¿˜Í¶ª?Š`½i=ÓØ@@@@@*@*?ð?ð?ð?ð?ð?ð¿€ü¸)¥¿‡„9‹?„ðÕ"[êº?y;ØÝ÷3…@¥ `¢ôR@­tH¬±-?–CѱK€ª?ŠPäTD‹@öAÅÏ„\?ð…é`¦%*@Ÿo-±û‚@ù@¥-ØbMÓ@¥-ÖE¡ÊÁ@¥-ØbMÓ@¥-Ó×Ûõ@¥-ØbMÓ@¥-ÏŸ¾w@¥-ØbMÓ@¥-Ò×sü@¥-ØbMÓ@¥-×eýŠÛ@¥-ØbMÓ@¥-Ô!-w@«bMÒò@«’n—P@«bMÒò@«”¯O „@«bMÒò@«“3332@«bMÒò@«‹íúCÿ@«bMÒò@«•µsê³@«bMÒò@«:û~‘@6” xFÜ@6•ðoiDh@3E?|í‘h@3IÇy¦µ @2•`A‰7L@2˜y=Ùc@2#ÉîËû@2)ã¼Ó@2#ÉîËû@2)rGE8ð@2#ÉîËû@2)rGE8ð?„F/·ÿP5?—A«ª°×Z?™çÙô½îé?ç\Š2˜?µDá?…2 Ôî½?‰G±±ZÎ?‹Ûx§Þ@@@@@*@,?ð?ð?ð?ð?ð?ð?$a€¿2¶Ô`?9~ñ¶°êÒ?:áçÈZUš@©ù+ÿwˆ@£J÷`”?Xî ”?­õ?[&¼*5l?¿—im4˜ÇÅÏ?]G|¤Ý?0-B¿q›?Í—uèø*?L5–S€k?€bMÔŠ»?Œ¬h2:“?‚nÓ3îŠ?‚â>¹R÷K?†‡I‚ÿ¯Û?†‡I‚ÿ¯Û@@,@,@,@7@;?ð?ð?ð?ð?ð?ð¿CD¨ƒ¿ŠØL¤?/ùÏ·”>ñWu,¦{g@®K”%ê@—?i¤6?>¾ò´7q?hš# l®?w>ï1¨è>÷­¿Ôm¬@Ÿs *rW¥@ý@Ÿ7Që…¸@Ÿ7Rn—Q@Ÿ7Që…¸Á.„€@Ÿ7Që…¸Á.„€@Ÿ7Që…¸Á.„€@Ÿ7Që…¸Á.„€@Ÿ7Që…¸Á.„€@$5?|í‘@$34l@$5?|í‘Á.„€@$5?|í‘Á.„€@$5?|í‘Á.„€@$5?|í‘Á.„€@$5?|í‘Á.„€@4쿱[X@4 YüŸ@1Ìí‘hr°Á.„M‰ûçm@1Ë"Ðå`BÁ.„QnÙ‡@1 +0U2a|Á.„NÜC,¥@1 +0U2a|Á.„NÜC,¥@1 +0U2a|Á.„NÜC,¥?|¾»•lŽ@8#˜@8¾:@8 >+@8Iç@8Ù?|¬g68ó@8Î÷@8i§@8Å@8S@8û—?‚”½Í}@8 * @8p÷@8¶@8 Ø@8 Ø@ ?ðøøøøøøøøøøøøþ@ªÏ}p£× +@ªÏ‚\(ö@ªÏ}p£× +@ªÏb\(ö@ªÏ}p£× +@ªÏt¢3œ@ªÏ}p£× +@ªÏpË)^Ÿ@ªÏ}p£× +@ªÏs@N¤©@ªÏ}p£× +@ªÏst¼j~@¨}aG®{@¨}O\(õÄ@¨}aG®{@¨}R•éá±@¨}aG®{@¨}WOß:@¨}aG®{@¨}ca@P@¨}aG®{@¨}^Åm\û@¨}aG®{@¨}a [À@8Ñ|ÚQ@8¹“ àÞÒ@4f‡+ J@4`°ò{²þ@3—ï²-@3ÿ—$tT@2Œ¿±[W?@2…Y³Ð|…@2Œ¿±[W?@2†È´9X@2Œ¿±[W?@2‡€4mÅ×?3ßa=„?“³ß )}o?›Q-(¥Z°?˜Š4¨]t?•bJÖµæÿ?—>æV¡¶$?­éW«ZM›?œœUX |e?•¥º~§?—wžÈAV?” E®!—?“f:[êc#?¾Ôm¶W?”¶’8¾J?‹?ü}(´3?‡¯½.SM?‹Ûx§Þ?Žrø·óæ@@@@@*@*?ð?ð?ð?ð?ð?ð¿lƒ–0?V"¤ÊQ?SÅt`7´&?ai Ÿ~©@ªÏu…D$t@¨}_…&Þ1?uûÔlîtÄ?uGWùôIM?Ý›sê'z?Ö1å_á@ŸoÿÐ@ÿ@¢Á¬1&é@¢Á¾¸Që…@¢Á¬1&é@¢¼Ñ4êK@¢Á¬1&é@¢¼¾ùÛ"Ñ@¢Á¬1&é@¢¼CŠ @¢Á¬1&é@¢¼VOv`@¢Á¬1&é@¢¼š¬1@¦’—Oß;@¦’‡®zá@¦’—Oß;@¦ßö”E@¦’—Oß;@¦ýÌcñA@¦’—Oß;@¦·€4mÆ@¦’—Oß;@¦ú–¼@¦’—Oß;@¦Ý/Ÿ@8ý:’£@9\(õÃ@4ÇÎÙ‡+@2&Â&€I@3Õ`A‰7L@1em\ú¬Ú@3p–»˜Çã@0Ù“ àÞÓ@3p–»˜Çã@0ÊÀƒn˜@3p–»˜Çã@0ÅýŠÚ¹ö?ÁІ$±™?ÕO;‹5²à?Ñ D¿‡º ?Å^‚¨ˆ2È?Ë.ÐÊI?̼+èHn?µQN?ÂŽsÜ3 ?Æ÷[ì†ú?ÇAöþMª?ÃzÖª=ô‡?ÅXbáé?ÃÕÇêF¬(?……+Qt?£%øZîo ?°LÁ(±“?°;û}¼?¥ÕS^^G>@@@@@*@*?ð?ð?ð?ð?ð?ð¿ÔnTûH¿Ã¬¿t¢H?ºù4/?¤zqC@ç@¢¾#0_¸@¦ðWõú?Ù„mk ?Å¿ó¸È@DK|©>Á@)©.©”µ@Ÿi7Ñų&@@¯ë5?|í‘@¯ëL…ÏçÞ@¯ë5?|í‘@¯ê|ÚP@¯ë5?|í‘@¯ëk…¸R@¯ë5?|í‘@¯ëwškQ@¯ë5?|í‘@¯ëXy‰B@¯ë5?|í‘@¯ë$9?¦]OëvÙú?Ú¢‘:]S?àŸT±f‡x?ÚE³P¤\?ÂË/¯ƒj~?Æ Rhª§?¥“ÓÛƒ ‹?»Ç­Kåß?Å&ÁÐQ~?¿ü)½ÀÍ?˜Ñ‹>?³gÕJªš‚@@@@@5@6?ð?ð?ð?ð?ð?ð¿gmÐ(*¿E Ù`?u º-i¤ß?‚äø£;k@¯ëFº,%·@”óøÕèv?’ýã4{Ý7?¡ +9çÞ/?áÎCà¥t?ì}S?Öa@Ÿc a;N@@ªÝaG®{@ªÝa‰7KÈ@ªÝaG®{@ªÝaÊÀƒ@ªÝaG®{@ªÝaÊÀƒ@ªÝaG®{@ªÝaaä÷f@ªÝaG®{@ªÝ`ªdÂø@ªÝaG®{@ªÝ`ƒn˜@ŸÇ®zá@ŸÇ®zá@ŸÇ®zá@ŸÈð@ŸÇ®zá@ŸÇ®zá@ŸÇ®zá@ŸÉk¹Œ}@ŸÇ®zá@ŸÇâ‚@¸@ŸÇ®zá@ŸÈË’:@3¹Œ~($@3Ƨï²@/¼j~ùÛ@/!-w1@.&éxÔþ@.HðŽ@-`ªdÂù@-©*0U3@-`ªdÂù@-×Ûôˆ@-`ªdÂù@-œ¾ß¥?|öOÿÝ?Ï[äe?¢Ûdâ_#?¶.ŠcC€?½Œ¬@¶[¨?í“C¸<É?Ãd¼Þô?™¬Ð3S³Î?–µPKYÅh?¢m« €R?šÓ”«ú?—¼l3Ê`a?™ä±†Ö4ƒ@@&@ @&@9@7?ð?ð?ð?ð?ð?ð?‰(;V¿”*ª±› ?ayÁÛêÕ³?h´Ø«Vù›@ª¹•ÚŒÍ@•³€¹±°¦?v_hw“RË?€ÈǨlŠ?Ä·.ÍM?Â_ܵµ@Ÿ_s=äÙ@@®Ƨï²Á.„€@®Ƨï²@®Ï\(õÃ@®Ƨï²@®Ò£S&@®Ƨï²@®ãˆe”¯@®Ƨï²@®èÁTɇ@®Ƨï²@®ÝæšÔ-@ D†$Ý/Á.„€@ D†$Ý/@ Dœ¾ß¤@ D†$Ý/@ D‘ÑN;Í@ D†$Ý/@ D§ü¹#£@ D†$Ý/@ D†Á½¥@ D†$Ý/@ DºáG®@9›¹Œ~($Á.„>¤µÜÆ@5€ Ä›¥ã@5jÍžƒä&@4Ú~ùÛ"Ñ@4Êû~ÿ—@4^«6z‘@45Â\(ö@4^«6z‘@4F€IQƒ@4^«6z‘@4*Ížƒä&@8J¨?°o\3dŽØ?ŸcOÖ²Ü?¡ø -à ?«î¢¥'&‡?·ãöâ@8J¨?±ûKá•)†?œ*&Ækúµ?¸Yà5}Go?¬€Ö¡(?µ.•Э[@8p÷?¡:¥UYP§?¦þ“ßH/b?•*¥Q«_“?¥VËMª¼‰?¯!›ÖËf@@@@,@$?ð?ð?ð?ð?ðøøøøøøøøøøøø@§nœ(õÂ@§nœj~ùÛ@§nœ(õÂ@§n/Ÿ¾@§nœ(õÂ@§nœwškP@§nœ(õÂ@§n!ÿ.I@§nœ(õÂ@§n›µsë@§nœ(õÂ@§n›‹¬q @¤Pm‘hr°@¤PmÒñ©ü@¤Pm‘hr°@¤Pm5¨Xy@¤Pm‘hr°@¤PmBÃÉï@¤Pm‘hr°@¤Pm\ú¬Ú@¤Pm‘hr°@¤Pmžƒä&@¤Pm‘hr°@¤PmÒñ©ü@2¥öý!ÿ.@2¥ðoiDh@/Gï²-@/Gü¹#¢œ@.mOß;dZ@.m¸ºÇË@.½Vlô"@.½!ÿ.Hé@.½Vlô"@.½!ÿ.Hé@.½Vlô"@.½}¿HÌ?É^³Dw'?ûJ`ÕYð?‘$Cê¡@í?‹Æ úJ-M?‘¿ÐÅu?ë+ʦÜ_?ÐbV‡,?’&u÷E»@?ƒ‰/BH?K·‘d]?üÓqÔNŠ?{L Õ¢D?€b¡´ñ@?Œ²ÅŒÕ6?‚|׿pZ?ƒ ?ÿ½?†©b/bJö?†–f_ÔŠŠ@@@@@,@*?ð?ð?ð?ð?ð?ð¿I¢SZ?)\‚Ø?8ŠŽY#™`>û•åw„œ@§nœ >Ù@¤Pm”)²˜?GœüùßµÊ? +0Ö^¶J?Š÷9tµÖ´? oÞMš@ŸsëœgÞ@@¤½q©ûçm@¤½q©ûçn@¤½q©ûçm@¤½q©ûçm@¤½q©ûçm@¤½rÊW§‡@¤½q©ûçm@¤½u?|í‘@¤½q©ûçm@¤½pHð@¤½q©ûçm@¤½k6z‘@£oŸ¾w@£nÙ‡+@£oŸ¾w@£m‘hr°@£oŸ¾w@£kÓÃa@£oŸ¾w@£lcñA@£oŸ¾w@£mí(Œç@£oŸ¾w@£lÙè>B@4[¹Œ~($@4[àÞÒˆÎ@0ør° Äœ@0÷y¦µ @0b-V@0`ëíúCþ@/QÑN;Í6@/N!–R½=@/QÑN;Í6@/OªÍžƒæ@/QÑN;Í6@/H´9Xb?}Ñ¿ž,?¾¢`ƒ?‘$Cê¡@í?‹¹GüÞõ?‘ä~|+?’¯-! )m?|öOÿÝ?’ ,øÕC©?–ÐO(·Š?9ÍÇ~FÀ?õ<úU?ëÎ@ A2?‚‘´…=Ca?ŒÐ¤Âÿê?‚ÂÌ]æ?‚ôhBì^?‡×7°º?Š—à `ž@@@@@&@*?ð?ð?ð?ð?ð?ð¿A†]¤¿:ÛÌ®À?MQîÏŸ77?)õÕÓÍK”@¤½qFj^@£m߀íï?l¯Ûì?JD<ÆM×?ä×t‹¦C‚?¡¥8åò@ŸfÏTËIÃ@@¥È€@¥Èr° Äœ@¥È€@¥ÈlÌÌÌÍ@¥È€@¥È|žì¿±@¥È€@¥Èz^5?}@¥È€Á.„€@¥È€Á.„€@žò(õÂ\@žò$Ý@žò(õÂ\@žñýp£× @žò(õÂ\@žñ÷1Å@žò(õÂ\@žò Òñ©ý@žò(õÂ\Á.„€@žò(õÂ\Á.„€@8Q|ÚQ@8J³g ù +@4›¥ãSø@4ÎÙ‡+@3V”@3FÜ]cˆ@2a:’£S@2V€IQƒ@2a:’£SÁ.„NÜC,¥@2a:’£SÁ.„NÜC,¥?™™™™™™š?ÜFÕ^c?¤Ôê +ûQ÷?’úˆ_šª@8Iç@8Ù?¢Æ÷Xê†?¡1™•ÿˆQ?¢Ì²ðˆ»?¡"JîÃ!@8S@8û—?¹ +f)Á7 ?¦…ƒ´3ž?žïó­M?›0Œ’$ž@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøø@ ô˜bMÓ@ ô•äÈœk@ ô˜bMÓ@ ô²7Q\@ ô˜bMÓ@ ôŸ99˜@ ô˜bMÓ@ ô¨ÙE@ ô˜bMÓ@ ô™¹›n@ ô˜bMÓ@ ôª‡ @ &éxÔþ@ +Ƨïž@ &éxÔþ@ =ZnIy@ &éxÔþ@ +¡ê¡@ &éxÔþ@ 8)Ïp@ &éxÔþ@ Ú8@¥MzáG®@¥MzÅ*Õ6@¥MzáG®@¥M{6×’º@3uS&Á¾@3uL˜_÷@1º^5?|@1Zñº`@0¶§ï²-@0¶ÿ\˜Ý@0Þi­BÄ@0PwS@0Þi­BÄ@0ŸC?¶@0Þi­BÄ@0½,ÅV?|Ñb×¶@?ëzÐRð¼?‘7*¹£¶€?‹«ég€eÜ?ÿ¡c7A?ÛàuZΑ?|¬h2:“?’³.ª?“(Wò§g?2s `²?äÍ *+R?SR‰—eÇ?‚†µ”g¬?ŒÀÈŠv¯?‚Ψ,UiW?ƒÍ©&?†þ†ÊB1-?†ïÉ'f—@@*@$@@4@4?ð?ð?ð?ð?ð?ð¿8äòñh? ‰gP?¹GJ¯¸?0ƒ0-C.D@ —JÀRŸÚ@¥M{GÍSÅ?7’2ßC?PÑ‚ç§Õ†?~9î]áÞ?­§ãGh¯@Ÿfðð †@ @¬ŸŸ¾vÉ@¬Ÿ¦×@@¬ŸŸ¾vÉ@¬Ÿý!ÿ/@¬ŸŸ¾vÉ@¬ŸOv_Ú@¬ŸŸ¾vÉ@¬Ÿ¬1@¬ŸŸ¾vÉ@¬Ÿ6âë@¬ŸŸ¾vÉ@¬ŸzáI@$³3333@$®6Òo*@$³3333@$«íúCþ@$³3333@$²þÅm]@$³3333@$¦€IQ@$³3333@$¬VÕÏ«@$³3333@$­‘hr°@7µS&Á¾@7³Ô!ª:@4GÎÙ‡+@4N\‘ÑN<@3'KƧïž@3) 'RTa@3?ò䎊r@3Nÿ—$t@3?ò䎊r@3FE¡ÊÀƒ@3?ò䎊r@3YÔ•*™?‡‡á´WÉ?™¿µ´¿1´?”Ä0óçî?˜^ܪɅ ?š(:)[a?¬¯!ò8¾‰?‰ŒÊQ¥?Ÿy­\Ÿ€?’]:»›.ó?ž¡‘dŸ–c?—?—³’sB?¯áƒÙ²?—'WÍüæ?˜jN‹­÷R?ƒ{¬ÉW?šSÌ·ï$€?‹ì3åý?°¬¹57¶ø@@@@@*@,?ð?ð?ð?ð?ð?ð?Y§Œ¶ ¿9}¿T?Qq°ñetC?:Ù¤_èø#@¬Ÿ§x~@$¬e¥ Á?o6rr$Î?XÅ3G½Êå?Ðèú?£–7S#Ám@ŸePÇÎ@ +@©ùíV@©ùíV@©ùíV@©ùî.±Ä3@©ùíV@©ùîV“@©ùíV@©ùî¾ß¤A@©ùíV@©ùëûµt@©ùíV@©ùëŸU›=@¥`Ù‡+@¥`ÙXbN@¥`Ù‡+@¥`Ùe+ÓÃ@¥`Ù‡+@¥`Úu%E@¥`Ù‡+@¥`Ù=Ùc@¥`Ù‡+@¥`ÙÛ"Ðå@¥`Ù‡+@¥`Ùe+ÓÃ@2p4mÅÖ8@2p'RT`ª@.Gï²-@.HK]Ìcñ@-?;dZ¬@-?HË’:@- +#9Àëî@- +dÂø7µ@- +#9Àëî@- +W§†Â'@- +#9Àëî@- +qÞi­C?É^žQ5P‚?ÉGãA­÷?‘"žæÆó¡?‹ÝÉ!ë#?÷6r In?ºª$Ð?ÐbV‡,?’ ÃCÀ`ú?ˆ9²0?EÇàÔPà?ë,YÁ?X78›š?€cPßQª?Œ°¶.Ä+Æ?‚uÞ@>N ?‚ôhBì^?†½ª»—?†–f_ÔŠŠ@@@@@*@(?ð?ð?ð?ð?ð?ð¿VÙ ÿo?m¯ï ?7†Þdh*9?'‰ +«è¨B@©ùìü_JW@¥`ÙzŸW?F nÇzl?6JD¸µjº?ˆü—'·è=?e Ë\ ”±@Ÿs +Û’ó¶@ @­tQë…¸@­tL‹C•€@­tQë…¸@­tK¹Œ~(@­tQë…¸@­tBh Ô”@­tQë…¸@­tBëC,@­tQë…¸@­tUÜÆ?@­tQë…¸@­t+…¸S@§JÑë…¸@§JÍÒñ©ü@§JÑë…¸@§JÏ'»/ë@§JÑë…¸@§JÒn—P@§JÑë…¸@§JЉ 'R@§JÑë…¸@§Jξߤ@@§JÑë…¸@§JÄ“t¼@6Î쿱[X@6Ñ|ÚQ@3+¥ãS÷Ï@3+quŽ!–@2´“t¼j@2´tSŽóN@2ò䎊r@2ƒœ¾ß¤@2ò䎊r@2‹ŸU›=@2ò䎊r@2z^5?|î?„F/·ÿP5?–(.À·÷?“u*y?‘ÔþÆvI‡?£”ŠFÉÇ¥?¡6% v +?•²»UbB2?—áZk·×?³2ºŽ'?’¸Ý8h\?—uG<Ê? µ‘ƒ>?…~ÆÎÇ$†?Å{¿Ž<º?ˆÌ7^|Â?¢ÇrˆG?” 4‹eñ +?›°Ô¤A]@@@@@(@&?ð?ð?ð?ð?ð?ð¿nÓò‘ì¿IœÄt?fmç[¦ÀÈ?W‰Äô}7@­tCñŸÔ#@§JÎvP?†Ç®5 ¡?s´Zð‰.s@ÄÏ.E…Ú?×ë?Óq.@Ÿhw8r4^@ @¢2Rñ©ûç@¢2Q&éxÕ@¢2Rñ©ûç@¢2eF +¦L@¢2Rñ©ûç@¢2_±[W?@¢2Rñ©ûç@¢2SMj@¢2Rñ©ûç@¢2cÉîËû@¢2Rñ©ûç@¢2dÝ/ @£Q·KƧð@£QÑ©ûçm@£Q·KƧð@£Qwéùr@£Q·KƧð@£Q”,<ží@£Q·KƧð@£Q²×sü@£Q·KƧð@£Qç†Â&@£Q·KƧð@£QêçÕfÐ@8Ù*0U2b@8ä¢3œ¿@3¡hr° Ä@3°U2a|@2¤¼j~ùÛ@2¯ìVÕÏ«@2YŒ~($ @2zÇË)_@2YŒ~($ @2}V”@2YŒ~($ @2nŠqÞi®?´M ó¬^õ?’°BÉô-?›mqò +×?• Q™iå”?­×p°C²E?£šÅF ?§Q,Äš¤?›44]Åùt?°&˜1õjb?˜ýšJ¼|T?±"û¤]N?¦_BñWk?˜W|¶DC?“êXÔ #{? “˜¯ÃÛ?éàQx˜?±ö€»H? ¦å_¹@@@@@,@(?ð?ð?ð?ð?ð?ð?xåÈäÑ?xÀK›&?b?Nû,¬C?…K‚%Ö@¢2W”¢÷Ü@£QÇÕ®ü]?t’¥­ôJz?Ÿ±s +gxO?Æ·Dj•MB@|èwøKY@Ÿmt`ÿ‡Q@ @¦`Ôýó¶F@¦`Ö. þ‡@¦`Ôýó¶F@¦`ÐåA `@¦`Ôýó¶F@¦`Óë(O‘@¦`Ôýó¶F@¦`ÊZþ*@¦`Ôýó¶F@¦`ÅŒòw/@¦`Ôýó¶F@¦`Èo€AB@•z Oß;d@•zV“@•z Oß;d@•zVAeº@•z Oß;d@•zä.¦@@•z Oß;d@•z±5@•z Oß;d@•yùº<|É@•z Oß;d@•yùË»N1@5ãg ù l@5â-V@2Ìí‘hr°@2Ë’fŒ|@26§ï²-@25‰ÍI +@2B‚@·€5@2>»‰â37@2B‚@·€5@2?q›ª@2B‚@·€5@2A +PÆ?~Ov_Ø­«?¶AÜ?’IŸþ õ'?‹¬Ä‚‹Œ?“þfR¼ æbÕ?Páêé‹TP?Ø‚êùÀQJ?ª|KÉ"λ@Ÿfým(tÎ@@¡#@@¡#@ƒn˜@¡#@@¡#AÞ\@¡#@@¡#Fbت@¡#@@¡#DX šk@¡#@@¡#@ÒÖÈ@¡#@@¡#Aû;s@§.—Oß@§.Ù‡+@§.—Oß@§3îEN@§.—Oß@§/4œl®@§.—Oß@§9•ŒÄ!@§.—Oß@§6ù#+k@§.—Oß@§=ÜŒ"@4Ô xFÜ@4Ô«šØ@2=‘hr° @2:ºc>ª@1A‰7KÇ@1o‰º(@0úÔ,<ží@0÷Šc¡¦a@0úÔ,<ží@0÷³!( @0úÔ,<ží@0÷Ìø9@¤?|¬h2:“?‘h.vbˆ‚?’†f£ò ?‹¯Q•xÏ?’@µÔ>„?Áª^|#D?|Ñb×¶@?’ÛðQ¬Yó?‘à?“Ú™?1æk4x1?’µ#„Á?Znv`#?„Ç(å?âqÞÒñä?‚xýeS¡¼?ƒ²¶Ê½?‹Šv"s®?‡Oô¦BX@@$@ @ @4@,?ð?ð?ð?ð?ð?ð?;3 n@?g•.¼ì?=ÿ˜Sú?B‡9Â>@¡#Aª`a4@§58Æò?\Ðêr`¥q?bÖ!~R??ÆSM¦!?ÒkC-b@ŸfËAˆçÙ@@ ‰7KÇÁ.„€@ ‰7KÇ@ ¦¼üQ$@ ‰7KÇ@ ¢9Ô@ ‰7KÇ@ ¸aw@ ‰7KÇ@ »çÒÝ@ ‰7KÇ@ ÃÉo@4‡+ Á.„€@4‡+ @8˜l6A@4‡+ @7tO’‘@4‡+ @8ù@ê+:@4‡+ @9üLÐà @4‡+ @7Ížæ†@4(†YJôñÁ.„>¤µÜÆ@0xr° Äœ@/R§ÝO&+@/º¬1'@.QÖ+­u@/™b¶®~@-Øk}ª@/™b¶®~@-ú°ÇIp@/™b¶®~@-õÔ%Êî@8J¨?•]ý¼?¬±?²ò?£¦dX4/?¨ ÛAîwÇ?¥/Xye²@8J¨?žªòìÔ¼Œ?©^C~+°?¾F6ÑHy?šÒ‰[²\¦?¬6rç'×@8p÷?‘ñ`×T?‹C¢ª°?…ü±_-?‡÷™x™…?‡ÎvûþH=@"@"@(@>@<?ð?ð?ð?ð?ðøøøøøøøøøøøø@«Èñ&éxÕ@«Èó¶E¡Ì@«Èñ&éxÕ@«Èéº^5@@«Èñ&éxÕ@«Èç+ I@«Èñ&éxÕ@«Èé*0U2@«Èñ&éxÕ@«ÈéùrG@«Èñ&éxÕ@«Èâu%F @¬…“u@¬…“t¼j@¬…“u@¬…Â\*@¬…“u@¬…Â\)@¬…“u@¬…±Ä2Ë@¬…“u@¬…¤?åÈ@¬…“u@¬…"Ðå`B@8h†YJôñ@8j=p£× +@3µãS÷ÎÙ@3­„M:’@2ù7KƧð@2òò䎊@2hè§æ›@2bëC,¦@2hè§æ›@2\˜_ö•@2hè§æ›@2]æšÔ,=?…ÅBðrç?“âÜ[ê• ?•þ„@óg?“1ÕËt?”Å¥ÒB–W?¢zvíÈ­c?3ßa=„?œ7»fU‡?™ù6×$l?™ðyµCÒW?’LÁŒÀ´a?šøñÒ_¾I?¸¼öݾª?‘ÛÖæÒk~?„‘Za¹Q?†ÞåØÜÓ?Ä;Ãkr>?¡¶|+üÎ~@@@@@$@,?ð?ð?ð?ð?ð?ð¿jðúV?\`›5˜?@: +˜?@?_6{’ª@«Èì!Nt@¬…Æ·?` AÑÆ?~RÚ.Ò3?¶°?Ò?ñåÜG|Z@ŸhoŸ`w@@®¦ffff@®¦ffff@®¦ffff@®¦ffff@®¦ffff@®©…ðoi@®¦ffff@®¬cñA @®¦ffff@®§®zá@®¦ffff@®¦?@®:›¥ãSø@®:œ(õÂ@®:›¥ãSø@®:}¿H€@®:›¥ãSø@®:žƒä%°@®:›¥ãSø@®:Ÿ;dZ@®:›¥ãSø@®:šŸ¾vÉ@®:›¥ãSø@®:Ùb¸@5h†YJôñ@5i#¢œwš@3Iº^5?@35¨Xy>@2»Æ§ï²@2¾}Vlô@2p–»˜Çã@2oAò×s@2p–»˜Çã@2p°ò{²ÿ@2p–»˜Çã@2p°ò{²ÿ?}Ñ¿ž,?’@k=[?’÷˜–Èä?Œj6_?’ §¹i»µ?’4¶ó?}Ñ¿ž,?”zòžÕÿ?‘å†36åG?6) }’ë?‘ýuãá$6?‘¿¤üî¾Ö?‚oÁÆÜ§ö?ŽátÖÁ»‡?ˆìûIè¶@1°–»˜Çã@1›çÄN@1°–»˜Çã@1Š<×Ë·@1°–»˜Çã@1‹äw‘k?„`™ˆ/.~?à³Иô?—ü_”¿p‰?6狳nú?¡ÞA©2f?­™Zf¦ü?¨Sp*?•].>x3?˜7$]°?‘ 2ý‹?¹?”’o²H¢Œ?’DÙkÀ'?‘®§µ†2Ø?Ü2ÄT˜?‘`zö©ˆ&?†ù²˜?Š^.×’Í4?‰#”á4U@@&@"@@7@:?ð?ð?ð?ð?ð?ð?“5 Q?EõS^p?a¡+W†2²?V4h1ÁEè@©'>«bÞ@˜ ^<Üu®?|éåæZ?uk&gƒn?ò}p×9 B?ôÕàÇ@Ÿd-¤”á—@@®‚ Iº^@®­‘hr°@®‚ Iº^@® [À@®‚ Iº^@®Œ"h Õ@®‚ Iº^@®vlô!@®‚ Iº^@®yŒ~($@®‚ Iº^@®{˜Çâ‚@¦¼|j~ùÛ@¦¼aÊÀƒ@¦¼|j~ùÛ@¦¼s àÞÓ@¦¼|j~ùÛ@¦¼uéá°Š@¦¼|j~ùÛ@¦¼p£× +=@¦¼|j~ùÛ@¦¼he”¯O@¦¼|j~ùÛ@¦¼kC,¥@8ëµsê´@8ÕϪ͞„@48r° Äœ@4/·éùr@3'KƧïž@3Ëûµt@2½cˆe”°@2¯iDg8@2½cˆe”°@2¶s×Ûô@2½cˆe”°@2´záG®?¶™b’jk±?•tæïá,•?¢ž<³Óž?’\GyÆ©?˜h†5+P?—c‚L±bµ?°{QBãï?”­ŽzF”?¢n®Ú| X?’àêE©³?£í̽,¶y?¡V·ÏŠÞ²?¾ü'£Ê1…?ª‚eûƒ+?ôê÷º»â?‘ÄÚ êÛu?”NtyÞ"§?“¶Ì¶Öj”@@@@@,@*?ð?ð?ð?ð?ð?ð¿RäËùN¿6PB!ø?s˜MB&x?dïàø[r@®yÿS@¦¼m¥aÙH?…|2 j|?xÙRƒb?öÝgilþ¨?ÔVüsè z@Ÿo¡•ôº@@¤šå`A‰@¤š-‘hr°@¤šå`A‰@¤šT`ªe@¤šå`A‰@¤š¤¨ÁU@¤šå`A‰@¤š +0U2a@¤šå`A‰@¤š "h Õ@¤šå`A‰@¤š +JŒM@ž9Ñë…¸@ž9½ó¶E¢@ž9Ñë…¸@ž9Æö”Fu@ž9Ñë…¸@ž9Ï–»™@ž9Ñë…¸@ž9É 'RS@ž9Ñë…¸@ž9ÏÅo@ž9Ñë…¸@ž9Ïv_Ø®@8Ù*0U2b@8ÐN¤¨ÁU@1î5?|í‘@1îV“t@1M²-V@1IXbMÓ@0+xFÜ^@0(DЩ*@0+xFÜ^@0'y¦µ @0+xFÜ^@0' ù kº?Áñ@5Å@Â?/³)sšÌ?“njĕ‹x?îZ¼!ÇŸ?‘¿ +Óñ›?’_‘Oo¨Ž?¥K¶{Oÿ?’eCŒO?’/ý‡…,v?‘!¥zt9Û?’8,²ñ±T?‘C å;Ã?²“P(?nÂ?ލf†)"?‡Ü̈- +?„•ˆG’Z¾?‡YÍ_?‹aÊ•TI@@@@@(@,?ð?ð?ð?ð?ð?ð¿>zGYH?Zúu9¾€?]§ åÒÓ.An@¬óŠq Yf@˜ê õ»c?Rš Û¦ú?7³lí­?²Ð,¥–ÉÄ?}pxïXVn@Ÿfõ06À@@¯1¿|í‘hÁ.„€@¯1¿|í‘h@¯1ºÇË)@¯1¿|í‘h@¯1½¥œá@¯1¿|í‘h@¯1ÓÐ|„¶@¯1¿|í‘h@¯1Ã,¥zx@¯1¿|í‘h@¯1Çâ‚@¸@§¾n—OßÁ.„€@§¾n—Oß@§¾U$Ü@§¾n—Oß@§¾xºÇË@§¾n—Oß@§¾Z…‡“Þ@§¾n—Oß@§¾s3333@§¾n—Oß@§¾r{²þÅ@7 ]cˆe”Á.„>¤µÜÆ@2Ìí‘hr°@2àhÛ‹¬q@2'KƧïž@2*)Çy¦µ@1uµsê³h@1¸ºÇË@1uµsê³h@1†éxÔýô@1uµsê³h@1‚T`ªdÃ@8J¨?¡„OaMyñ?”P"ÒhI?›8˜îi? k‚ˆŸ;æ?šÑ«Äµ~õ@8J¨?£kŸ!µ?–AuøG1? Ñ¡b£?¾?¢ÒUöˆ?” ™¾,@8p÷?¢f—í¡I%?—ö+jçÕf?—pü”_ù?Ä;Ãkr>?Œ8¸wx¯@@@@*@*?ð?ð?ð?ð?ðøøøøøøøøøøøø@ +.—Oß@ +,ÌÌÌÍ@ +.—Oß@ +(Å6«@ +.—Oß@ +&Þ*7@ +.—Oß@ +8'ÛV|@ +.—Oß@ +3#‚6@ +.—Oß@ +7@.ä1@¬_Ÿ¾vÉ@¬_:S¸ä@¬_Ÿ¾vÉ@¬_ƒ=ü@¬_Ÿ¾vÉ@¬_Æ4@¬_Ÿ¾vÉ@¬_ šHª<@¬_Ÿ¾vÉ@¬_~È3‡@¬_Ÿ¾vÉ@¬_˜…¦À@65S&Á¾@65/9àÊ@3º^5?}@3E) +¢@2]V”@2SÑ£[ôr@1QÞi­BÄ@1;ž†³Ð5@1QÞi­BÄ@16HO™ãö@1QÞi­BÄ@16 ø·Óª?€”ëû·«?’”:¯[º?’‡9#êš?¬ –àrU?›÷øùC¼?›&)˜?~Ov_Ø­«?“>Û¶Å}¼?‘Ì!(Æ8Œ?’A¬|½:?’¤Ê]gõ[?›;Rtbš?…ÎPI»Á¾?’Þ&ÜÝ®7?‰67Dx?‡ +˜ƒèd?7ÎǺ?>ú-œ!@@*@"@ @:@8?ð?ð?ð?ð?ð?ð?e=|¿KF©Mà?Nf„ëOØ?aC=Hž@ +2pwî@¬_ôÜe?kÉ kVå?½µ Â3c?ØêOBJSª@öQ¶{5µ@ŸdÚ§Ú̼@@¡a9XbN@¡a<(õÂŽ@¡a9XbNÁ.„€@¡a9XbNÁ.„€@¡a9XbNÁ.„€@¡a9XbN@¡a:kP°ò@¡a9XbN@¡a;~ÿ—@¤s3333@¤vE¡ÊÂ@¤s3333Á.„€@¤s3333Á.„€@¤s3333Á.„€@¤s3333@¤yb¶¯@¤s3333@¤w1Å@7™*0U2b@7“,¥zxl@3žÙ‡+Á.„M‰ûçm@2Õ`A‰7LÁ.„QnÙ‡@2._oÒ Á.„NÜC,¥@2._oÒ @2)Î_oÒ@2._oÒ @2)Ô•*š?¢F^ì¼Sð@8#˜@8¾:@8 >+?“Ýâqß?’÷åâ6¹?…ÅBðrç@8Î÷@8i§@8Å?—?—³’sB?• °jà?ŽŽp±µær@8 * @8p÷@8¶?‰Ü)@Jq«?‰Ü)@Jq«@@,@*?ð?ð?ðøøøøøøøøøøøø@£Y¾vÈ´Á.„€@£Y¾vÈ´@£Y†9{i@£Y¾vÈ´@£Yô{Ì@£Y¾vÈ´@£Y!ëÿáO@£Y¾vÈ´@£Y篸@£Y¾vÈ´@£YDc“@—¼záG®Á.„€@—¼záG®@—¼xäQú@—¼záG®@—¼z·ö!@—¼záG®@—¼„-Á#@—¼záG®@—¼°‰ (@—¼záG®@—¼Š"1¨G@4eöý!ÿ.Á.„>¤µÜÆ@0’ Iº^5@0–ož©:@.è1&éxÕ@.è“)"«ô@-Âu%F +§@-Åc¿^5@-Âu%F +§@-Ä6:”¡Ð@-Âu%F +§@-Ʋü1ƒ¶@8J¨?EüUà¬?‘pÇ-n†?ŒŒ5¦ª?‘[æÁõ•á?íÈy÷Ù@8J¨?’´7rRÎ?‘SÎ|]•­?†Ã„5Ãù?‘]^ÆA»?’œ+ïð¥±@8p÷?Öözß”"?ƒyŽu?ƒá„¢ïo?‡~3]³é¾?‡«ÇÙý1I@$@(@$@;@8?ð?ð?ð?ð?ðøøøøøøøøøøøø@ ì{dZ¬@ ì|j~ùÛ@ ì{dZ¬@ ì„u%û•@ ì{dZ¬@ ì‚¨•Î/@ ì{dZ¬@ ìƒõprœ@ ì{dZ¬@ ì‘u®°=@ ì{dZ¬@ ì•Ü +Wr@ Á^¸Që…@ Á_¾vÈ´@ Á^¸Që…@ ÁiÈÍ@ Á^¸Që…@ Á,Tð`@ Á^¸Që…@ Á@?«Q[@ Á^¸Që…@ Á6b"YÎ@ Á^¸Që…@ Á<Ñ0 º@4åöý!ÿ.@4Ú­ž›>@0¡hr° Ä@0Žñ}”Ì@0;Ƨï²@0%¾&ûY@/£¼ÓZ…ˆ@/oúœXKo@/£¼ÓZ…ˆ@/y%!ÊÙ@/£¼ÓZ…ˆ@/tfy§9Š?}@T˜ÁÎ¥?ÄŠña>?•9 ·ÂpØ?—Xÿ5ñ?g•íVˆ?œÐåÕ¨zj?‚n—Oß?ø_Æ6+ï@Ÿdð0È\|@@®}@®}A‰7M@®}@®}aä÷e@®}@®}-w1@®}@®}ÞÒˆÎ@®}@®|þÒˆÎo@®}@®|þÿ—%@­â_;dZ@­â_;dZ@­â_;dZ@­â_¾vÈ´@­â_;dZ@­â_åÉ@­â_;dZ@­â_åÉ@­â_;dZ@­â^ƒä%¯@­â_;dZ@­â^Ov_Ù@3Žì¿±[X@3ŽËûµt@0?|í‘h@0›=ÈJ@.¯ß;dZ@.°:û~ÿ@/L²•éá±@/L¥zxl"@/L²•éá±@/Lq ²•ê@/L²•éá±@/LL˜_?|öOÿÝ?Čۨ1A?‘7[ä­?Œݶ\ñr?‘VšÐ^Ø?‘)]•\¬?|¬Çëý ?’ ,øÕC©?ÙšlqùÚ?’GÎ>GÅ?‘77…Âç?‘"›ö?‚‘´…=Ca?Œèsq‡#?‚§W®ê ?ƒ¦$H?†Ü‘ °Ô?‡<û¡71@@@@@$@$?ð?ð?ð?ð?ð?ð¿1Üñ°¿!GÀ?*à=Ž¥3?!ßÜÒ]@®|ÿÒ¤Ô«@­â_€–D?J”^]ña?B |[±QÇ?¢ß ìÈ=r?3°²Æ/@Ÿf·{Æ^@@®â@ƒn˜@®â@ƒn—@®â@ƒn˜@®âC9Àëî@®â@ƒn˜@®âL"h Õ@®â@ƒn˜@®â=Vlô@®â@ƒn˜@®â>($ x@®â@ƒn˜@®âÖGB™?‘žˆ2}?‰¢Ò+ÜݤµÜÆ@4ÎÙ‡+@4Ôýó¶F@397KƧð@39e+ÓÃa@3+xFÜ^@3*6âëD@3+xFÜ^@3*qÞi­C@3+xFÜ^@3* ÞÒ@8J¨?”„ö}>žå?‘–”«ëó?$Ìj½BÙ?“Á¿À3<ô?—Q,Äš¤@8J¨?’Dê™.x?‘F·ˆ +fuæ?’Qÿc +?RLnj?‘®7Ö=^9?–’+¸¢d?…cü›Š×Õ?üÓqÔN‰?ƒ<Õp?ƒžÂâk,?‡æê7²zE?’3¨£„È@@@@@*@"?ð?ð?ð?ð?ð?ð?/¼À›0?;:Wðè?8\%ÒÖœ5?+“²ø_®@£‡*Æ×­{@¥úé{ëì6?X5©9uöü?L$<«úû»?¾Ð¶ªÙ¹æ?£‚Ùýà²@Ÿg’üé:@$@¡ÑyÛ"Ðå@¡Ñy™™™™@¡ÑyÛ"Ðå@¡Ñx­«ŸV@¡ÑyÛ"Ðå@¡Ñ×Ûôˆ@¡ÑyÛ"Ðå@¡Ñ}ÌcñA@¡ÑyÛ"Ðå@¡Ñwö+jè@¡ÑyÛ"Ðå@¡ÑxÔýóµ@ªS:^5?}@ªS?ˆïhƒEõ§?ƒ^ ›¨¬a?ŒXk-¯‚7?¢—„¯l@@@@@$@&?ð?ð?ð?ð?ð?ð¿þ€¿5/zà?IzÍâàDÃ?3•ÃG¥o@¡Ñz;ÏXà@ªS;­8ô?hu51D%?T(~*à?Ö&9¤¸:?­ àkÊCÊ@Ÿi$šnQô@%@£’bMÒò@£’£× +=@£’bMÒò@£’GE8ï@£’bMÒò@£’ÊW§‡@£’bMÒò@£’Ð|„¶@£’bMÒò@£’|„µÝ@£’bMÒò@£’–»™@¥_`A‰7L@¥_`ƒn™@¥_`A‰7L@¥_dg8~@¥_`A‰7L@¥_g8}¿@¥_`A‰7L@¥_pÿ—$t@¥_`A‰7L@¥_jqÞi­@¥_`A‰7L@¥_iîËû@2[¹Œ~($@2[²þÅm\@.)7KƧï@.%oh@-4ýó¶E¢@-0‰ 'RT@,³üPH@,¬q ²•ê@,³üPH@,«C•%@,³üPH@,¬~($ x?É^³Dw'?½Ë9ØŠ§?‘e +!ßC?‹ÑqÔ@vÿ?‘ …É¿¼?‘…Rgå.?ÐbV‡,?”­ŽzF”?“Z—H|:?9ÍÇ~FÀ?—­l²â›}?—œ­ÛpùÄ?€|Ã;}_?Œµ3‰;šÏ?‚Ö˜>µDá?ƒ†+ Å?ˆW|¶DC?ˆ‹”âó@@@@@,@,?ð?ð?ð?ð?ð?ð¿^ˆrxö¿iü_×?9“ËeΡ??R´žnŸH@£’¿‘Ö@¥_mVt©#?H™*I(†í?aL«ù ¨J?Œ:}逭À?±~`wlLF@Ÿr5/VM„@&@¥4#× +=q@¥4vÈ´:@¥4#× +=q@¥4$“t½@¥4#× +=q@¥4#2¥—@¥4#× +=q@¥4$7îÞ¡@¥4#× +=q@¥4"ÏM¢@¥4#× +=q@¥4!¯D&Ÿ@˜° Ä›¦@˜¯Ý|@@˜° Ä›¦@˜¬·q«ù@˜° Ä›¦@˜µb ¿)@˜° Ä›¦@˜¨mJy”@˜° Ä›¦@˜­Ë¶bŽ@˜° Ä›¦@˜¯hIXg@8cg ù l@8WÍö:<†@2)‡+ @2(ŠËmê@1•`A‰7L@1”ÀY¡‹¤@0Ì¿±[W?@0ÍÀ€ç ^@0Ì¿±[W?@0ÍZoÂT@0Ì¿±[W?@0ÍKð†R ?©–Rª—´? ߥØÛÖ?‘Eë—ØqF?‹Ý×Ó1Û?‘> cí?‘Ëç œ?œzó|3?’1bÅŸIr?‘)jS‰õc?H°<˜kÅ?‘´ _®?„dôPë?¬|’œw6 ?×a»D?ƒƒ]€ó¯z?ƒ +»ø”>?†ÑÜ uv?‡ðX8KØ@@(@&@ @7@6?ð?ð?ð?ð?ð?ð¿+@8Iç@8Ù?‘â%ì˜ ä@8Î÷@8i§@8Å@8S@8û—?¸”ñ¬n´@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø(@ªïÒn—P@ªð䛥ãT@ªïÒn—P@ªïÙõY³Ð@ªïÒn—P@ªïé7KƧ@ªïÒn—P@ªïÐbMÒò@ªïÒn—P@ªïÒ-V@ªïÒn—P@ªïË Iº@¯6˜bMÓ@¯6EãS÷Î@¯6˜bMÓ@¯6£S÷ÎÙ@¯6˜bMÓ@¯6¥¡ÊÀƒ@¯6˜bMÓ@¯6— +=p¤@¯6˜bMÓ@¯6¡ÊÀƒ@¯6˜bMÓ@¯6— +=p£@8«µsê´@7æÂ&€J@4f‡+ J@4dM:’£@3ìj~ùÛ#@3ücñA \@2ãÉîËû@2ÞzáG®@2ãÉîËû@2ݲ-V@2ãÉîËû@2æOv_Ù?ðVAæKÍ?™05¦ ê[?[_œ(Ä?=]. ?’[9ƒÍ,?‘m×e\»?Ö¤´ª3¼?™¡û¶ ?‘½ÀèÑmK?ni"Í š?‘ ^Íü?ÿ?‘ÔÄ÷Õ?ø¸mh.?‘žˆ2}?›û…†_?ƒR¨º“JÞ?ŸHF!œ6²?¢áÄïÃõ@@@@@@?ð?ð?ð?ð?ð?ð¿a{qe€?N™ß±†?cáOo>‡À?pÞ¢D}ÍÉ@ªïÏ,Ò†@¯6š’]»b?rß»uË«w??è¦zXþ?Ý·ÀR\?ôŽGϽ@Ÿs{\_ðÑ@)@©ÒÏ\(õÃ@©ÒÏ\(õÃ@©ÒÏ\(õÃ@©ÒÐ:û~‘@©ÒÏ\(õÃ@©ÒÐHð@©ÒÏ\(õÃ@©ÒÐ:û~‘@©ÒÏ\(õÃ@©ÒÎV’@©ÒÏ\(õÃ@©ÒÎcŠ @©üA$Ý/@©üAG®{@©üA$Ý/@©üA£n.²@©üA$Ý/@©üA£n.²@©üA$Ý/@©üA°‰ '@©üA$Ý/@©üAohÜ@©üA$Ý/@©üA°‰ '@-e‡“Ý—ö@-e‡“Ý—ö@+$“t¼j@+#þ\‘ÑN@*òn—Oß@*òò䎊@)žžš@)žvÈ´9W@)žžš@)žƒä%®è@)žžš@)ži­BÃÊ?É^žQ5P‚?ÉGãA­÷?‘ÌË>¯f?‹²MÿAÿ8?è<`.Ÿ?¸û:?ÐbV‡,?’r/BÖ?¹º–Èj?3.Ylî?ÔÒ@úˆ‘?R g!Ú¢?€b¡´ñ@?Œ¯þuõí?‚s@ˆaÛ?‚éXëLL÷?†‰Oú|q?†ŠúЀ>(@@@@@(@,?ð?ð?ð?ð?ð?ð¿K·¥~¾à'ˆ@?2Ö4Î:ó?õ…OÚ@©ÒÏ~€@©üA›Ì¼T?BÓ Å %?%Æ\O:Ê?€3[ uä?DˤžÎvÒ@ŸsK$&é@*@£eE¸Qì@£eE¸Qí@£eE¸Qì@£eE¡ÊÀƒ@£eE¸Qì@£eD2ÊW¨@£eE¸Qì@£eCS÷ÎÙ@£eE¸Qì@£eCþ\‘Ñ@£eE¸Qì@£eDg8~@ªR!ÊÀƒ@ªR" Iº^@ªR!ÊÀƒ@ªR!°‰ '@ªR!ÊÀƒ@ªRò䎊@ªR!ÊÀƒ@ªRvÈ´9@ªR!ÊÀƒ@ªR"u%F @ªR!ÊÀƒ@ªR"MÒñª@1òÃÉîËû@1òÃÉîËû@/WKƧï@/UY³Ð|„@.ÊÀƒo@.ö”Ft@.žš@.~ÿ—%@.žš@.žš@.žš@.«6z‘?É^òÀXæN?õ¹Ëh?‘.Ò®ó_ ?‹¯eU5?üEÙáõ{?âé¨ë7F?ÐbV‡,?’ ŠŠ¤Hì?«'Q™µ?RLnj?ë,YÁ?wN —z_?€b¡´ñ@?ŒÛÏ·+?‚Ö˜>µDá?ƒË´ÔC¶¼?†£îž«î?†žóB» “@@@@@,@*?ð?ð?ð?ð?ð?ð?=j6Ó?[ÍŽ•€?†ZD¿d?Eh±¡8¡@£eCÚ(@ªR اãy?(‡]cŸ˜?T?hA?MR¥×§.Š?¡·±[Ò—@Ÿs|Ю+@+@¬‘Õ%@¬‘Ã× +=r@¬‘Õ%@¬‘Ãúvâ@¬‘Õ%@¬‘Äû°!@¬‘Õ%@¬‘Ãï!!@¬‘Õ%@¬‘Öº@¬‘Õ%@¬‘ÃÏ»â@˜gyÛ"Ðå@˜gyÛ"Ðå@˜gyÛ"Ðå@˜gyÛ«á@˜gyÛ"Ðå@˜gyÛ"Ðæ@˜gyÛ"Ðå@˜gzØt#@˜gyÛ"Ðå@˜gzJÙu@˜gyÛ"Ðå@˜gyo¨.‡@0úqÞi­C@0úqÞi­C@.MV“@.M)bŸù<@-ΗOß;@-ÎXQjw@-zÇË)_@-z¾DÑ{ú@-zÇË)_@-zŽ8@-zÇË)_@-z¥ ¸Ïý?É^¨¯Âj?Ã{TV½‹?‘"þ(#*m?‹ªœñ•ª?ð%r}•Ã?ºT|/ÿ?ÐbMÝn½?’Îùx¥?…àø??/Úå[˜2?Ö“jø?S’ð!¥ó?€bMÔŠ»?Œ±9¯¬ý³?‚u؆"ÂÀ?‚ë•ä™ Š?†‘"‘Fùá?†‹s`@@$@,@&@;@9?ð?ð?ð?ð?ð?ð¿;ZÝàè¿ T&g?³ «¶?!o… +øa@¬‘ÃhÞî[@˜gzÕþf?*òg}ú‡*?0 +¼ÆÝ?QÖ¨Ïð°¢?Wå‚0‡4@Ÿs-ÊHÎ@,@¦aRñ©ûç@¦aRñ©ûç@¦aRñ©ûç@¦aSŽóMj@¦aRñ©ûç@¦aSÐ|„¶@¦aRñ©ûç@¦aSÃa@@¦aRñ©ûç@¦aQ·Xâ@¦aRñ©ûç@¦aQÅ@¢ôÙ™™™š@¢ôÙ™™™š@¢ôÙ™™™š@¢ôØÔýó¶@¢ôÙ™™™š@¢ôØüPH@¢ôÙ™™™š@¢ôÙ k¹Œ@¢ôÙ™™™š@¢ôØÇâ‚A@¢ôÙ™™™š@¢ôÙe+ÓÃ@1}:’£@1}:’£@/¼j~ùÛ@/%F +¦L@.ΗOß<@.αÄ2ÊX@.£¼ÓZ…ˆ@.¤M:’£@.£¼ÓZ…ˆ@.£ÉîËû@.£¼ÓZ…ˆ@.£¯·éú?É^žQ5P‚?Ï[äe¤µÜÆ@4GÎÙ‡+@4$Ù`´@4Ðå`A‰@3À”ºó@3#ÉîËû@2ñFX‡ë=@3#ÉîËû@3Çâ‚@¸@3#ÉîËû@3 “ àÞÓ@8J¨?Ï[×.[?·‡­‹"¬!?šaÀU¦?½ª[Ç$Î$?—‡XE%:@8J¨?™ ¼—;&ì?³Þ‹C·‡º?ÁA4ð«¾?º³=i6º?šÛ’ä|@8p÷?™¤·¾Ag?ª޻ɩ}?“Σªw'Y?™t#‰$ ?˜ÒF€§ç@@$@@@?ð?ð?ð?ð?ðøøøøøøøøøøøø.@¦ÝÌÌÌÌÍ@¦ÝË…¸R@¦ÝÌÌÌÌÍÁ.„€@¦ÝÌÌÌÌÍÁ.„€@¦ÝÌÌÌÌÍÁ.„€@¦ÝÌÌÌÌÍÁ.„€@¦ÝÌÌÌÌÍÁ.„€@ªQhr°!@ªMOß;d@ªQhr°!Á.„€@ªQhr°!Á.„€@ªQhr°!Á.„€@ªQhr°!Á.„€@ªQhr°!Á.„€@7(†YJôñ@7&_Ø­« @4Œí‘hr°Á.„M‰ûçm@4å`A‰7Á.„QnÙ‡@3Œ¿±[W?Á.„NÜC,¥@3Œ¿±[W?Á.„NÜC,¥@3Œ¿±[W?Á.„NÜC,¥?1·†Æjñ@8#˜@8¾:@8 >+@8Iç@8Ù?Œs¤DÅÐ@8Î÷@8i§@8Å@8S@8û—?¶,1õ'®@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø/@¨vE¡ÊÀƒ@¨vE¡ÊÀƒ@¨vE¡ÊÀƒ@¨vJçÕfÏ@¨vE¡ÊÀƒ@¨vES&Â@¨vE¡ÊÀƒ@¨vKC•@¨vE¡ÊÀƒ@¨vIîËû@¨vE¡ÊÀƒ@¨vMí(Œç@¬Š=p£×@¬Š=p£×@¬Š=p£×@¬ˆðŽ@¬Š=p£×@¬‰ã½@¬Š=p£×@¬‰^ž @¬Š=p£×@¬„êJŒ@¬Š=p£×@¬„÷eý‹@1úqÞi­C@1ú~ùÛ"Ò@-ÍV“@-ÅÉã¼@+ãn—P@+Þ\‘ÑN<@,Aò×t@, Ô•+@,Aò×t@,ÈK]Ìe@,Aò×t@, ù kº?É^òÀXæN?¦Ì '?‘G¿yÛ?ï?5~pY5?‘úy«ôÊ%?”ªEñeX?ÐbMçê_x?’CòO…?£½:…?@§[*^?‘êë·áþA?“ 3—·²W?€e@ˆ’„'?Å9–o?‚‹¡8*ú?„À"aËô??ˆ”Tj«›ª?ˆ¾þúWZ‹@@@@@$@*?ð?ð?ð?ð?ð?ð?JÁkèø¿`Éw9Þ?NÛÙÏE³þ?F.ÀB¶„@¨vKˆ.yô@¬†Í™jT?\ÓÀr”¸C?Tʤ?°¸<-î? ŸE+\€÷@Ÿrƒ'Qš@0@­ö]/Ÿ¾@­önzáH@­ö]/Ÿ¾@­öjqÞi­@­ö]/Ÿ¾@­ö^ߤ?æ@­ö]/Ÿ¾@­öW1Å@­ö]/Ÿ¾Á.„€@­ö]/Ÿ¾@­õÿò䎊@«£.záH@«£;dZ@«£.záH@«£‡æšÔ@«£.záH@«£¾vÈ´@«£.záH@«£†€IR@«£.záHÁ.„€@«£.záH@«£Éá°‰¡@9h†YJôñ@9VéxÔýô@5B° Ä›¦@5Á½¥@4d¼j~ùÛ@42ò䎊@3ÜÚQÎ@3£n.±Ä3@3ÜÚQÎÁ.„NÜC,¥@3ÜÚQÎ@3ŽBZîc ?ˆÿÀ)T¿Æ?²Íáœ^y?º‰æÒ’n?±²‘Ñ +@8Iç?ÉÏýS*Õ ?ÆJ>xÛé?ÃÓÝ_’çÇ?€škš?µAÌôjš@8S?Ó:; ݹ?À +šeKsÁ?¨”dÛþö?³"i]äPö?±Š¼’ ¸a@8 Ø?¯üÚ‰øßæ@@@@@,?ð?ð?ð?ð?ðøøøøøøøøøøøø1@ª¢¯Ÿ¾w@ª¢¯²-@ª¢¯Ÿ¾w@ª£kʇ0@ª¢¯Ÿ¾w@ª£^ìð.š@ª¢¯Ÿ¾w@ª£li™÷¾@ª¢¯Ÿ¾w@ª¢ÇŸ÷'@ª¢¯Ÿ¾w@ª¢ÎøÙ@“ ž¸Që…@“ ¡ÊÀƒ@“ ž¸Që…@“ª_¬Éç@“ ž¸Që…@“J„¿t@“ ž¸Që…@“% ë+×@“ ž¸Që…@“ ¹CV¯@“ ž¸Që…@“ UÍS)@3uS&Á¾@3tg|«ó@1‚° Ä›¦@0¬Ã£íÎ@1$¼j~ùÛ@0 ZÀZ@0³&Á½¥@/ìBîÕö@0³&Á½¥@0¨")[>@0³&Á½¥@0©[R®‰Á?|¬h2:“?™z½ÉÓ~?‘Äyãn×'?˜›ÅGw?”¬À¿ß#?°täÇm?}@T˜ÁÎ¥?¾¹óËŸ”g? Gš€tÌ?Çuª:z0?—™d=ûk?¸l€lg|?‚ň¸™?¦R¨Ñ¢y?ŠÒžM?%½?—„\_‚¸?’«Èe< Ž?¥á×ée@@ @@ @4@5?ð?ð?ð?ð?ð?ð?“dìFµ@?SmYÖ¬À?•K +Ò5Wf?޵Ñ\>b#@ª¢Ë ÛvÚ@“ ¥Ý‡‡j?¯„\±H=K?¦›-ûâ:@c?bÓ¤â @IF`y<í@Ÿ_ÚØèÕž@2@¯¹XbN@¯¹‡+@¯¹XbN@¯¼°wáe@¯¹XbN@¯¹QÓu@¯¹XbN@¯·˜Ó§@¯¹XbN@¯·¶„¡T@¯¹XbN@¯·ŸðêŽ@•k\(õÃ@•kZܼç@•k\(õÃ@•kî¦øå@•k\(õÃ@•kýh´H@•k\(õÃ@•kŽM—ç€@•k\(õÃ@•k’Àm¼@•k\(õÃ@•k—†…º@47â‚@·€@48L–ïP@0®5?|í‘@0¬2ÊW§†@0 ²-V@0 ¢ˆGb¢@0^«6z‘@0XЯfó@0^«6z‘@0Yj *6@0^«6z‘@0XÞÒˆÎp?|Ñb×¶@?Õ¶úÂ]?‘_Vfvì?ŽÝõÞZ3g?’‰säCó?’2} ?|¬Æ Væ?’ Í?Å(½Ùr?‘óíé;?’¨®ŒÀ—”?’ÚZÛÖ½?‚wÆ«±Ã ?ŒÃõßî;?‚ÄA„vÀ?ƒºµ¿+?†È[’ùÑï?†ÀÞ°ª@@$@*@*@:@8?ð?ð?ð?ð?ð?ð¿7°‡à?$–Ò?q³Fɸk?#Ò ^”+/@¯¸NhÝÍ@•këú ?6+xö©X?CÎ.Ã@?x3ÑÆ%~?‘îkˆaòø@Ÿf.Y—×@3@¡)"MÒñªÁ.„€@¡)"MÒñªÁ.„€@¡)"MÒñªÁ.„€@¡)"MÒñªÁ.„€@¡)"MÒñªÁ.„€@¡)"MÒñªÁ.„€@X33333Á.„€@X33333Á.„€@X33333Á.„€@X33333Á.„€@X33333Á.„€@X33333Á.„€@9|ÚQÁ.„>¤µÜÆ@5B° Ä›¦Á.„M‰ûçm@4Æ“t¼Á.„QnÙ‡@4ò䎊rÁ.„NÜC,¥@4ò䎊rÁ.„NÜC,¥@4ò䎊rÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø4@¨« Iº@¨«Æ§ïž@¨« Iº@¨±‚©“ @¨« Iº@¨«’:)Ç@¨« Iº@¨¬1&é@¨« Iº@¨¬/ƒ{K@¨« Iº@¨§“Ý—õ@¤ Ù‡+@¤ Ÿ¾w@¤ Ù‡+@¤ º^5@@¤ Ù‡+@¤ Ëûµ@¤ Ù‡+@¤ üPH@¤ Ù‡+@¤ æ1ø¡@¤ Ù‡+@¤ +çÕfÏ@6‚ò䎊@6„ xFÜ@3f‡+ J@3esê³g¡@2Æ“t¼@2Åœàu÷@25µsê³h@23n—P@25µsê³h@23FÜ]cˆ@25µsê³h@2/ƒ{J#:?‡YÍ_?%¼ÇÆÃ±?“1‘´¹V?Œ'õ‚$5ñ?”ä+ïè?•ÍÂ^mÄ*?„F/·ÿP5?’馿œãj?“ |ɽ‡?RLnj?”‚ÍÊL¾l?“X<‡÷Ú?‚˜YªüÏE?•ða˜,F?Šó¿á§E?“DάR²?‹ì3åý?¢—„¯l@@@@@*@&?ð?ð?ð?ð?ð?ð¿9äÁ ¿5‰A ð?>Ç‘oè?K4©½èêƒ@¨«:Û–>@¤ íÎr?\¹$<ó]E?km>ÅòÓ/?º¶ *F?ÙH?çNi@Ÿh•x ‚@5@¥|§ï²-@¥|´ýó¶F@¥|§ï²-@¥}/Ån@¥|§ï²-@¥|fšÔ,=@¥|§ï²-@¥}Ÿ¾vÉ@¥|§ï²-Á.„€@¥|§ï²-Á.„€@ ©ô9Xb@ ©ú^5?}@ ©ô9Xb@ ªHè§@ ©ô9Xb@ ©ýŠÚ¹õ@ ©ô9Xb@ ©Ù=Ùc@ ©ô9XbÁ.„€@ ©ô9XbÁ.„€@804mÅÖ8@86$Ý/ @3¦‡+ J@3XFÜ]c@2ß²-V@2Æý!ÿ.I@2¨è§æ›@2ƒ× +=p¤@2¨è§æ›Á.„NÜC,¥@2¨è§æ›Á.„NÜC,¥?óA[ØïF?Å«û}ü›?³ÞÐοF;?ÁóÀª Ò!@8Iç@8Ù?£È‰·akû?ÀYB9˜J?§‚42¾?¹n¬·«y@8S@8û—?·ø^$f, ?«ë"{Ę?«à¼(??µã=U)¼@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøø6@¢“|í‘hs@¢“{çl‹E@¢“|í‘hs@¢“|j~ùÛ@¢“|í‘hs@¢“¾vÈ´@¢“|í‘hs@¢“}ó¶E¢@¢“|í‘hs@¢“{quŽ"@¢“|í‘hs@¢“|í‘hs@®ø° Ä›¦@®øªÀƒo@®ø° Ä›¦@®ø±Å@®ø° Ä›¦@®ø¯v_Ø­@®ø° Ä›¦@®ø®záH@®ø° Ä›¦@®ø­žƒä'@®ø° Ä›¦@®ø±A [¿@6í¥œàv@6ëW>«6z@2ã÷ÎÙ‡@2ãn.±Ä2@2“t¼j@2Çâ‚@¸@1ÜÚQÎ@1ÛÍ5¨Xz@1ÜÚQÎ@1ÛjçÕfÏ@1ÜÚQÎ@1ÚôðØDÐ?…ÅBðrç?‘ ·èe?‘ÓKñá»Ù?ŒvHn&³?’ §¹i»µ?‘#†»{׈?Ž=fA:?” Á lŸž?«'Q™µ?’_3Í\Æ?’8,²ñ±T?‘á.†8?ˆÌ7^|Â?œ‘z¥æ?ƒ]€µ,Vß?†‡ °´¥`?‡´*žZ}Õ?ˆ0&YÊEd@@@@@ @?ð?ð?ð?ð?ð?ð?%‰Žê ?RÑN°?4½r$ù?4¿³„W@¢“|›Ä"»@®ø­¸#Q?T¯º{é×+?T ¯b°7?¯ĘD¢ð?¦1>Öt¤@ŸjÊ嬕Œ@7@¬ÿ¸Që…@¬ÿ‡+@¬ÿ¸Që…@¬ÿƒä%¯@¬ÿ¸Që…@¬ÿí‘hs@¬ÿ¸Që…@¬ÿ! [À@¬ÿ¸Që…@¬ÿæšÔ+@¬ÿ¸Që…@¬ÿj~ùÛ@¤/Ÿ¾@¤ @¤/Ÿ¾@¤æšÔ-@¤/Ÿ¾@¤/Ÿ½@¤/Ÿ¾@¤žžš@¤/Ÿ¾@¤<64@¤/Ÿ¾@¤}¿H@6òÃÉîËû@6ò° Ä›¦@2Ê^5?|í@2Ê^5?|í@2{Ƨï²@2{ŸU›=@1£ÉîËû@1£Ð|„µÝ@1£ÉîËû@1£FÜ]c‰@1£ÉîËû@1£×Ûôˆ?“Æ×q„nï?Žd±Ìº?‘°&޲P? Í‹hÆ?‘·Xâe?’T«¥-ÚN?žˆ2}?’ñ©ûçlŒ?«'Q™µ?‘~¬Àm?ó?‘¾ãazÅ?’.8 +B?‚íWçé„?àìÚJ>?†¼Š˜L¥ø?ƒì%­¹Ï‘?ˆA0û)n?ˆA0û)n@@@@@,@*?ð?ð?ð?ð?ð?ð?DkZX¿BÄñ†d?R>fv\Ä?rlòüœ@¬ÿœ–@¤žinë\?n»9ÖKÝõ?7ø/$ôY€?×ìZ†ýdE?sLtzm@Ÿk~ ‚k@8@ª–~ùÛ"ÑÁ.„€@ª–~ùÛ"Ñ@ª–€žòB}@ª–~ùÛ"Ñ@ª–¶- „@ª–~ùÛ"Ñ@ª–ŠÌ‘=O@ª–~ùÛ"Ñ@ª–’Zùô@ª–~ùÛ"Ñ@ª–¢½9Éw@›bMÒñªÁ.„€@›bMÒñª@›^¬Ž.@›bMÒñª@›¹¡Wç@›bMÒñª@››˜=Y@›bMÒñª@›GÎÎ<Ê@›bMÒñª@›šr²ë@9wâ‚@·€Á.„>¤µÜÆ@4J^5?|í@47^3Ê +@46§ï²-@4‰E3ú¢@3TmÅÖ8†@3! ¯ææ®@3TmÅÖ8†@3%,0â@3TmÅÖ8†@3 TR!Wh@8J¨?—pçÙÒ?¶]ý€]Ûó?¥c ÷³Ü?²/´Ö1û?¨èz+Í›˜@8J¨?—ù›5ot?±N-+gâÐ?«Š`nŠk?°xu‘ç‰ñ?£±Ðt¯ @8p÷?}aE’·?“`oÙ¶º?Š„I›H?™°ñÇ«þê?‘zžò½‡@$@(@(@3@1?ð?ð?ð?ð?ðøøøøøøøøøøøø9@§-˜“t¼j@§-ˆr° Æ@§-˜“t¼j@§-›~ÿ—@§-˜“t¼j@§-¥œàv@§-˜“t¼j@§-žvÈ´9@§-˜“t¼j@§-¦$Ý/@§-˜“t¼j@§-¨1&éx@£]t¼j~ú@£]µ$Ý@£]t¼j~ú@£^ýŠÚº@£]t¼j~ú@£]ÔFsØ@£]t¼j~ú@£]Ôã¼Ó[@£]t¼j~ú@£]ª¦L/ƒ@£]t¼j~ú@£]¾vÈ´9@8ÖšÔ,<Ÿ@8Ñ-w1Å@3Ò Iº^5@3ÈõÂ\)@3M²-V@3GË)^ž@3ý!ÿ.I@3 íúCþ]@3ý!ÿ.I@2þ!–R½<@3ý!ÿ.I@2ùXbMÓ?ºðŽÄS?—A«ª°×Z?¤uzH{*?ŸÆ^¼ò˜?¨ƒ ¹´?­Ðxšh`?ȸaÞ­å?™¡û¶ ?´]&7®í?°ù¯'ýŽy?­ˆOLߎ?¯/Õ’¬Œ»?¿Õ²€?ŽOv_Ø­«?ˆÌ7^|Â?˜m7>ên?™¼òQh@? ËD7<@@@@@ @&?ð?ð?ð?ð?ð?ð?xx•Ÿ`€¿våêNe€?RtR#Þßj?ƒúí@ ?@§-¢l‹H@£]¿*²¨Î?b¼p?—' +ë¨%?›7Œý7!ú?èp~”›z@Ÿp°í¹°@:@¨Åî—Oß@¨Åë…¸R@¨Åî—Oß@¨ÅíÅÖ8…@¨Åî—Oß@¨Åí‘hr°@¨Åî—Oß@¨Åø -à@¨Åî—Oß@¨ÅîŠqÞj@¨Åî—Oß@¨Åï·éù@¨û"Ðå`B@¨û¾vÈ´@¨û"Ðå`B@¨û!-w1@¨û"Ðå`B@¨û¥ãSø@¨û"Ðå`B@¨û!ò×s@¨û"Ðå`B@¨ûŠ Þ@¨û"Ðå`B@¨û64@87â‚@·€@8: ÞÒ@3R Iº^5@3Np:û~@2´“t¼j@2±ä÷eý‹@2L¿±[W?@2HŒç¯¸@2L¿±[W?@2F1ø .@2L¿±[W?@2G$tSŽô? Å{¿Ž<º?š¾ßÍZ?’ +N»A3?’èÞ㬱_?“¦Æ_ÌdA?“Ì›`×ñ¾?¨Ö_pP1?’p RN%Î?‘}7ˆ.Ñ?“§ÞÐÞû?”¤¦ð¹e?”e!¶?° ё٤i?ŽátÖÁ»‡?ƒ{¬ÉW?„†YÊ’È?ˆW|¶DC?ŒÙ”!Çx‡@@@@@(@*?ð?ð?ð?ð?ð?ð¿<íÎ͸¿V¬qmÀ?bîÃå¿ó?Kß®Šõ@¨ÅñÒl8¬@¨û¿‰Ð?{á¦8?a;ô;ÇZ?飓2)?²/3'ÿ7ö@ŸoØë2¡Ð@;@Ÿ#èr° ÅÁ.„€@Ÿ#èr° ÅÁ.„€@Ÿ#èr° ÅÁ.„€@Ÿ#èr° ÅÁ.„€@Ÿ#èr° ÅÁ.„€@Ÿ#èr° ÅÁ.„€@’žvÈ´Á.„€@’žvÈ´Á.„€@’žvÈ´Á.„€@’žvÈ´Á.„€@’žvÈ´Á.„€@’žvÈ´Á.„€@8è†YJôñÁ.„>¤µÜÆ@4‡ÎÙ‡+Á.„M‰ûçm@3â-VÁ.„QnÙ‡@3ž«6z‘Á.„NÜC,¥@3ž«6z‘Á.„NÜC,¥@3ž«6z‘Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø<@žó'ï²-@žó(r° Æ@žó'ï²-@žó+6ª@žó'ï²-@žó-\ú¬Ù@žó'ï²-@žó+æÃ¥X@žó'ï²-@žó$Ù]I¾@žó'ï²-@žó%JP@¨Ó’ñ©ûç@¨Ó’ñ©ûç@¨Ó’ñ©ûç@¨Ó’\™S.@¨Ó’ñ©ûç@¨Ó[JÎx@¨Ó’ñ©ûç@¨ÓPèä@¨Ó’ñ©ûç@¨Ó’Y“ Ì@¨Ó’ñ©ûç@¨Ó’\Œ„>@2Ô xFÜ@2Ó÷ÎÙˆ@1T›¥ãSø@1Te˜í•¦@1“t¼@1«ÀãŠ@0kxFÜ^@0jj´Ïâ@0kxFÜ^@0iy–@0kxFÜ^@0iÿi}„ä?É^¨¯Âj?ÛñªF +?‘;"½à{?Œ U}ÔƒŸ?‘“äh2$?ÀÁ݆?ÐbMÝn½?’³.ª?€<~zÝ?áaæNl½?ÚÿQ» ?ƒ@âÅÁ)?€z¿nÔU?Œåç“r,?ƒíÁˆ;Üú?‚äÉ…œ%ã?‡´-ê“Ö#?‡Zoh$lå@@"@ @$@3@4?ð?ð?ð?ð?ð?ð¿XéÅP?MvhÉ?B7ƒij›Ò?5¤$õòÀ@žó'Ð53@¨Ó‘“_‹÷?‚ÂÌ]æ?„2ÌôÏ?‡×7°º?‡ø¢:›¸1?ð@@@@*@*?ð?ð?ð?ð?ð?ð¾ñàŽ€?0*<à?8½@ŧ¶?$wǪrEÒ@¨õëýY7g@Ÿòúä27Ú?Gœ”ÂÏ?3îüÆx™?‰ïCOÐ ?^å gê”@Ÿs‹À½Ÿ@>@¬M>vÈ´9Á.„€@¬M>vÈ´9@¬M+’:)È@¬M>vÈ´9@¬M;À6ä@¬M>vÈ´9@¬M>\‘ÑN@¬M>vÈ´9@¬M<£n/@¬M>vÈ´9Á.„€@žt+ IºÁ.„€@žt+ Iº@žtkíúCþ@žt+ Iº@žti*0U1@žt+ Iº@žtSŽóMk@žt+ Iº@žt6z—@žt+ IºÁ.„€@7Žì¿±[XÁ.„>¤µÜÆ@2¸r° Äœ@2ŨXy=Ù@21‰7Kƨ@2;íúCþ\@1O „M@1•Y³Ð|…@1O „M@1/Ÿ¾w@1O „MÁ.„NÜC,¥@8J¨?¬97êºþ?–Èó^ù„?ZÁ».œ?“êôÉøX@8Ù@8J¨?±Û”Ãbâã?¬ÿwŸSïZ?íu…XÚ?¡^候¼@8û—@8p÷?°RQÒ¿¦?¡jÐÅx?‘V]9½êV?•mCìc¿4@8 Ø@@@@*?ð?ð?ð?ðøøøøøøøøøøøø?@©žàÄ›¥ã@©ž‚Ðå`B@©žàÄ›¥ã@©žâe+Ô@©žàÄ›¥ã@©žó3333@©žàÄ›¥ã@©žö»˜Çâ@©žàÄ›¥ã@©žûô‡ü¹@©žàÄ›¥ã@©žù‡+@¤œ¡ÊÀƒ@¤›èr° Å@¤œ¡ÊÀƒ@¤›ò•éá±@¤œ¡ÊÀƒ@¤œƒS&@¤œ¡ÊÀƒ@¤›-žƒä&@¤œ¡ÊÀƒ@¤›VâëC@¤œ¡ÊÀƒ@¤›R{²þÅ@8}:’£@7ÇÎÙ‡+@3û Iº^@3ý«ŸU›=@397KƧð@3/HË’:@2𖻘Çã@2Ñ©ûçlŒ@2𖻘Çã@2º’£S&@2𖻘Çã@2¹õY³Ð}?ÎÜk!Ë«Ü?‘ ·èe?žrÞÀ±ä?¤wá­P?º?Ñl#à¹?µ-AäpaÂ?­éW«ZM›?–÷-A?¿Î¯¼M?œˆ.6·k?¥=ƒ™íx@@@@@(@&?ð?ð?ð?ð?ð?ð?Öʈ¿¡å0Èo?„m¾Õãà‘?€Èö'åY¥@©žô ,@¤›}#a8œ?“‡Ñ“)/£?¦ï‘p:ˆ?åÓ- +ÅA?ß®Æ@‡@Ÿm~¸Øñ@@@¬Ï‡+ J@¬Ï‚ Iº^@¬Ï‡+ J@¬Ï†fffe@¬Ï‡+ J@¬Ï„›¥ãT@¬Ï‡+ J@¬Ï…8ï4×@¬Ï‡+ J@¬Ïƒ,¥zw@¬Ï‡+ J@¬Ï€ÞÒˆÎ@­xTýó¶F@­xWÎÙ‡@­xTýó¶F@­xT!-w@­xTýó¶F@­xS3333@­xTýó¶F@­xN}Vlô@­xTýó¶F@­xSŽóMj@­xTýó¶F@­xT,<ží@7uS&Á¾@7u$Ý/@2xr° Äœ@2usê³g¡@1ß²-V@1Þšv@1n_oÒ @1jdÂø7µ@1n_oÒ @1làuöý"@1n_oÒ @1lC,¥zy?}Ñ¿ž,?’«p~v]Ù?‘jh¨qã9?Aš%ðï?’ÒuèçxY?’Ýå"çX?–ªÎ­¡?“í +Âô‚?Å)Ì_“?‘°ß‡O©?“A ç’?‘ÔÄ÷Õ?ÉÏt +j?3ßa=„?ŒArUãA?‡ÕZ›µûÜ?‰Â“yä–ê?‡æê7²zE@@@@@*@(?ð?ð?ð?ð?ð?ð?#rFQà¿«6z@ }àA‰7L@ }Ü(õÂ@8zqÞi­C@8n í(Œç@4+¥ãS÷Ï@4-!ÿ.Hè@3A‰7KÇ@3“g ù l@3#ÉîËû@3'Á½¥@3#ÉîËû@3 ·€4mÆ@3#ÉîËû@3ƒ{J#:?ð°–Ž]? ÿ1‡åH?–¦r…û?Œä%—ëš?š¡ ùß8{?“Q´Î`°€?ð°–Ž]?•Ð\ÄÙ?—®ÓÿÛ?RLnj?˜| ´uþÁ?’Ü·Õ-í?ð*wjs—?šÑ~¿²Ô?”=øŽî‚}?‘@fº¬o(?Ä;Ãkr>?’ymícw\?ð@@@@,@"?ð?ð?ð?ð?ð?ð¿^$6ÝÞ?@õoŽ?KÔ@†Óò?S(ÑBSˆX@®+‚$DMÂ@ }ÚhÊ)?\U ®Ïá}?c2Ђx?]?¬VY¹s?¸DV¯ùR@Ÿrû#¯YY@B@«¶È´9XÁ.„€@«¶È´9X@«Áò×s@«¶È´9X@«¸ -à@«¶È´9X@«Â‚@·@«¶È´9X@«Ð-à @«¶È´9X@«¸üPH@¨9šŸ¾vÉÁ.„€@¨9šŸ¾vÉ@¨9žš@¨9šŸ¾vÉ@¨9•¨Xy>@¨9šŸ¾vÉ@¨9‘ë…¸@¨9šŸ¾vÉ@¨9˜ -à@¨9šŸ¾vÉ@¨9“3332@9Âò䎊Á.„>¤µÜÆ@58r° Äœ@58>BZîc@3´“t¼j@3´Ð©*0@3î_oÒ @3í¿HË’@3î_oÒ @3ãŽóMj@3î_oÒ @3åsê³g¡@8J¨?–:ð»}TÇ?˜g± ÓË?™ ­:>Co?¥êäa`Œ??µKA¢bŒ@8J¨?’HGªÂÛ^?˜“º£¹‡b? Ý aKå°? CÚ B÷?¡?–ÿŒ4@8p÷?¢»:³ãíÔ?ˆ†Ô‡º:?“¶º Yæ¸?¨ƒÑ0¹C?¤²¢Òó@@@@*@&?ð?ð?ð?ð?ðøøøøøøøøøøøøC@°y‡+Á.„€@°y‡+@°zˆâ.©@°y‡+@°z뤦@°y‡+@°z––@@°y‡+@°xä•âV@°y‡+@°x+š1@—; Ä›¥ãÁ.„€@—; Ä›¥ã@—;¤õ1ß@—; Ä›¥ã@—;£pÞ@—; Ä›¥ã@—;£• М@—; Ä›¥ã@—;Ÿ6Fé'@—; Ä›¥ã@—;¡]á»y@5m¥œàvÁ.„>¤µÜÆ@1©‡+ @1©à,í"@1Z~ùÛ"Ñ@1[åE´@0£ÉîËû@0£Ýxe@0£ÉîËû@0£›V.\K@0£ÉîËû@0£5ÑõH@8J¨?êôýÏIŒ?‘G6ÝÙX]?‹¬–Or†?‘)]«™¿E?ðS{ëaœ@8J¨?’V•ì ?Žg›è$?0ÌIíjû?‘(~Ð ——?›ÊéÅ@8p÷?!ê€ ½?‚æÀ:ÏC8?ƒ!ç•/1?†ÇÏSÿ/¦?†Ã²ØÑ@"@$@@8@5?ð?ð?ð?ð?ðøøøøøøøøøøøøD@Ÿ+ Iº@Ÿa‚Ï@Ÿ+ IºÁ.„€@Ÿ+ IºÁ.„€@Ÿ+ IºÁ.„€@Ÿ+ Iº@ŸÖ£'©¡@Ÿ+ Iº@ŸDÓôœÿ@¬Fˆ´9X@¬F‰xÔýô@¬Fˆ´9XÁ.„€@¬Fˆ´9XÁ.„€@¬Fˆ´9XÁ.„€@¬Fˆ´9X@¬F %zÜc@¬Fˆ´9X@¬F€ÌXk@6VšÔ,<Ÿ@6TÜÇ(À¶@25ãS÷ÎÙÁ.„M‰ûçm@1’Ðå`A‰Á.„QnÙ‡@1zÔ,<žíÁ.„NÜC,¥@1zÔ,<ží@1M¼ á»@1zÔ,<ží@1žÅ±Ë%â?’t D5·±@8#˜@8¾:@8 >+?¨“ðý" +?šÑIÊ ?}@T˜ÁÎ¥@8Î÷@8i§@8Å?¤k¯½µÈ?›JïŸ?Š9sîgD@8 * @8p÷@8¶?—i¾Cþr.?•Ìì K¹é@@5@$?ð?ð?ðøøøøøøøøøøøøE@ží+@8Iç@8Ù?…ðE[i)@8Î÷@8i§@8Å@8S@8û—?ÞwÆvë@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøF@¯6”záG®@¯6“÷ÎÙ@¯6”záG®@¯6”9Xb@¯6”záG®@¯6˜“t¼j@¯6”záG®@¯6“Z…‡”@¯6”záG®@¯6‘©ûçl@¯6”záG®Á.„€@¬ùwÎÙ‡@¬ùwÎÙ‡@¬ùwÎÙ‡@¬ùxl"h +@¬ùwÎÙ‡@¬ùy‡+@¬ùwÎÙ‡@¬ù|PHð@¬ùwÎÙ‡@¬ùu?|í‘@¬ùwÎÙ‡Á.„€@3ÿ–»˜È@3ÿoÒòä@0@ Ä›¥ã@0@Ë)^ž@0'KƧïž@0'8}¿H@/p‰ 'RU@/s÷ÎÙˆ@/p‰ 'RU@/p£× +=p@/p‰ 'RUÁ.„NÜC,¥?€‚ñêã ?ÎÁ¯‰t0?‘¶å¤wk½?Ú¾ÉÛ²º?‘ƒZ)Àˆ@8Ù?}Ñ¿ž,?’j•×›c?‘F·ˆ¤µÜÆ@4@ Ä›¥ãÁ.„M‰ûçm@3È“t¼jÁ.„QnÙ‡@2á:’£SÁ.„NÜC,¥@2á:’£SÁ.„NÜC,¥@2á:’£SÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøH@¢Ûhr° Å@¢Ûi7Kƨ@¢Ûhr° Å@¢ÛeðoiD@¢Ûhr° Å@¢Ûp©*0@¢Ûhr° Å@¢Ûyb¶®@¢Ûhr° ÅÁ.„€@¢Ûhr° ÅÁ.„€@ª‹«…¸R@ª‹­V@ª‹«…¸R@ª‹«…¸R@ª‹«…¸R@ª‹£ÉîËú@ª‹«…¸R@ª‹›¥ãSø@ª‹«…¸RÁ.„€@ª‹«…¸RÁ.„€@6^Hè§æ@6]\ú¬Ùè@3¡hr° Ä@3¤mÅÖ8†@3ö§ï²-@3øï4Ö¡b@3œÚQÎ@3˜Xy=Ù€@3œÚQÎÁ.„NÜC,¥@3œÚQÎÁ.„NÜC,¥?|öOÿÝ?—.‰†5¸?£Ï[ì—:¤µÜÆ@4Ï|í‘hrÁ.„M‰ûçm@3îùÛ"ÐåÁ.„QnÙ‡@3½cˆe”°Á.„NÜC,¥@3½cˆe”°Á.„NÜC,¥@3½cˆe”°Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøK@¡kùÛ"Ðå@¡lÊÀƒ@¡kùÛ"Ðå@¡kø†YJõ@¡kùÛ"Ðå@¡kéxÔýô@¡kùÛ"Ðå@¡kõ*™1@¡kùÛ"Ðå@¡kñ4êJ@¡kùÛ"Ðå@¡kìL˜_@ªN{çl‹D@ªNžùÛ"Ñ@ªN{çl‹D@ªNoÒó@ªN{çl‹D@ªNn—Oß@ªN{çl‹D@ªN‡æšÓ@ªN{çl‹D@ªN‰“ àà@ªN{çl‹D@ªN†ÏAò@6¥öý!ÿ.@6•öý!ÿ.@4œIº^5?@4'RT`ª@3×ï²-@3Ñø -à@3ž«6z‘@3œ˜_ö”@3ž«6z‘@3 A‰7KÇ@3ž«6z‘@3¡$Ý/?àþTxvc?¢4o:™v?£YtBs6…?‘CÀ><¹?—­¦¾z£—?œˆš—I?ÀÊ»d9\?©™™™™™š?œT¹o¿‹õ?’àêE©³?™)Â>¡$;?™¯m,·¦h?½`{ÕÄwz?›Õ¼ÉUÓ›?‘¦dpnÐû?”oɼ|)E?–í +e˜›ï?•mCìc¿4@@@@@*@*?ð?ð?ð?ð?ð?ð¿p_kàK€¿DFàì?c¿{¬œ?[ͨ¤T@¡kñ±u>æ@ªN‡ß¦U›?qz+EÃ.?k†ÂQñS?Î2L»Ò‚?ÁûðÊ•ž@Ÿr/wÃ0D@L@¬ r-V@¬ q©ûçn@¬ r-V@¬ sZ…‡”@¬ r-V@¬ sœ¾á@¬ r-V@¬ s@N¤©@¬ r-V@¬ qhr°!@¬ r-V@¬ qÎ_@­ q&éxÕ@­ q&éxÕ@­ q&éxÕ@­ qhr°"@­ q&éxÕ@­ r×s@­ q&éxÕ@­ q[W>¬@­ q&éxÕ@­ quŽ!–@­ q&éxÕ@­ qœàu÷@12ÃÉîËû@12ÃÉîËû@,ÍV“@,Í:’£@,Œ1&éy@,‹àÞÒˆÎ@+G“Ý—ö,@+G ù kº@+G“Ý—ö,@+G_oÒó@+G“Ý—ö,@+Gy¦µ ?É^òÀXæN?°çR;?‘"žæÆó¡?‹Æ úJ-M?ðÌÇßgé?·t¤¢‚J?ÐbMçê_x?’ ,øÕC©?¹º–Èj?;ß $Þû?â2„&ÿh?PS2K¯™?€bMÕky?Œ°¶.Ä+Æ?‚|׿pZ?‚éXëLL÷?†ŠúЀ>(?†’Õaì+’@@@@@,@*?ð?ð?ð?ð?ð?ð¿O7ý#@?—د¸?/ϰÕ>îâïA@ч@¬ rˆ@­ qv³,,?=à^ Þ„Ì>ý@© =Ф?uÝÌÛ©7>ò´äΦ~@Ÿs +}%‚@M@®¹1&éy@®¹éxÔþ@®¹1&éy@®¹â‚@¹@®¹1&éy@®¹ÈK]Ì@®¹1&éy@®¹»/ìW@®¹1&éy@®¹Ë)_@®¹1&éy@®¹ýŠÚ¹@¥*H1&éy@¥*H1&éy@¥*H1&éy@¥*FÏAò@¥*H1&éy@¥*GE8ï6@¥*H1&éy@¥*H§æš@¥*H1&éy@¥*Iã½@¥*H1&éy@¥*Iã½@4–šÔ,<Ÿ@4•¡ÊÀƒ@0Š^5?|î@0ޏQë…@0t“t¼j@0tÖ¡aäø@.­úCþ\’@.¹ k¹Œ@.­úCþ\’@.·škP°ó@.­úCþ\’@.±œàuöþ?žˆ2}?òb[±?‘©ŠÕ ·Ñ?’ {½4?’ §¹i»µ?‘Iãd©ìòîAú.(@®¹Þ +Fé@¥*H ~ô?E»:-?LÇâQ~?’qù¥.?0[Ü^4Îú@Ÿg+ +ì‹^@N@«R_;dZ@«RlFtM@«R_;dZ@«R_W“@«R_;dZ@«R]ô’Eô@«R_;dZ@«R` s‡@«R_;dZ@«R]ÈK]@«R_;dZ@«R]~JÑ@™te`A‰7@™t]tbs|@™te`A‰7@™tv©ms8@™te`A‰7@™tm-ÝÍ@™te`A‰7@™tg2+¦@™te`A‰7@™ttÿß$÷@™te`A‰7@™tk>òµ@8Žì¿±[X@8‹w§r–@2GÎÙ‡+@2B˜tþyB@1>V“u@19-€©@/úÇË)_@/óŠlóU®@/úÇË)_@/ó÷@ ¶ò@/úÇË)_@/ó“Æ©­v?ŸÙù)Ë@ý?î÷ƒ}?‘ýKúñÖ?Œ;Òmîœ?‘1)8’™X?Ù4€nr?£Vå”Åz?“G Dh1Õ?’X˜^¤µÜÆ@3¦‡+ J@3ÔzáG®@2RÐå`A‰@2^p:û~‘@1ÜÚQÎ@1Þƒä%®æ@1ÜÚQÎ@1Üô!-w@1ÜÚQÎÁ.„NÜC,¥@8J¨?µ½½5FÄ´@Ÿp¿ú@Q@¨+çï²-@¨+èõrî@¨+çï²-@¨+çRT`ª@¨+çï²-@¨+êôðØE@¨+çï²-@¨+æ +¦L0@¨+çï²-@¨+è22ë-@¨+çï²-@¨+ë Úœ@œpˆ1&éy@œp‰º^5?@œpˆ1&éy@œpx7´¢4@œpˆ1&éy@œp}Vlô@œpˆ1&éy@œpzCþ\’@œpˆ1&éy@œp†®¸ˆ½@œpˆ1&éy@œpxÔøÒS@4£g ù l@4£dZ¬@2#÷ÎÙ‡@2!Î_p@1²-V@1”M:’£@1+xFÜ^@1<¾ß¤@@1+xFÜ^@14RÀèP@1+xFÜ^@11ŽÓxöv?|¬Æ Væ?‡åƒêM?—bÕ/ŸÓ?›©Ñ®vtQ?éB®ÀTS?‘¾›¡‚ ?|Ñb×¶@?“ý•‘|? rƒ ?@²ËÏ(?‘CX-““?H, +U}?‚n¼Õ‰Vÿ?ŽOv_Ø­«?ˆ†Ô‡º:?ˆW„hðQ?Š2±ÀÒ#Z?ŒŸ6/ºðÐ@@@@@0@0?ð?ð?ð?ð?ð?ð?:Mâ ¿U…ÿœä?7C›IU{?D´Qs@¨+é}]@œp„4‚Ã÷?X18²$´Ç?eNFØ&?ºD·µÎî?Ôò°”¼$@ŸfnB^ Ä@R@©‰7KÇ@©z>åHs@©‰7KÇ@©…ªtò›@©‰7KÇ@©‡ºñs6@©‰7KÇ@©óÞ6@©‰7KÇ@©~¬ªb@©‰7KÇ@©¢’E6@—‹—Oß;@—‹”záG®@—‹—Oß;@—‹ ÍgîŠ@—‹—Oß;@—‹³óf @—‹—Oß;@—‹š}°y@—‹—Oß;@—‹ž¾ƒq@—‹—Oß;@—‹Ÿ'ÛXß@7 ]cˆe”@7Ø0¢v @0î5?|í‘@0îÆ6°–5@0]V”@0\dªÀ½!@/p‰ 'RU@/pßl¯;|@/p‰ 'RU@/oëB&Æ@/p‰ 'RU@/l\ž£?‘ɱb)Q?ª‡:4?‘})°Y°©?Œ=…?‘]Xýæä?‘Ô"†?å ?‚n—Oß>?šÑ~¿²Ô?„ˆëC&z?ƒ¦bŒšl?‡R‚8ë«?†ÿ‘ýöŠÃ@@$@(@(@;@:?ð?ð?ð?ð?ð?ð?PØC‚n?RôT$?A·'&óD>?‡ÍãN|@©~7õÅ @—‹šÏ¢Pˆ?]ô(‘J%?:œœæ?º-/wÄJP?y=–vÙ.ä@Ÿk.§ÀÂ@S@ û×Oß;@ û×Oß;@ û×Oß;Á.„€@ û×Oß;Á.„€@ û×Oß;Á.„€@ û×Oß;Á.„€@ û×Oß;Á.„€@š?éxÔýô@š?ì‹ê…@š?éxÔýôÁ.„€@š?éxÔýôÁ.„€@š?éxÔýôÁ.„€@š?éxÔýôÁ.„€@š?éxÔýôÁ.„€@3·â‚@·€@3¹2åõEÿ@/)7KƧïÁ.„M‰ûçm@-ÄZ¬1Á.„QnÙ‡@-kjçÕfÐÁ.„NÜC,¥@-kjçÕfÐÁ.„NÜC,¥@-kjçÕfÐÁ.„NÜC,¥?}9ãXÕ@8#˜@8¾:@8 >+@8Iç@8Ù?|¬g•~D@8Î÷@8i§@8Å@8S@8û—?‚ïýˆÚ=@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøT@«vÍÒñ©ü@«vÑ©ûçm@«vÍÒñ©ü@«vÃn.±Ã@«vÍÒñ©ü@«vÅm\ú­@«vÍÒñ©ü@«vÎp:û€@«vÍÒñ©ü@«vÊdÂø9@«vÍÒñ©ü@«vÏ·éù@¢ý(õÂ@¢ý$“t¼@¢ý(õÂ@¢ýŠÚ¹õ@¢ý(õÂ@¢ýÀëíú@¢ý(õÂ@¢ýÿ—$@¢ý(õÂ@¢ý3Ð|„¶@¢ý(õÂ@¢ý1ø .@6¨†YJôñ@6¦®}Vlô@4€ Ä›¥ã@4-w1Å@3´“t¼j@3¸ºÇË*@35µsê³h@35‡“Ý—ö@35µsê³h@3.\‘ÑN<@35µsê³h@3/¤?åÉ?¡EÉ@Ú?}S]N +?ÛÁB‰)?’¡ð¾÷ÅÝ?œÑÎ$ôïÔ?œs[Îæz?–ªÎ­¡?›ªÊît…?”¿?>‚#§?’k­ªì¢H?šRýi¡ô?›LÔp%„Y?—}d1HØÂ?™î  lƒ?ˆLdB"%?Œ(æQ?¡ÏX¼ãs~?‘øù>3}@@@@@$@"?ð?ð?ð?ð?ð?ð¿G!-ã ?iç<¦¼?Nk¤Lö?Ï?gåÏ|f1a@«vÎk@¢ý(;-Ål?f2Zwæ½W?„~²n˜R?¸#FtÇ ?ùLîPæ¥@Ÿl‡eeú)@U@¤pOß;dÁ.„€@¤pOß;dÁ.„€@¤pOß;dÁ.„€@¤pOß;dÁ.„€@¤pOß;dÁ.„€@¤pOß;dÁ.„€@ “Ôýó¶FÁ.„€@ “Ôýó¶FÁ.„€@ “Ôýó¶FÁ.„€@ “Ôýó¶FÁ.„€@ “Ôýó¶FÁ.„€@ “Ôýó¶FÁ.„€@9p4mÅÖ8Á.„>¤µÜÆ@6°Ä›¥ãTÁ.„M‰ûçm@5gKƧïžÁ.„QnÙ‡@4æYJôðØÁ.„NÜC,¥@4æYJôðØÁ.„NÜC,¥@4æYJôðØÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøV@¯§Ç®zá@¯§â$Ÿ@¯§Ç®zá@¯¨û—]c@¯§Ç®zá@¯§±ç~@¯§Ç®zá@¯§ý÷fyD@¯§Ç®zá@¯§¨êÄJ@¯§Ç®zá@¯§ÌÙè>B@”É]/Ÿ¾@”É C•@”É]/Ÿ¾@”É _ȱ@”É]/Ÿ¾@”ÉnÄ@Hô@”É]/Ÿ¾@”É$J(ÚÉ@”É]/Ÿ¾@”ÉKµ (Å@”É]/Ÿ¾@”É)“ àß@8ÖšÔ,<Ÿ@8.ʾj¼@5f‡+ J@5FL{|@4Àå`A‰7@4í¼“‹@4‚@·€5@4QoV¢@4‚@·€5@4*ñB΃q@4‚@·€5@4&ÏAòØ?|ò0p‰J?¢X‹û/Z¬?°Ö„;yK?­3ÊR2\?¬–ùLáD?²±ñ?©:ŠÊÙ?©O¸»Ã?±PÈõJ?ž|±‡y‘?¨ögˆzË›?± ÜŠñ+œ?¢ÐÛ&˜Þ?˜$nªiJ=?«’ Gjæ?¢cò[èz?§,B S?°8€4|@@&@(@*@<@*?ð?ð?ð?ð?ð?ð¿xLüƒV?vp/ÿ@?z„øiî?h%b™@¯§ÓË=0@”É%¶ˆšœ?Ÿ5²À±ã÷?x6iPm@ ¶—W;¥?Óí_¸®ò*@Ÿhÿ0f‚f@W@­}Û"Ðå`@­}Þ5?|î@­}Û"Ðå`@­}âZîc @­}Û"Ðå`@­}ÚîcŠ@­}Û"Ðå`@­}áG®{@­}Û"Ðå`@­}èr° Ä@­}Û"Ðå`@­}×´¢3@«ËŸ;dZ@«Ë²-U@«ËŸ;dZ@«ËŠÚ¹õ@«ËŸ;dZ@«Ëœ‘ÑN;@«ËŸ;dZ@«ËˆÎp:û@«ËŸ;dZ@«Ë¦1ø @«ËŸ;dZ@«Ë¤÷eýŒ@7 ØDЩ@7!‰7Kƨ@4¦‡+ J@4¢GE8ï5@3ûƧï²@3ö+jçÕg@4uµsê³h@4d9XbN@4uµsê³h@4r@·€4n@4uµsê³h@4r@·€4n?Œs¤DÅÐ?™Æ‰©·?–·ª_r’ ?–O@:åÊ?žÎÑé?¢†)™„}U?3ßa=„?ž%Œ@&—?—ˆ”„òõ¤?š€ßF à?›™¬ï?£+ÍNPÞ?…~ÆÎÇ$†?‘a÷nñ?‘7#Œ!xv?™Ø^FC}?¥¯X昘?¡è9)—N-@@@@@"@&?ð?ð?ð?ð?ð?ð?D§}¬¸?A*Õ°?Y²–“ŽP?n=Ž9 Òî@­}à’¼K@«Ëœ.=~?wò^BÉ~8?/Xϼ?á[°³@-¼àìé@ŸgsùW@X@¨Š%`A‰7@¨Š%¸Qí@¨Š%`A‰7@¨Š(Îp:û@¨Š%`A‰7@¨Š'“Ý—ö@¨Š%`A‰7@¨Š'»/ìW@¨Š%`A‰7@¨Š$Âø7µ@¨Š%`A‰7@¨Š!ÿ.Hé@©"ÎÙ‡+@©"Ò-V@©"ÎÙ‡+@©"Ж»˜È@©"ÎÙ‡+@©"ÎV“@©"ÎÙ‡+@©"Ó&Á¾@©"ÎÙ‡+@©"Ðå`Aˆ@©"ÎÙ‡+@©"Ð-à @7òÃÉîËû@7íæšÔ,<@3£÷ÎÙ‡@3§+ Iº@2â-V@2ãþ\‘ÑN@2 ¿±[W?@2 «ŸU›=@2 ¿±[W?@2 ¿HË“@2 ¿±[W?@2 —ö+jè?žŒÝÙ›P?“gU·q#?“a#mU?ŽËÜ¿€?’?;Áƒè?’?=ÆþÎò?’Óusÿ\Ã?–HÞÆzì²?˜ Þ€ÁìŸ?“ÅÒÏPÉä?’ÞH†<²?‘)]•\­?–-¤]î§É?÷¾I1;?…/‡ÙX·³?†O.ce?‰/ã̽`ª?ˆCns¥ @@@@@*@&?ð?ð?ð?ð?ð?ð¿P4é¿;ü‘?KËA'o3?4 +Kêÿu¸@¨Š%N=Äö@©"ÑqYN?d… ¥%?Ry§ÛšÛº?À™,&j2q?Ÿ€5ÍóQZ@ŸnBNb<@Y@«;vÈ´9X@«;nÙ‡+@«;vÈ´9X@«;|¾ß¤@«;vÈ´9X@«;yÎ_p@«;vÈ´9X@«;}Ùb¶@«;vÈ´9X@«;yÎ_o@«;vÈ´9X@«;x -á@£´@£´Ðå`B@£´@£³öE¡ÊÀ@£´@£³öÈ´9X@£´@£³ð£× +=@£´@£³ö4ë@£´@£³óMj@7ð4mÅÖ8@7ñ©ûçlŒ@3?|í‘h@3üPH@2—ï²-@2“Ý—ö+k@23&Á½¥@2,ÌÌÌÌÍ@23&Á½¥@2-žƒä%¯@23&Á½¥@2.\‘ÑNµDà?‘­b š=?“ÉŸ“_Æ?—pü”_ù?—ã ËÄž?–í +e˜›ï@@@@@*@&?ð?ð?ð?ð?ð?ð¿gÖ%tX?FšGˆ˜?Qµu¦†2?eL1 +cFƒ@«H8/Â@£¬qÏ66?qõêà;Ð?ƒC*9ê¢?Óß”X‰C?äÂö@Ÿkú­º|²@[@¦“Ä›¥ãT@¦“ϲ-@¦“Ä›¥ãT@¦”;‹¬q @¦“Ä›¥ãT@¦”P°ò{³@¦“Ä›¥ãT@¦‘BZîc @¦“Ä›¥ãT@¦û/ìVÖ@¦“Ä›¥ãT@¦m\ú¬Û@ªFèõÂ\@ªFåãS÷Ï@ªFèõÂ\@ªDK¹Œ~)@ªFèõÂ\@ªFžOv_Ù@ªFèõÂ\@ªCÂ\(ö@ªFèõÂ\@ªC—ö+k@ªFèõÂ\@ªCcÉîËû@8쿱[X@8ÊÀƒn@3ÇÎÙ‡+@52œwškP@3t¼j~ú@3C¯·éú@2ãÉîËû@1;çl‹C–@2ãÉîËû@1J¬Ùè>B@2ãÉîËû@1[…¸Qì?§Q,Äš¤?ËÎ÷‹#c•?Òê¨\æð¥?Ô›_'÷ ?Û-hR?Û§¯Á:b?•²»UbB2?ìg«ný?äôÚ›Ìÿ?á!sÑz?áu¢‚ú?ß[y jXÓ?„A'Š_]?úi‚§œ^6?áN(† ï?« +°š´*?”¼íÒh@?”dIt£©P@@@@@*@*?ð?ð?ð?ð?ð?ð¿ËIÄ'%(¿Ê‰[ì@?š»»³{ßÃ?‡J^`u@¦“5OŸž˜@ªFP¿÷3?¨‚ww?¥½7fªÊ?÷Y­uÃê}?ò=ãÕ›Ô@Ÿ[ˆnùE@\@©ŸmV@©ŸmOß;d@©ŸmV@©Ÿn_oÑ@©ŸmV@©Ÿn¾ß¤@@©ŸmV@©Ÿn_oÒ@©ŸmV@©ŸkŸU›=@©ŸmV@©Ÿlq ²–@¢‰— +=p¤@¢‰— +=p¤@¢‰— +=p¤@¢‰–‡+ @¢‰— +=p¤@¢‰–_Ø­¬@¢‰— +=p¤@¢‰–‡+ @¢‰— +=p¤@¢‰–È´9X@¢‰— +=p¤@¢‰–ð¹@32ÃÉîËû@32ÃÉîËû@.f§ï²-@.fÂ&€I@,ãn—P@,ãn—P@-#¼ÓZ…ˆ@-#ä%®æ2@-#¼ÓZ…ˆ@-#ä%®æ2@-#¼ÓZ…ˆ@-#¯·éú?|öOÿÝ?Òç{íj?‘"žæÆó¡?‹ä†€{6è?‘ ·èf?×°ë*–w?|¬Çëý ?’5CàQ?†[‘'Í?CÚ B÷?îCq$u?_Ø~tñ?‚n—8‹8?Œ¸†‡ÄÅ?‚2Y0âµ?‚ð'ã:ÂÝ?†’Õaì+’?†špk Y@@@@@*@,?ð?ð?ð?ð?ð?ð¿(‹_±@¿ õö@?,-#ÛÍø? +ÑM–z†@©Ÿm^1@¢‰–äi³š?LUs§Cê?+SÍçÚý?¥9gèŽÀ=?cz£BÇ"Õ@Ÿfò‰ì²-@]@¡ÎÑë…¸@¡ÎÒn—P@¡ÎÑë…¸@¡ÎÒÏéHz@¡ÎÑë…¸@¡ÎÒtGF–@¡ÎÑë…¸@¡ÎÔ$Ú“@¡ÎÑë…¸@¡ÎÑêH±r@¡ÎÑë…¸@¡ÎÓYqî@›Z9XbN@›Z9XbN@›Z9XbN@›Z<´@¸>@›Z9XbN@›Z,§ê@-凓ݗö@-凓ݗö@+©7KƧï@+¨Ö-êiá@+Ó¶E¡ÊÁ@+ÓU´AB@*õ¨Xy=Ú@*ñâœ5÷.@*õ¨Xy=Ú@*÷e¡!Tb@*õ¨Xy=Ú@*öX¹÷}?É^ÈmÔ d?ÂjÕͪ_?‘ ëÙn?‹¬ÑÊ–áŽ?‘&¤Ò{Šï?ÄüÃAn?ÐbMÝn½?’¬›Úc’?4Ó˜.?@M÷)Ä%?äÂDE$?jTô–ò ?€bMÔŠ»?Œ¶4=á ‘?‚xºœA}?„]s4P;?†™jËfNª?†«{{¡@@@&@"@"@5@1?ð?ð?ð?ð?ð?ð¿B0<\\¿F© ޝ€?AJSÆÖÖ¯?9 ±E¯„@¡ÎÓ0Îò’@›Z?,—î?P­‹®G<7?G³^v˜Š¦?›óŸD+?ˆn}HÊ@ŸsÔŸ¸ @^@®Á;çl‹D@®Á=\yž£@®Á;çl‹D@®Á=—ö+k@®Á;çl‹D@®Á@ÞÒˆÍ@®Á;çl‹D@®Á<£n.@®Á;çl‹D@®Á?¾vȳ@®Á;çl‹D@®Á<àuöý@:Oß;dZ@:["Ðå`@:Oß;dZ@:JÚ¹õZ@:Oß;dZ@:H´9X@:Oß;dZ@:P|„µÞ@:Oß;dZ@:S àÞÓ@:Oß;dZ@:N;Í5¨@7uS&Á¾@7p +PëöÄ@2£÷ÎÙ‡@2¥‡“Ý—ö@2q‰7Kƨ@2tðØDÐ@1Ê0U2a|@1Ì¿±[W?@1Ê0U2a|@1ÍIQ‚©“@1Ê0U2a|@1Í¿HË’?}x—™åC~¿TÅìáª?6î’QLõW?6%1ÓøBï@®Á=I Ó@:T¤µáí?WŽ=‡Î[À?UÇY6b.?¸QÊÑHøT?°“þ­¹“@Ÿh? ÞÅ@_@° · +=p¤@° · +=p¤@° · +=p¤@° ¶ð¹@° · +=p¤@° · ù m@° · +=p¤@° ·æšÔ@° · +=p¤@° ·Ë)_@° · +=p¤@° ·¯·é@ÒÐå`A‰@ÒÑë…¸@ÒÐå`A‰@ÒÏv_د@ÒÐå`A‰@ÒÍ„M<@ÒÐå`A‰@ÒÔ,<ží@ÒÐå`A‰@ÒÑÎ_@ÒÐå`A‰@ÒÏv_د@5™*0U2b@5˜K]Ìcò@1ë¥ãS÷Ï@1ëÓÃa@@1 "Ðå`B@1 C•%@0ž«6z‘@0žì¿±[X@0ž«6z‘@0žùÛ"Ðå@0ž«6z‘@0žß¤?åÊ?}Ñ¿ž,?š¾ßÍZ?‘ñê&ètä?Œ2ÌUÃT?‘çG¸?‘ë´¤G?‚á²Olºü?’Ȳõa®?ÔCXsò?UÕh;·Å?‘jÐÅx?–’+¸¢d?‚á²Olºü?ŒïQ¼º“ã?‚á²Olºý?ƒ¼9XNÄu?†å·ÑfWà?‡×7°º@@@@@,@(?ð?ð?ð?ð?ð?ð>ܽȿ#N-# >÷ÐñiY? ?,Óâ­Ýû_@° ·K&®@ÒѤp¡\?A( P?M@ÿD’F?=C€jÆ®?¡ÝtE šD@Ÿh «êÜ@`@  ŽV“@  ‘hr°@  ŽV“@  \´Õ”§@  ŽV“@  Êi¯@  ŽV“@  y9v@  ŽV“@  ^x°™×@  ŽV“@  e´\{ @¢zG®zá@¢z@Ñ·Y@¢zG®zá@¢yùãM7|@¢zG®zá@¢y¹ž¶ +¥@¢zG®zá@¢yúVeð@¢zG®zá@¢z1‘lHî@¢zG®zá@¢z5#.©f@8|ÚQ@8àT¶’@3‚° Ä›¦@3‘ ʈ@34“t¼j@3N)JC @2cÉîËû@2hïJÄXH@2cÉîËû@2]³G\¥Ê@2cÉîËû@2_¸.Íø™?‘õRLä1T? Ó¶ºzñ—?¹ˆÑ &bÄ?²Z: mÁ?¡ +:âg?–7ç«í–ž?|çµB &€?©žo0üD?Á—’3ìü?© •ЂA?—ÚËÐ…Æ?™pkQÏ2?Šßä_4'0?™G†²TUò? Óì ¤åÄ?‹¨ÄŒ®?ÆFca¼? ÙöÍÐQ@@*@(@*@5@3?ð?ð?ð?ð?ð?ð¿âD…À¿o`…G?Yn;ª8¿u?mâ®[ |ð@  x«Äq@¢z7VDj?|´2Øÿh?¥‹:˜* ?äRõiRT@iw$/*@ŸhûÜFê@a@£_çl‹C–@£_ç®zà@£_çl‹C–@£_èð@£_çl‹C–@£_èK]Ìd@£_çl‹C–@£_èK]Ìd@£_çl‹C–@£_æšÔ,=@£_çl‹C–@£_æšÔ,=@­€u?|í‘@­€u?|í‘@­€u?|í‘@­€u›=È@­€u?|í‘@­€u›=È@­€u?|í‘@­€u?|í‘@­€u?|í‘@­€usê³h@­€u?|í‘@­€u›=È@-7süPH@-7süPH@&MV“@&MquŽ!@$ãn—P@$ãn—P@$…oi@$…œàu÷@$…oi@$…œàu÷@$…oi@$…œàu÷?É_\p)Ï?Ï[äeæºW†Ë¦@£_çIÈk¬@­€ujÑÕÅ??)=3ج>õ@i½h0?wã»DÛ®e>äHÝviŽ@Ÿs¼Ϋ@b@©§_;dZ@©§_;dZ@©§_;dZ@©§Uéá°‰@©§_;dZ@©§WXâe@©§_;dZ@©§U›=Ç@©§_;dZ@©§ZáG®@©§_;dZ@©§X*™0½@¨9)ûçl‹@¨9%`A‰7@¨9)ûçl‹@¨9 º^5?@¨9)ûçl‹@¨8üj~ùÛ@¨9)ûçl‹@¨8óÝ—ö+@¨9)ûçl‹@¨8ÿ¤?åÈ@¨9)ûçl‹@¨8óÃa@@5Hè§æ@5Çy¦µ @3=‘hr° @3,(õÂ\@3"-V@3 ³Ð|„¶@2¿ò䎊r@2¨l"h Ô@2¿ò䎊r@2­Òñ©ûè@2¿ò䎊r@2®!–R½ +fuæ?œ”ÒÚ×¾æ?’"Š6›Wz?¥þ–ÓOß?­*cuùV?‚¸“Îè ÷?Ž>ž¬ˆ?Œ¢yëjk±?|ënÓ¿Ü?Š|)-}í(?Š—à `ž@@@@@,@*?ð?ð?ð?ð?ð?ð¿[BMZl¿ŽLš'?GE~{_m£?k­gã¤Î@©§\v-id@¨9ƒ *„?d·¿Kb ý?„®ù …‰?Ó*6ïÚë¸@„O+?r@Ÿa²Þ˜?•öÉbÒ%?¥èT+ä?¥¤ð!u†?‘¶ð ‘“ˆ?’'‹Œ®„?‹ˆv>?‹—mGŸÀC?–U$M\ñ?”û²žRY=@@$@@@7@5?ð?ð?ð?ð?ð?𿚠g #¿„#([Ì?bŒe=}w(?B0{VO@¬Žn«´ì@š#…rJ^?yíØ"l>?ZAðÐ4¡ô?ò…­n*ÎÀ?³rø—°@Ÿ`M%Í@d@ªðÈ1&éy@ªð°å`A‰@ªðÈ1&éy@ªðÈË’:@ªðÈ1&éy@ªð»št@ªðÈ1&éy@ªð³g ù @ªðÈ1&éy@ªð¹0¾ í@ªðÈ1&éy@ªð¹õY³Ï@­¬I7Kƨ@­¬@Ä›¥ä@­¬I7Kƨ@­¬JÀƒo@­¬I7Kƨ@­¬I^ž +@­¬I7Kƨ@­¬F?@­¬I7Kƨ@­¬Aò×s@­¬I7Kƨ@­¬AG®|@8Ù*0U2b@8ðbMÒñª@4 Iº^5@43œ¾à@3RÐå`A‰@3R@·€4n@3‚@·€5@2û‹¬q ²@3‚@·€5@2úáG®{@3‚@·€5@2þžš?žˆ2}?ÎÁ¯‰t0?˜²éÃ_ÓÔ?Ég(6ßð?¤R„¯” ,?˜Ê`1ó€`?Ž=fA:?”=øŽî‚}?’$ûJw"Ú?‘~¬Àm?ó?œC]F~Ü?™J•Ø3ÈÖ?¤±AK\Þ ?‘­b š=?•ë þÅ?•B¿²ô@?‘p&Æ ç–?¥0àro{8@@@@@,@*?ð?ð?ð?ð?ð?ð?Z‡8`?<3ÏÀ?8@`ˆ‰b¯?Lªiá@ªð´UÚÛL@­¬BÈcïÎ?XV+ëk?iò²²¸•£?­À¦‡Ôô?ËÚrüÃ×’@Ÿgluôb@e@©däÝ/ @©d䛥ãT@©däÝ/ @©dåðoiC@©däÝ/ @©d凓ݘ@©däÝ/ @©dæ +¦L0@©däÝ/ @©dã× +=q@©däÝ/ @©d㢜wš@©Ô›¥ãSø@©Ô›¥ãSø@©Ô›¥ãSø@©Ô›¥ãSø@©Ô›¥ãSø@©Ôœ„µÜÆ@©Ô›¥ãSø@©ÔœPHð@©Ô›¥ãSø@©Ôœ]cˆf@©Ô›¥ãSø@©ÔœPHð@1¨†YJôñ@1¨Œç¯¸@-©7KƧï@-©7KƧï@-Œ1&éy@-Œ/ƒ{J#@+”`ªdÂù@+”Fs×Û@+”`ªdÂù@+”mÅÖ8‡@+”`ªdÂù@+”‡ü¹#£?É^³Dw'?ÖÈ ¼?‘.Ò®ó_ ?‹²MÿAÿ8?ðÌÇßgé?¾ƒìÈÁ?ÐbMçê_x?’#maЀ?ŽËÜ¿€?3.Ylî?ÚÌA B{?Uÿyu”#?€b¡´ñ@?Œ²ÅŒÕ6?‚2Y0âµ?‚éXëLL÷?†–f_ÔŠŠ?†l&þ@@@@@*@(?ð?ð?ð?ð?ð?ð¿Q´µ>שw5?3vV? >úAÑÐ}n@©däª×d©@©ÔœTñY?BÏ^9Çô?¯Q>Û…;?[d¦Ÿœ;? +¯·¸C3¾@Ÿs/÷[@f@Ÿ9‰7Kƨ@Ÿ9Z¡5›R@Ÿ9‰7KƨÁ.„€@Ÿ9‰7KƨÁ.„€@Ÿ9‰7KƨÁ.„€@Ÿ9‰7KƨÁ.„€@Ÿ9‰7KƨÁ.„€@œÀ©ûçl‹@œÀB5O@œÀ©ûçl‹Á.„€@œÀ©ûçl‹Á.„€@œÀ©ûçl‹Á.„€@œÀ©ûçl‹Á.„€@œÀ©ûçl‹Á.„€@7ÞHè§æ@7ö"LýïQ@3®5?|í‘Á.„M‰ûçm@3ÝV”Á.„QnÙ‡@2”mÅÖ8†Á.„NÜC,¥@2”mÅÖ8†Á.„NÜC,¥@2”mÅÖ8†Á.„NÜC,¥?|¬gvÃ×é@8#˜@8¾:@8 >+@8Iç@8Ù?ƒÑùÑc@8Î÷@8i§@8Å@8S@8û—?Ÿþã’ô™û@8 * @8p÷@8¶@8 Ø@8 Ø@ ?ðøøøøøøøøøøøøg@®mñ©ûçmÁ.„€@®mñ©ûçm@®mò×sü@®mñ©ûçm@®mòn—P@®mñ©ûçm@®mòˆÎp:@®mñ©ûçm@®mðØDÐ@®mñ©ûçm@®mðØDÐ@¨¼¯²-Á.„€@¨¼¯²-@¨¼¯–»š@¨¼¯²-@¨¼¯²- @¨¼¯²-@¨¼¯ìVÕÑ@¨¼¯²-@¨¼¯ùrGE@¨¼¯²-@¨¼¯ìVÕÐ@(oÅoÁ.„>¤µÜÆ@"¸“t¼j@"¸ -à @!ÉxÔýó¶@!ÉxÔýó¶@!oj@!oj@!oj@!oj@!oj@!oj@8 +Näy?°çR;?‘½ümüñ?‹Æ úJ-M?êtÿKÑc?´âµÇ>¬@82rê?’ aÒ¹zï?r¼Jsž?/ò×ÈZø?ÏtP°*?L "¾@8L?Œ¬8 T£?‚nâwg?‚â‡~ûÉ\?†‡hÉÈÓ?†‡hÉÈÓ@@@@,@&?ð?ð?ð?ð?ðøøøøøøøøøøøøh@žÇ1&éxÕÁ.„€@žÇ1&éxÕÁ.„€@žÇ1&éxÕÁ.„€@žÇ1&éxÕÁ.„€@žÇ1&éxÕÁ.„€@žÇ1&éxÕÁ.„€@¥I7KƨÁ.„€@¥I7KƨÁ.„€@¥I7KƨÁ.„€@¥I7KƨÁ.„€@¥I7KƨÁ.„€@¥I7KƨÁ.„€@8ëµsê´Á.„>¤µÜÆ@4=‘hr° Á.„M‰ûçm@3éÛ"Ðå`Á.„QnÙ‡@3ÚQÎÁ.„NÜC,¥@3ÚQÎÁ.„NÜC,¥@3ÚQÎÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøi@¡¢Cn—Á.„€@¡¢Cn—Á.„€@¡¢Cn—Á.„€@¡¢Cn—Á.„€@¡¢Cn—Á.„€@¡¢Cn—Á.„€@ž9éxÔýôÁ.„€@ž9éxÔýôÁ.„€@ž9éxÔýôÁ.„€@ž9éxÔýôÁ.„€@ž9éxÔýôÁ.„€@ž9éxÔýôÁ.„€@9%öý!ÿ.Á.„>¤µÜÆ@4i‡+ Á.„M‰ûçm@3®ùÛ"ÐåÁ.„QnÙ‡@2ýcˆe”°Á.„NÜC,¥@2ýcˆe”°Á.„NÜC,¥@2ýcˆe”°Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøj@¢,‹C•@¢+C•@¢,‹C•@¢0-à @¢,‹C•@¢.Ëû´@¢,‹C•@¢,1&é@¢,‹C•@¢/iDg8@¢,‹C•@¢-úCþ]@¬àò-V@¬àò° Ä@¬àò-V@¬àò¼¤@¬àò-V@¬àômÅÖ9@¬àò-V@¬àò•éá°@¬àò-V@¬à÷§†Â&@¬àò-V@¬àú–½@6²ÃÉîËû@6²ÃÉîËú@2° Ä›¦@2À[À6ã@2RÐå`A‰@2OªÍžƒä@1+xFÜ^@1)*0U2b@1+xFÜ^@1&Â&€J@1+xFÜ^@1&Ov_Ù?„F/·ÿP5?’g½þË£?‘Ëü²ü ?Œ ßõIyû?’Z†Ažj?’÷åâ6¹?}Ñ¿ž,?“í +Âô‚?’½N‹üHù?K·‘d]?‘žˆ2}?‘fû›1-&?‡9Â@0wæ?Ž•ýÙ—±?‰¢Ò+ÜÝÂå‡ãJ@¢,²G\@¬àõ=>°M?RPÿØ?_퀊O@‚?©¹kK¡tˆ?Ç_1G£@Ÿgò+6¦@k@¢Ím‘hr°@¢Ím‘hr°@¢Ím‘hr°@¢ÍnzáH@¢Ím‘hr°@¢ÍmV@¢Ím‘hr°@¢Ím‘hr°@¢Ím‘hr°@¢Íj=p£×@¢Ím‘hr°@¢Ík…¸R@¯–ÐbMÒò@¯–ÐbMÒò@¯–ÐbMÒò@¯–Ðå`A‰@¯–ÐbMÒò@¯–Ñhr°!@¯–ÐbMÒò@¯–ØbMÓ@¯–ÐbMÒò@¯–Ö‡+ @¯–ÐbMÒò@¯–Ë…¸R@4¹Œ~($@4C,¥zx@08r° Äœ@07 ù kº@/›dZ¬@/˜DЩ*@0«6z‘@0è>BZî@0«6z‘@0Cþ\‘Ò@0«6z‘@0^5?|î?ð°–Ž]?ð}óßd?ð’FB:?ð_ŒB?‘ …É¿¼?À­Õß}º?ð°–Ž]?ð¢dx/?ð‡äR³s?ð‚àÓÁ?’LÁŒÀ´a?lINõÕ„?ð*wjs—?ðfÁbÂô?ð*wjs—?ð,’Ú|‚?†ùadô|?†ˆ#.÷?ð?ð?ð?ð@@?ð?ð?ð?ð?ð?ð?T–£±0¿†Mm8 ?%D¬ê¦€?L=˜ë} ò@¢Íj׎ùä@¯–Ñ[ÉAÜ?$÷Y–÷?KðÄM°1Ò?7ñ„&pú?„QzÂê1C@Ÿxq6°äô@l@°T¼j~úÁ.„€@°T¼j~ú@°Usê³h@°T¼j~ú@°Sa@O@°T¼j~ú@°U%F +¦@°T¼j~ú@°SS÷ÎÙ@°T¼j~ú@°R©“ á@¦5³3333Á.„€@¦5³3333@¦5µÂ\)@¦5³3333@¦5µfÏAó@¦5³3333@¦5¼j~ùÜ@¦5³3333@¦5¶z—@¦5³3333@¦5»J#9Á@8ÿ–»˜ÈÁ.„>¤µÜÆ@3Š^5?|í@3Š…‡“ݘ@2ûƧï²@2üÓZ…‡”@2OO „M@2Mw1Å@2OO „M@2O\(õÂ@2OO „M@2WOß;d@8J¨?’ãy)­3c?“›ÿ3?Ô@R’?’š'†­`í?•¬+ÌYI˜@8J¨?“ÈÂ`?’F^ì¼Sï?íu…XÚ?’£ôùÎ8ï?“®°ýYè@@8p÷?Ž.]L ¼?Š[¦Råb?…âC£½¾Ý?‡Ä­‹›Ü?”dIt£©P@@@@,@,?ð?ð?ð?ð?ðøøøøøøøøøøøøm@­*I7Kƨ@­*H´9X@­*I7Kƨ@­*I7Kƨ@­*I7Kƨ@­*F?@­*I7Kƨ@­*I“ àÞ@­*I7Kƨ@­*G+ J@­*I7Kƨ@­*GÕfÏB@§D›¥ãT@§DÝ/ @§D›¥ãT@§EÉä@§D›¥ãT@§E¸Qì@§D›¥ãT@§F€IR@§D›¥ãT@§D%®æ2@§D›¥ãT@§DêJŒ@5·â‚@·€@5¹b¶®}@1€ Ä›¥ã@1€ quŽ@0È“t¼j@0ÇsüPH@/fL/ƒ{K@/f +¦L/„@/fL/ƒ{K@/fÏAòØ@/fL/ƒ{K@/f$Ý/ ?|¬Çëý ?ï1ïºÅ?‘e +!ßC?‹¬àÌ’Ç?üEÙáõ{?‘ ê$4Ÿ?1·†Æjñ?’uß¿çÒ?‘N÷J’?0ÜN :s?ë,YÁ? êBÐ8ã?…ÑTë0Ó?lío>÷?ƒ!A +mº¹?ƒÛ®«etZ?†¼Š˜L¥÷?†©b/bJö@@@@@(@*?ð?ð?ð?ð?ð?ð¿%¢Ú, >îØOe?-Y?ÜW‘?.{æèá@­*Hsô.ä@§Eƒ¤"?MOx_YeÉ?NûMC÷7e?§ +¤yH?§vÕDó@Ÿg.“¿7@n@§çÖ‡+ @§ç×Oß;@§çÖ‡+ @§çÙ¦µ @§çÖ‡+ @§çØï4Ö¡@§çÖ‡+ @§çÖð¹@§çÖ‡+ @§çÕéá°Š@§çÖ‡+ @§çÔÉ…ðp@ å¢Ðå`B@ å¤Ý/ @ å¢Ðå`B@ å¢ÞÑ·@ å¢Ðå`B@ å¤÷eýŒ@ å¢Ðå`B@ å¡£n.²@ å¢Ðå`B@ å¢‚@·€@ å¢Ðå`B@ å¡aä÷f@6|ÚQ@6\(õÂ@1…?|í‘h@1ƒˆe”¯O@1²-V@1±Ä2ÊX@0L¿±[W?@0L"h Ô–@0L¿±[W?@0L(õÂ\@0L¿±[W?@0L"h Ô–?…ÅBðrç?•ìspîî?‘`×›mÏ?‹ÝÉ!ë#?‘5ø gµÒ?‘C!ƒžÈ?|¬Çëý ?“$i «%h?低NëU?CÚ B÷?ñ«Ý„ Õ?‘¡ë Þf?‚|׿pY?Œþ%å_D?ƒ´],m=?ƒ*|š\/´?†Ë¢L1Ù?‡L8õASÎ@@@@@,@,?ð?ð?ð?ð?ð?ð¿?Íi(¿GÛõ­ð? ·Ð=lj?']39ø@§çÖŒFNF@ å£ >&¢?@‡2¾L_?HÑ™-fHø?„¦EKüël?G_XWž›@ŸhœÕzz@o@°†éxÔþÁ.„€@°†éxÔþ@°A‰7L@°†éxÔþ@°Em\ú­@°†éxÔþ@°v1ø @°†éxÔþ@°ÕðoiD@°†éxÔþ@°³©*0U@­²-VÁ.„€@­²-V@­,/ƒ{I@­²-V@­bu%F @­²-V@­^\‘ÑN@­²-V@­ì~($ @­²-V@­ø“t¼j@8õS&Á¾Á.„>¤µÜÆ@4k¥ãS÷Ï@4*™0¾@3†“t¼@3ÒˆÎp;@2ÜÚQÎ@2>Ëûµt@2ÜÚQÎ@2(šu%F@2ÜÚQÎ@2=Ùb¶¯@8J¨?ÚW…ËÞ©Ÿ?Òš«÷9ƒ?ÔTE|÷?Ï÷ª\Ù¹?ˉ4+½ö@8J¨?Ô2?Ó ¶ÿ”?Ò`k£Y›?Ñ0ÂÑ-+þ?ÎMQcçó@8p÷?¨F¦Â p•?žÇ™žsŠ?©{ïÖ/!?«)¿ÜÚv¹?ÊtéÑXñr@@@@,@*?ð?ð?ð?ð?ðøøøøøøøøøøøøp@ª‘X“t¼j@ª‘^vÈ´8@ª‘X“t¼j@ª‘\¬1(@ª‘X“t¼j@ª‘e`A‰7@ª‘X“t¼j@ª‘]/Ÿ½@ª‘X“t¼j@ª‘T9Xb@ª‘X“t¼j@ª‘]cˆe•@¯ àÄ›¥ã@¯ á‰7KÈ@¯ àÄ›¥ã@¯ éûçl‹@¯ àÄ›¥ã@¯ éûçlŠ@¯ àÄ›¥ã@¯ í‘hr¯@¯ àÄ›¥ã@¯ äZ¬@¯ àÄ›¥ã@¯ ãS&@5-¥œàv@5¥zxl"@1¡hr° Ä@1›quŽ!–@0’Ðå`A‰@0O „M@0J0U2a|@0C¶E¡ÊÀ@0J0U2a|@0EÖ8†YK@0J0U2a|@0EL˜_÷?гá‡}?ß‹’bÏ?‘*"AaIÐ?ŒôƒA˜c ?”] +° ?—oN„R?|öOÿÝ?’ñ©ûçlŒ?”ÿŒÙÿIí?“ä$š„…œ?‘¾ãazÅ?” ™¾,?6´×–°?¨ ‰‹U)?‡þ:ó-êÏ?Œ(æQ?гá‡}?‡æê7²zE@@@@@@?ð?ð?ð?ð?ð?ð¿Q—fë@?N.ð?Ræ§/Î2?S0œI_J@ª‘[ÿUÕú@¯ ä9l?qY +Kôh?t‰ßX´‹?àë‘Sh›?ðJ¦^à@Ÿh]œ¡@q@¬)s¶E¡Ë@¬)s¶E¡Ë@¬)s¶E¡Ë@¬)t¼@¬)s¶E¡Ë@¬)u?|í‘@¬)s¶E¡Ë@¬)tã¼Ó\@¬)s¶E¡Ë@¬)uϪ͠@¬)s¶E¡Ë@¬)v4ê@£þKC•@£þKC•@£þKC•@£þLIº^5@£þKC•@£þJÀƒo@£þKC•@£þLÌÌÌÍ@£þKC•@£þM„M;@£þKC•@£þK¬q ³@4 Î_oÒ@4 Î_oÒ@0©‡+ @0¨­«ŸU›@0Ct¼j~ú@0B‚@·€4@0œàu÷@0M:’£@0œàu÷@0•$Þ@0œàu÷@0¯·éù?|¬Çëý ?Čۨ1A?‘1f_¨Ï÷?Œ9‚Ù.?‘\Žýµ€7?âé¨ë7F?|¬Çëý ?’ ,øÕC©?|™,Ž!?‘!¥zt9Û?‘¾ãazÅ?½y ¦Å?ƒíÈm½!¾?2ô]7?‚uÞ@>N ?„l¯¸‰ŒÎ?‡×7°º?‰G±±ZÎ@@@@@,@$?ð?ð?ð?ð?ð?ð??ÿ${?2ªÜÆ8>ýÄÆFvS?+OØ<Qç@¬)tÁ|‹ø@£þK÷ž‘ô?ø|æ4`y?K×K¾œ}O?F†nNlñ3?£Y°Šm²‚@Ÿf¾ÿù²ƒ@r@¤)8Ôýó¶@¤)4záG®@¤)8Ôýó¶@¤)=IQ‚ª@¤)8Ôýó¶@¤)64ê@¤)8Ôýó¶@¤):¹õY´@¤)8Ôýó¶@¤)6E¡ÊÁ@¤)8Ôýó¶@¤)5Ž!–R@ª¹XbN@ª½²-W@ª¹XbN@ª»quŽ"@ª¹XbN@ª¸l"h +@ª¹XbN@ª¹XbN@ª¹XbN@ª¼¹#¢@ª¹XbN@ª»quŽ#@5Q|ÚQ@5HüPHð@3#÷ÎÙ‡@3% '»0@2È“t¼j@2Ê)Çy¦µ@2cÉîËû@2g +=p£×@2cÉîËû@2hË’:*@2cÉîËû@2fµ '¼?’Óusÿ\Ã?‘+ùÔ!½Š?’ʶ‹ùs?,¡r×gÁ?’yÊêºq?“DŽèw–?Ž=fA:?“oÆ †ä?“Z—H|:?’‘Ç#·X?“Al.6¸?’Ü·Õ-í?®¨žŽ´Ä?Žƒä%®æ2?ˆdÁ +-?…®×__C?‰G±±ZÎ?ŠEÝ‹N@@@@@(@*?ð?ð?ð?ð?ð?ð?'Ma¿;&ýÁ¨?P` ý€@}?@÷{ÂÐH@¤)7×H+@ª»ä-ˆ(?lTåNÿÁ?`ˆ¿«†%?Ó¬ÛI'X?»f`mð@ŸkÖÒ[H¨@s@«®V“u@«®?|í‘h@«®V“u@«®<(õÂ@«®V“u@«®±Ä2ÊX?™™™™™™š?˜ଚÿw? bídC?£~fܤžv?ªG6NïÌM?Õ¨:Jê0?¢F^ì¼Sð?¢56Q‘?˜ºµ²¢Dœ?¬ôbŸyp?§Ò;~ë`?æÜ-j²í?Ãz00‘!µ? ”w}'bŠ?“àÕèéa‚?§ÅhÒ?O?šJ¹Ê¿?Ácg—–î@@@@@*@&?ð?ð?ð?ð?ð?ð¿Äѳ5h?ÞÚï- š?½îÈd?Íæ…•Ì0@«­:ŠcÇ @¬€ÝÐxSØ?Ùt’a"T?év…g`õ @…ïWV2—@Ÿ/Àa8 +@Ÿdõ& »@t@°f$Ý/Á.„€@°f$Ý/@°g®zá@°f$Ý/@°j’£S@°f$Ý/@°m²-V@°f$Ý/@°f4ê@°f$Ý/@°eY³Ð}@¥áÎÙ‡+Á.„€@¥áÎÙ‡+@¥á¹rGE9@¥áÎÙ‡+@¥á¸­«ŸV@¥áÎÙ‡+@¥áÇ+ J@¥áÎÙ‡+@¥á¶z—@¥áÎÙ‡+@¥á}¿H@8£g ù lÁ.„>¤µÜÆ@4» Iº^@4ªW§†Â&@3çKƧïž@3ÕÖ8†YK@2ÿò䎊r@2õÜÆ?@2ÿò䎊r@2óŽóMj@2ÿò䎊r@2ó àÞÒ‰@8J¨?©=Ùb¶®?¶ÚÔ&‚¶ï?,¡r×gÁ?™Ä¶BϪ?˜ñ<óâg…@8J¨?°Þl²`Û?°lVbjÞ?˜šGja7Ü?¡%£å“J÷?°Îºaa@8p÷?—ì;!ðß?§Ì/¹¸ ?ϯ<«¬í?“vuØcʲ?“KÌ&¨Í@@@@*@*?ð?ð?ð?ð?ðøøøøøøøøøøøøu@Ÿh²-V@Ÿh Yž×@Ÿh²-V@Ÿhiæ¹ ^@Ÿh²-V@Ÿh’Ñ=j£@Ÿh²-V@ŸhŽ*Ák2@Ÿh²-V@Ÿh„–Ìe @Ÿh²-V@Ÿh—’[+@¤k{dZ¬@¤kw±ëøÓ@¤k{dZ¬@¤k€aa͸@¤k{dZ¬@¤k‚ÄÕ@¤k{dZ¬@¤k­€7³œ@¤k{dZ¬@¤kqa»¹È@¤k{dZ¬@¤kWh+Ô¢@62ÃÉîËû@63ÅÙrzä@2.5?|í‘@2¬0¨@1Z~ùÛ"Ñ@1o¡¿x@0¨è§æ›@0 ôKC@0¨è§æ›@0œ|uøT.@0¨è§æ›@0œ%¸¿‰Å?~Ov_Ø­«?“ê„bøÙ~?¤Ë{LÞ!vÈ´:@¦€B\(ö@¦€;J#9Á@¦€B\(ö@¦€L¥zxl@¦€B\(ö@¦€UfÏAò@¡‰å`A‰@¡‰ ‘hr°@¡‰å`A‰@¡‰ÜÆ?@¡‰å`A‰@¡ˆù¦µ @¡‰å`A‰@¡ˆð:û~‘@¡‰å`A‰@¡ˆè Ô•@¡‰å`A‰@¡ˆêçÕfÏ@7Î쿱[X@7ÐN¤¨ÁV@4+¥ãS÷Ï@4ÉîËû@2ö§ï²-@2ÝVlô"@2ÜÚQÎ@2®šu@2ÜÚQÎ@2Á-w1Æ@2ÜÚQÎ@2Â&€IR?žŒÝÙ›P?œ%“=ý7"?®ußãz?»&ìS¢FË?£ˆ¸óùé?©Â±|ºÏ?|öOÿÝ?Ÿ#ïÀŸª¸?§¿Ÿ.ój ?°€Û=M”6?¬NÀ®Z×­?­‚‰%TUx? T®ãÌ…æ?®ÄAIŠa?®›©L Ý/?·wZR)w?œ¸a<›ú?¤A8 Kú¿@@@@@,@*?ð?ð?ð?ð?ð?ð?iOLf¿(Ó`U@?S'mÒŸ©?Qó9>˜2@¦€H•I…Ö@¡ˆûÖÁ§/?t Öøp»?rvx|÷\m?¼É‚ˆu»?¿ß}[¤Þ@Ÿfk¦^’@x@Ÿ¢Ðå`BÁ.„€@Ÿ¢Ðå`BÁ.„€@Ÿ¢Ðå`BÁ.„€@Ÿ¢Ðå`BÁ.„€@Ÿ¢Ðå`BÁ.„€@Ÿ¢Ðå`BÁ.„€@“i%ãS÷ÏÁ.„€@“i%ãS÷ÏÁ.„€@“i%ãS÷ÏÁ.„€@“i%ãS÷ÏÁ.„€@“i%ãS÷ÏÁ.„€@“i%ãS÷ÏÁ.„€@5ÉÎ_oÒÁ.„>¤µÜÆ@2Š^5?|íÁ.„M‰ûçm@1×ï²-Á.„QnÙ‡@1O „MÁ.„NÜC,¥@1O „MÁ.„NÜC,¥@1O „MÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøy@¥lýó¶F@¥lýó¶G@¥lýó¶F@¥lzáG®@¥lýó¶F@¥l?|í‘@¥lýó¶F@¥lâëB@¥lýó¶F@¥lø .@¥lýó¶F@¥lüPH@f Ä›¥ã@f Ä›¥ã@f Ä›¥ã@f£S÷ÎØ@f Ä›¥ã@f¡ÿ.Hè@f Ä›¥ã@f²-V@f Ä›¥ã@f©ûçlŒ@f Ä›¥ã@f¨Xy=Ù@3G>«6z@3H $ p¹@/f§ï²-@/a–R½<6@. ƒn—@.e+ÓÃa@,½Vlô"@,²T`ªdÂ@,½Vlô"@,³g ù l@,½Vlô"@,³Ãa@O?}@T˜ÁÎ¥? ÿ1‡åH?‘G¿yÛ?ï?‹¬àÌ’Ç?‘à2F0µÔ?‘&¶Gf¡?|¬h2:“?’Dê™.x?ŠA)Nîá?6) }’ë?’˜£“µ~Ð?‘ ‡#é +´?‚nÚ¨´8Ð?3I¶#i?‰ì ª# Ù?‚þ——³§ø?‡×7°º?‰®ââP\@@@@@,@,?ð?ð?ð?ð?ð?ð¿4ÍuP?G5»­4?>î3u=8g?@Ni=Þ®@¥l‘6¶@f£W?I?^eËÊø6š?`wë\F ?È*bVËŠ?ÊÛFóôÓÁ@Ÿf¥§ÝU@z@ŸH+ JÁ.„€@ŸH+ J@ŸH zV[t@ŸH+ J@ŸH"ÌNÐ_@ŸH+ J@ŸHì¶m@ŸH+ J@ŸG÷ša@ŸH+ J@ŸH·}þ@ª÷´9XÁ.„€@ª÷´9X@ªöÿ;R†@ª÷´9X@ª÷KÛÄì@ª÷´9X@ª÷ +Á÷·@ª÷´9X@ª÷ !ÚÙÙ@ª÷´9X@ª÷Z:û@6è†YJôñÁ.„>¤µÜÆ@2Œí‘hr°@2’±$¡æ@1¬j~ùÛ#@1²¿²óÚÒ@1+xFÜ^@1+j1¿Ü@1+xFÜ^@1*ÈX™sU@1+xFÜ^@1+Táâ+ì@8J¨?EkĤ¥?ŸÍŒóɼµ?“ +Aí?’&«>šç“?’V)WE7A@8J¨?“Po³SÖ?–ReItû{Ñø~?™f÷ȹ}h?š•§q!U?”n‹rÕ|?“ |ɽ‡?°‹Œ÷€?’pP‡È»?˜ú³¬Ôë?«ÓÎôy…z?ŽOv_Ø­«?‹ÛÛÐïF?ŠÒ(>—œ ?>LR_5?^²®':Ì@@@@@*@*?ð?ð?ð?ð?ð?ð¿^êž@?b}¢`?U +ݵ€Îì?C!ª9:‰‚@©fOBK¼@®E5¿)?sã–=šø?\¢ã]A¯?äB€`oì¥?®‰Þ1ÿÊ@ŸkîJçÌ@|@¡‹!G®{@¡‹!ÊÀƒ@¡‹!G®{@¡‹#•$@¡‹!G®{@¡‹#× +=r@¡‹!G®{@¡‹%o@¡‹!G®{@¡‹!°‰ '@¡‹!G®{@¡‹!ò×s@«Ò“t¼j@«Ò“÷ÎÙ@«Ò“t¼j@«Ò”záG®@«Ò“t¼j@«Ò‘Å@«Ò“t¼j@«Ò–âëC@«Ò“t¼j@«Ò•Ž!–S@«Ò“t¼j@«Ò•éá°‹@4‰Î_oÒ@4‰­BÃÉð@2J^5?|í@2J’£S&@1Ãt¼j~ú@1ÃÉîËû@1^«6z‘@1]ã¼Ó[@1^«6z‘@1]<64@1^«6z‘@1]ÌcñA ?|¬Çëý ?Čۨ1A?’´ýBI{?Žl¢¦µ¥?‘×´<î¯j?’Ýå"çX?|¬Çëý ?’ +‰¸Ì?‘ú-8ûõö?½¶³±×ò?‘އ Àí?ÝÒ¥X[?ƒ´],m@0U`A‰7L@0UÂ\(ö@/b¶®~@/¬1'@/b¶®~@/…‡“ݘ@/b¶®~@/¬1'?€‚ñêã ?Òç{íj?‘K]Ã4?Œj6_?‘¾%î +ã?æöæ×t?|¬Çëý ?’¼  g¶?ÙšlqùÚ?· ÝûYÁ?çêÑHcÇ?sxÙ/T?‚‹¡8*ùÿ?Œ».êxóÚ?‚uÞ@>N ?ƒE 8?†Ë¢L1Ù?†µ°jÆÃ@@@@@(@(?ð?ð?ð?ð?ð?ð¿œÝDÀ?!¼]SÐ?;5ì¥ì7G>ï¬J@¤JRP$@¢«ìôM?[ .‚G…ê?ÓÏYä?ÁÕS ã½?*£u¸¢@ŸglR|àê@@©agl‹C–@©a{¥ãSø@©agl‹C–@©aféxÔþ@©agl‹C–@©aixÔýô@©agl‹C–@©aa$Ý0@©agl‹C–@©aiÞÒ@©agl‹C–@©abu%F @¦µ?|í‘@¦¬Iº^5@¦µ?|í‘@¦°Hð@¦µ?|í‘@¦»‹¬q @¦µ?|í‘@¦¶È´9X@¦µ?|í‘@¦·1Å@¦µ?|í‘@¦¸­«ŸV@9h†YJôñ@9Fs×Ûô@4{ Iº^@4‚ÊW§†Â@3>V“u@3DzáG®@2ó&Á½¥@2ù“ àÞÓ@2ó&Á½¥@2ú^5?|î@2ó&Á½¥@2úŸ¾vÈ´?¬c°Åxt?”Øÿ4ÙKl?[_œ(Ä?“1ÕËt?™póK ?–‹ƒüMAG?¿VŒ†?•ÞèI1Æ@?“Ú%¿»8?‘~¬Àm?ó?›44]Åùs?™rÊêÚ×þ?”US9úÅ?—0b])‘? “˜¯ÃÛ?‰öuП—?Œúq‘?‘À³ûê%§@@@@@(@(?ð?ð?ð?ð?ð?ð¿_ŒLyÆ?QR#~?i¹滸¹?Bä5!Öb@©adÁ ¾@¦·9HÙ%?Wq¢§?S¶eâ?éÍK +?í?’3âgsw@Ÿpý×hÉ@€@«Ô‰7KÇÁ.„€@«Ô‰7KÇ@«Ô†€IR@«Ô‰7KÇ@«Ôqø .@«Ô‰7KÇ@«Ô‰7KÈ@«Ô‰7KÇ@«ÔlIº^4@«Ô‰7KÇ@«Ô`N¤¨Á@ „ +=p¤Á.„€@ „ +=p¤@ „üPH@ „ +=p¤@ „&€I@ „ +=p¤@ „„µÜÆ@ „ +=p¤@ „ Çy¦µ@ „ +=p¤@ „쿱[@9D¯O „MÁ.„>¤µÜÆ@4&‡+ J@461ø .@3ä¼j~ùÛ@3ê6âëC@3 ¿±[W?@3*0U2b@3 ¿±[W?@2ÿiDg8@3 ¿±[W?@2ïªÍžƒä@8J¨?–ª'G_ßI?š6õÂ\9?•ƒäôKwö?Òß© ÷?¨ÅkÊL@8J¨?œ_lWF_‚?•ƒäôKwö?•GÝóuS—?¨ykz4q>?¶cœô:l@8p÷?›’qvš°“?œÚ.ô §Æ?›ø×…N?šðún¤D.? hvÅÜk@@@@*@,?ð?ð?ð?ð?ðøøøøøøøøøøøø@§± +=p¤@§±%¸Qì@§± +=p¤@§±#ˆe”¯@§± +=p¤@§±ãS÷Ð@§± +=p¤@§°é 'RT@§± +=p¤@§°ò¼¤@§± +=p¤@§± qu@£>’n—P@£>“t¼j@£>’n—P@£>œ¾ß¤@£>’n—P@£>“Ð|„¶@£>’n—P@£>ŠÚ¹õ@£>’n—P@£>¥S&Á@£>’n—P@£> Ä›¥ã@8cg ù l@8TðØDÐ@6Iº^5?@6(Xy=Ù@5¬j~ùÛ#@5ȧæšÔ@5Öý!ÿ.I@5Ü¥zxl#@5Öý!ÿ.I@5×®záH@5Öý!ÿ.I@5á [À7?œä%—ëš?¸äï È,[?¯e2½è¾?¢º™ÁLŠ?ÅÒV#m¤?»zòkŸ?•²»UbB2?¬'ø'5?¿Á° ›_¶?ŸjÝá3(?Çí¤ëëí?½åǪrý»?³±’W_æl?¦"55A;?¾ï€SÓÌ?µÅ8'Œe?¸œ›Z|?¸3éYÀ4¨@@@@@,@(?ð?ð?ð?ð?ð?ð¿…}\@?m~Úê?|VŠÏ?:¼ÿm#@§±¢Ñ3›@£>™ÂA#?•Är%b?TAúõ,?üçiëñÕ?€áPlu×@Ÿca$Õ†.@‚@ªhr°!@ªE¡ÊÂ@ªhr°!Á.„€@ªhr°!Á.„€@ªhr°!Á.„€@ªhr°!@ª“u@ªhr°!Á.„€@®ýå`A‰@®ý‡+ @®ýå`A‰Á.„€@®ýå`A‰Á.„€@®ýå`A‰Á.„€@®ýå`A‰@®ý4êK@®ýå`A‰Á.„€@7Ñ|ÚQ@7ÑA [À@3GÎÙ‡+Á.„M‰ûçm@2ä¼j~ùÛÁ.„QnÙ‡@2=cˆe”°Á.„NÜC,¥@2=cˆe”°@2Cä%®æ2@2=cˆe”°Á.„NÜC,¥?²Æ—ÕŒ@8#˜@8¾:@8 >+?”§RXFÖf@8Ù?›’qvš°•@8Î÷@8i§@8Å?¡ºøò¤âÍ@8û—?¬É…À±.Á@8 * @8p÷@8¶?•°QŸ?]Í@8 Ø@@?ð?ðøøøøøøøøøøøøƒ@¯9ˆ1&éy@¯9ˆ1&éz@¯9ˆ1&éy@¯9‰º^5?@¯9ˆ1&éy@¯9‰*0U2@¯9ˆ1&éy@¯9‰7Kƨ@¯9ˆ1&éy@¯9†ö”Fu@¯9ˆ1&éy@¯9‡Ë)`@¦N(@@@@@(@(?ð?ð?ð?ð?ð?ð¿P8'vä¿:n$p?6ϳ˜ —2?v4é;F@¯9‡çÔ}J@¦N<íàjo?EïÒ ¸Ò©?w: t?‡¢ÛÛz8N?1Ç}UÎ@ŸsÊÇ0@„@ªÂ™™™š@ªÂ#•%@ªÂ™™™š@ªÂÎÙ‡@ªÂ™™™š@ªÁíqu@ªÂ™™™š@ªÁÀ4mÅÖ@ªÂ™™™šÁ.„€@ªÂ™™™š@ªÁ´,<ží@•eTýó¶F@•e]/Ÿ¿@•eTýó¶F@•b§ ù l@•eTýó¶F@•bëŸU›<@•eTýó¶F@•a4SŽóM@•eTýó¶FÁ.„€@•eTýó¶F@•b_U›=@8Bò䎊@8,¹'Ÿf6@3°Ä›¥ãT@2õýŠÚ¹õ@3²-V@2™b¶®}@2𖻘Çã@2Ù‡+@2𖻘ÇãÁ.„NÜC,¥@2𖻘Çã@2Z™0¾ í?ª«´ØJµ?µIÌU0âƒ?Ñ«·^š–Š?Ô,‚}¯@8Iç?Г¬í²k’?¨)n•­j²?ÖÑvɃè?á‘´-;Œ?ã'Çg.@8S?Øö(0$d¾?®ÏâÆ©×{?¶¯V#Q5?ÂúŸeŸ†í?ººz«ž®@@8 Ø?Ášíùˆ¿Õ@@@@@(?ð?ð?ð?ð?ðøøøøøøøøøøøø…@¯m‘hr°@¯mOß;d@¯m‘hr°@¯n¾ß¤?@¯m‘hr°@¯n!–R½@¯m‘hr°@¯nzáH@¯m‘hr°@¯l¿±[W@¯m‘hr°@¯m:’£@©¶KC•@©¶KƧïž@©¶KC•@©¶IÔ•,@©¶KC•@©¶JŒL˜@©¶KC•@©¶KƧïž@©¶KC•@©¶KC,¥@©¶KC•@©¶JW§†Â@4™*0U2b@4™ k¹Œ~@0°Ä›¥ãT@0°N¤¨ÁT@0PA‰7KÇ@0O²-V@/b¶®~@/7´¢3œ@/b¶®~@/0¾ í)@/b¶®~@/b¶®}?|öOÿÝ?Úþþ³?‘œÁùãJC?‹ÝÉ!ë#?‘çG¸?ïˆ6ÏJ?|¬Çëý ?’ ,øÕC©?Ê +ä\ä?Hª¦ºón?‘ ^Íü?ÿ? êBÐ8ã?‚ÂÌ]å?ŒÆò/¢äÍ?‚¸“Îè ø?ƒ†+ Å?†©b/bJö?†Ë¢L1Ù@@@@@,@*?ð?ð?ð?ð?ð?ð¿Ü3x¿,«[ ?"0H‡Š(?A¸üˆ¨m@¯mQMëQ@©¶KZ¤VÄ?B…`Áç?7£ÏTšçÔ?‘’²&?|ÚX¦çž@Ÿfãë­â@†@¡æß¾vÈ´@¡æâÐå`B@¡æß¾vÈ´@¡æâ\(ö@¡æß¾vÈ´@¡æÞÅm\û@¡æß¾vÈ´@¡ææéxÔþ@¡æß¾vÈ´@¡æá‰7KÇ@¡æß¾vÈ´@¡æÞÑ·@«J=p£×@«J~ùÛ#@«J=p£×@«EF +¦L@«J=p£×@«DêJŒ@«J=p£×@«IîËû@«J=p£×@«Iá°‰Ÿ@«J=p£×@«F$Ý/@7?–»˜È@7DÂø7´¢@3ë¥ãS÷Ï@3å¡ÊÀƒ@2ÒÐå`A‰@2Ð:û~‘@2‚‚@·€5@2}5¨Xy>@2‚‚@·€5@2v_Ø­¬@2‚‚@·€5@2z¹õY³Ñ?‚á²Olºü?”û#T©È?’>¯\¾¦?•3ö¬' ó?—vÑékÜ?—,¯&€â=?œä%—ëš?™ìôº¥Ï?“?T¾¹µ ?¡"JîÃ!?™‹ôM`¨%?”Ö|HKr^?†ž5ðqê?”àÝ×K?’µ~Yºì?Š>ÚµÕ?“áêqú ?”¼íÒh@@@@@@*@$?ð?ð?ð?ð?ð?ð¿<Ë.‚È¿J(%ù€?I.K¢þ¨®?>òS!ä§@¡æâá˜r@«HóP˜,?mæNwú¥?](vœV©?ÒK¦…3ëô?¢Ñ®¯r,@Ÿl&·@‡@ª“¢Ðå`B@ª“¹XbN@ª“¢Ðå`B@ª“¢MÒñª@ª“¢Ðå`B@ª“¥F +¦L@ª“¢Ðå`B@ª“¸bMÔ@ª“¢Ðå`B@ª“²:)Ç{@ª“¢Ðå`B@ª“¶‡+ @¢!G®{@¢ýó¶E¢@¢!G®{@¢¾vÈ´@¢!G®{@¢"ø7´¢@¢!G®{@¢$Ý/ @¢!G®{@¢Xâ@¢!G®{@¢áG®@8Œ]cˆe”@8šxl"h +@4c÷ÎÙ‡@4` Ä›¥ã@3´“t¼j@3°ò{²þÆ@3+xFÜ^@3)ÀëíúD@3+xFÜ^@3#©*0U2@3+xFÜ^@3!£n.±Ä?Àh’AÝà§?‘­b š=?•lÚ®¡õµ?‡{@áè?“ £Ê­?¨ÅkÊL?‚á²Olºü?•Ð\ÄÙ?˜Y ¶E–X?“3ÏÇF0?• ¸°R¨?¡§î•½y?ÅuIE ²?’òÌ&Œ®3?•¶°nÎf¯?•·Ûïk6¿?¦«DðL?›€*:€R}@@@@@@*?ð?ð?ð?ð?ð?ð¿eú¶Ù?€MgPÐ@?YÈ£_C?i潊N:@ª“µ­zâ@¢©e˜?d3Ô$Ñó?‘4e Ô +?·­ÑŒ²Dœ@ ÁHcÅÚ@Ÿo¤åL‘j@ˆ@§‡´9Xb@§‡´9Xb@§‡´9Xb@§‡µ*™2@§‡´9Xb@§‡µ$Ý@§‡´9Xb@§‡´ýó¶G@§‡´9Xb@§‡³@N¤©@§‡´9Xb@§‡³@N¤ª@¦ágï²-@¦áh1&éy@¦ágï²-@¦áhÎp:ü@¦ágï²-@¦ág“Ý—õ@¦ágï²-@¦áh1&éy@¦ágï²-@¦áh1&éy@¦ágï²-@¦áhXy=Ù@4è†YJôñ@4è Ô•*@.²-V@.¸ºÇ@,ÊÀƒo@,‚&€IR@*-úCþ\’@*.V“u@*-úCþ\’@*-í(Œç@*-úCþ\’@*.záG¯?€‚ñêã ?Ï[äe?Uÿyu”#?ˆAᆽÃì?Œ¯þuõí?‚yî8Á$?‚æÊ¬vã?†‰Oú|q?†’Õaì+’@@@@@&@&?ð?ð?ð?ð?ð?ð¿#tÙ!>ó >ƒ€?(–PÖ`Ž<>ìÞ£d?´‡@§‡´B*¬@¦áh9ëfô?H~`´k? ½™ 'a?‹8âì3?%hwû¿nº@Ÿgů:y¢@‰@£¨dZ¬@£¨d~QÚ$@£¨dZ¬@£¨hGlÏ@£¨dZ¬@£¨^Ðp@£¨dZ¬@£¨iV<~û@£¨dZ¬@£¨g±Mkc@£¨dZ¬@£¨fU@–U¸Që…@–U»çl‹D@–U¸Që…@–UÁg¸×ÿ@–U¸Që…@–UÏ*Wj{@–U¸Që…@–U¼6‰V@–U¸Që…@–U¿’á'X@–U¸Që…@–UÑPÒç¼@6Hè§æ@6²÷Sˆ@3+¥ãS÷Ï@33ÑiË@3t¼j~ú@3ìV62@2á:’£S@2ïK^¢D@2á:’£S@2é­R)®@2á:’£S@2èIŒ'º;?ƒÔo"ë–?“£îömªN?§àqg8¬?ž¸«~j@t?“È}vk·?“eÁá}B?€Ã{s°úi?”•âxm?ŸßXFZ\=?—•ž*d7:?—q•ŠbtÁ?‘ÅTóÅ—?…€vqGœ¨?•ŸN#9·?fÿ;ö?˜ßµ_Oa?“röW÷ì?z5Kï@@,@(@(@5@0?ð?ð?ð?ð?ð?ð?CœõÈ?Zç†Õ·?5ô +„Š6ú?H»B¬hÓ@£¨eùµM»@–U‹Ëå´?WW–‘ÈÓ?iÂUôÐý?°UñýiYp?×ÄuA6›@Ÿg_?<"Ø@Š@­.—Oß@­/Ÿ¾w@­.—Oß@­"ø7´¢@­.—Oß@­'¯·é@­.—Oß@­)ã½@­.—Oß@­#S÷ÎÙ@­.—Oß@­)7Kƨ@ž^záG®@ž^}p£× +@ž^záG®@ž^‘·Xâ@ž^záG®@ž^¸Që…@ž^záG®@ž^°¸º@ž^záG®@ž^§ÕfÏB@ž^záG®@ž^Ÿ;dZ@5cg ù l@5b¼£n@3GÎÙ‡+@31×Ûô‡ü@2Æ“t¼@2«/ìVÕÐ@1î_oÒ @1Ùb¶®~@1î_oÒ @1Ù*0U2b@1î_oÒ @1Ö4êK?‚á²Olºü?‘J–?-.º?‘£Ä›è?‘£ºáõÑ?‘§›ßÉîj?’u¹k‚=?|öOÿÝ?“ÈÂ`?œT¹o¿‹õ?”A8 Kú¿?’¯dL¶t?’µ~Yºì?ƒÆ×q„nï?[™ÕÈ™8?‡YÍ`?„À"aËô??‰®ââP\?‹aÊ•TI@@@@@*@$?ð?ð?ð?ð?ð?ð¿_$zÙ?s0•­˜€?Hõ—UÕ5?[EO?¤3@­*‘"½¡@ž^“Ð1L?i­®©#¢?|td›à‰A?Ø~‡Ñ°¶@¸ïä,ÝÌ@ŸgK½êÞg@‹@«òY‡+@«òXQë…@«òY‡+@«òX÷c +@«òY‡+@«ò[n*ó‹@«òY‡+@«òYÉêH@«òY‡+@«òXà<+k@«òY‡+@«òXÁî}@™ŒzáG®@™ŒÒ»@™ŒzáG®@™Œ%¬'’@™ŒzáG®@™ŒÁÛO²@™ŒzáG®@™ŒÔ «5@™ŒzáG®@™Œ®}Vm@™ŒzáG®@™Œ2a|@7¨†YJôñ@7¥_×Ö½=@3i‡+ @3jæ¥ †v@2×ï²-@2ÙÁO±Y@2 ¿±[W?@2I¼]Iˆ@2 ¿±[W?@2 ‡Ü°`ž@2 ¿±[W?@2E¤¬ ?•w«ogŸl? dJgQ?’:­*QÎ?÷î|£[?‘¡8I²«¤?‘àÇAe ?†É×Hq"1?’¤Ý—†¬?‘b ´±6?ºŒ©¡§Î?’I¿|­q?‘/¹ß†?’‚<(_‡?%>ÇpÑ?‡³jó ?„&};-?‡zGhƦq?ˆ<Éh8kÑ@@$@(@*@8@7?ð?ð?ð?ð?ð?ð?éôà¿ éÕ €?ÖtN4–i?2÷æ‚Ö-Ð@«òXÓ_@™ŒõhŽ™?65ë¥q?Sä}k;h&?i¼£©?¢¬?¨î{èå÷@ŸlET{@Œ@¯éŸ¾vÈ´@¯é¹/Z‹@¯éŸ¾vÈ´@¯é Ì%Ö@¯éŸ¾vÈ´@¯éŸÚh×—@¯éŸ¾vÈ´@¯éŸ9Á•Ì@¯éŸ¾vÈ´@¯éœòO+@¯éŸ¾vÈ´@¯éœÚQ@•¬1'@•"MÒñª@•¬1'@•O½Ô×@•¬1'@•jOÓm@•¬1'@•´×¯@•¬1'@•$H¥¯ï@•¬1'@•Å£±Æ@7m¥œàv@7d`ªdÂø@3ðÄ›¥ãT@3óÛ¿†‘¯@3†“t¼@3‹¶Ä[…2@2”mÅÖ8†@2˜—–#@2”mÅÖ8†@2˜¿i¿)Ï@2”mÅÖ8†@2™öÛAx?Ž'QR x!?’ÓÁŽ[~?’a•¦û?£SqZ¬ˆ?’ÈwD['Ž?’Lú¬ày?€Ã{s°úi?”Ô4å?‘V—(ô>Õ?ó‹@Ê<›?’6ç~œä±?“Vée?´Ëu5¦×?Žœî¤>ë?…ÙŸŒR ð?…¨hrJe?ˆ>)A-?‰5ß+›Ö„@@*@$@$@9@9?ð?ð?ð?ð?ð?ð?g ëª^¿¤µÜÆ@4?|í‘h@3õ”¯O „@31‰7Kƨ@3($ xG@2Œ¿±[W?@2ƒ× +=p¤@2Œ¿±[W?@2€lÏžƒ@2Œ¿±[W?@2|@À)@8J¨?‘¸ü"ù€2?šëwÍœ‹Ý?“1ÕËt?‘(­gxý?—u.%Jº@8J¨?•2ã(_Ïù?ž(?{k4?‘W×ý°A?˜o +E\K?‘¢U¥].è@8p÷?‘a÷nñ?•Îo´ÀÙ?‹Ûu¤ó†4?Šp¹XmÉ>?M[70@@@@0@,?ð?ð?ð?ð?ðøøøøøøøøøøøø@¬sõÂ\)Á.„€@¬sõÂ\)@¬sá‰7KÇ@¬sõÂ\)@¬sæffff@¬sõÂ\)@¬sÒñ©ü@¬sõÂ\)@¬sØÔýó¶@¬sõÂ\)@¬sé7KƧ@¥€¾vÈ´Á.„€@¥€¾vÈ´@¥€ezxl#@¥€¾vÈ´@¥€%‡“ݘ@¥€¾vÈ´@¥€n—Oß@¥€¾vÈ´@¥€<ÓZ…ˆ@¥€¾vÈ´@¥¿!-w2@8[¹Œ~($Á.„>¤µÜÆ@2sS÷ÎÙ@2€6âë@1iÛ"Ðå`@1eÉã½@0ÑÞi­BÄ@1Ëûµt@0ÑÞi­BÄ@0Òh Ô•@0ÑÞi­BÄ@0•ðoiDg@8J¨?§¿u‚3?¤.#ÓYæ?ç\Š2˜?¨4+åRÚ–?¨.¿Èá@8J¨?Åð¡“X ¸?’ã0eʪv?Ÿ'Žb÷A?«Þ.Ïĵd?½Pz‹ Ô@8p÷?¸›¥e©˜Í?œÄDóÙk?Ÿ[+{A†ÿ?–d‘…’Ã~?µb•Hó@@@@(@*?ð?ð?ð?ð?ðøøøøøøøøøøøø@¢_ËÆ§ïž@¢_Ê=p£×@¢_ËÆ§ïžÁ.„€@¢_ËÆ§ïžÁ.„€@¢_ËÆ§ïžÁ.„€@¢_ËÆ§ïžÁ.„€@¢_ËÆ§ïžÁ.„€@Ÿ]F§ï²@Ÿ]XbMÓ@Ÿ]F§ï²Á.„€@Ÿ]F§ï²Á.„€@Ÿ]F§ï²Á.„€@Ÿ]F§ï²Á.„€@Ÿ]F§ï²Á.„€@7ð4mÅÖ8@7ðË)^ž@55ãS÷ÎÙÁ.„M‰ûçm@5;Ƨï²Á.„QnÙ‡@4(è§æ›Á.„NÜC,¥@4(è§æ›Á.„NÜC,¥@4(è§æ›Á.„NÜC,¥?ð°–Ž]@8#˜@8¾:@8 >+@8Iç@8Ù?ð°–Ž]@8Î÷@8i§@8Å@8S@8û—?ð*wjs—@8 * @8p÷@8¶@8 Ø@8 Ø?ð?ðøøøøøøøøøøøø‘@ Ðn—OßÁ.„€@ Ðn—OßÁ.„€@ Ðn—OßÁ.„€@ Ðn—OßÁ.„€@ Ðn—OßÁ.„€@ Ðn—OßÁ.„€@˜¦0 Ä›¦Á.„€@˜¦0 Ä›¦Á.„€@˜¦0 Ä›¦Á.„€@˜¦0 Ä›¦Á.„€@˜¦0 Ä›¦Á.„€@˜¦0 Ä›¦Á.„€@4ð4mÅÖ8Á.„>¤µÜÆ@15ãS÷ÎÙÁ.„M‰ûçm@0V”Á.„QnÙ‡@/åÉäÁ.„NÜC,¥@/åÉäÁ.„NÜC,¥@/åÉäÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø’@¥€ ÌÌÌÍ@¥€È´9X@¥€ ÌÌÌÍ@¥€ Ƨïž@¥€ ÌÌÌÍ@¥€ :’£@¥€ ÌÌÌÍ@¥€V“@¥€ ÌÌÌÍ@¥€ +³g ù@¥€ ÌÌÌÍ@¥€ ¥zxl@¢.¯Ÿ¾w@¢.³÷ÎÙ@¢.¯Ÿ¾w@¢.¯Åo@¢.¯Ÿ¾w@¢.®Hè§@¢.¯Ÿ¾w@¢.±Ä2ÊX@¢.¯Ÿ¾w@¢.¬"h Ö@¢.¯Ÿ¾w@¢.¬¿±[W@87â‚@·€@83@N¤¨Â@2J^5?|í@2JôðØDÐ@1Ct¼j~ú@1D`ªdÂø@0zÔ,<ží@0{’:)Çz@0zÔ,<ží@0z™0¾ î@0zÔ,<ží@0zqÞi­C? Eˆ‡ðó‹?jÝ‚È?‘t‘ócjë?‹ó#ƒt£?‘EÉ@Ú?‘ ê$4Ÿ?¡EÉ@Ú?’®> +fuæ?‘4ãM^?siÅqe?‘1…šá?«àÓ RÆ?± ã)è ˆ?)‰€Zw?ƒíÈm½!¿?„•ˆG’Z¾?‡&üòI?‡æê7²zE@@@@@*@(?ð?ð?ð?ð?ð?ð¿^W‡Q¿^]¾×l?LXÏí"¼§?GB¯ž¹@¥€ Î? š@¢.¯:mY6?b£RÍÚàÌ?_s Aàžë?Á¯•­{©?µÓ»E2'@Ÿoá÷Î@“@£V‚\(öÁ.„€@£V‚\(öÁ.„€@£V‚\(öÁ.„€@£V‚\(öÁ.„€@£V‚\(öÁ.„€@£V‚\(öÁ.„€@“f¸QìÁ.„€@“f¸QìÁ.„€@“f¸QìÁ.„€@“f¸QìÁ.„€@“f¸QìÁ.„€@“f¸QìÁ.„€@8IÎ_oÒÁ.„>¤µÜÆ@3|í‘hrÁ.„M‰ûçm@2¤¼j~ùÛÁ.„QnÙ‡@28DЩ*Á.„NÜC,¥@28DЩ*Á.„NÜC,¥@28DЩ*Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø”@¥çÃn—@¥çÃn—@¥çÃn—@¥ç¿‰À@@¥çÃn—@¥çÀŒí@¥çÃn—@¥ç¿òL@¥çÃn—@¥çÀ럺O@¥çÃn—@¥ç¿(<>"@“vD›¥ãT@“vE¡ÊÀƒ@“vD›¥ãT@“vAб@“vD›¥ãT@“vBtUÅ@“vD›¥ãT@“vCª}@“vD›¥ãT@“v?×t͘@“vD›¥ãT@“v=SÍÝn@4uS&Á¾@4u@Ø +õØ@2pÄ›¥ãT@2n£Ç'@1¬j~ùÛ#@1« `G@1O „M@1‹Ð‘±Ht@1O „M@1‹·°aó#@1O „M@1Ššáãq›?|¬h2:“?‘1J÷*@?‘)¡zІÌ?£Ä£êÌ?’¬‚¹è?Ü_1“<ž?}@T˜ÁÎ¥?’¸ê°g?‘^Æè»ðK?ý³çMfÛ?’01€s #?v4M°§ä?‚xþuhy¾?ŒÊsµ0dþ?ƒ@Š·•`?„aAv3ê`?‰x÷ß»š§?†ôð¾6^@@&@"@$@6@.?ð?ð?ð?ð?ð?ð¿Ii5¸ ¿H×h¨?(„?[¡³?!ðWpAŸ¾@¥çÁRôç$@“vB‡:yª?HŽ2h+Õk?BO/ß.6?Ÿ`!»ýkˆ?•cűâ@ŸfÆøA˜@•@¬ý­V@¬ý®V“@¬ý­V@¬ý«¬q ´@¬ý­V@¬ý«C•@¬ý­V@¬ý­jO@¬ý­V@¬ý˜FÜ]@¬ý­V@¬ýgÕfÏA@«XX“t¼j@«XZ^5?~@«XX“t¼j@«X]!ÿ.I@«XX“t¼j@«XYXbN@«XX“t¼j@«X]Vlô@«XX“t¼j@«Xf$Ý/@«XX“t¼j@«X`ƒn˜@6„¯O „M@6†“t¼@2³S÷ÎÙ@2´É…ðoi@2;Ƨï²@2=ÅÖ8†Y@1‡ ù kº@1Šxl"h +@1‡ ù kº@1”÷eýŠÛ@1‡ ù kº@1®¾ß¤?æ?„F/·ÿP5?‘J–?-.º?’5 µ¿$„?Œj6_?™°ñÃM?£â³x‰»?„F/·ÿP5?”n‹rÕ|?’$ûJw"Ú?@§[*^?›†þ.D?˜6@(/ÇÝ?‚Ì ÝŽ‚8?Ñ¿ž,?„+£QKù?†ÞåØÜÓ?ˆëÅoë?IÏáå$@@@@@,@*?ð?ð?ð?ð?ð?ð¿xg·µP?Z¸} ?sÏÆåf?F;™v¯ó@¬ý¤õ"×ò@«X]Ÿ  ?‘ATÎ O?dá„dÿ·?@ äØRh“Ä?Éê~îaD@Ÿeé*FÕ@–@¥Žûçl‹DÁ.„€@¥Žûçl‹D@¥ŽóüPH@¥Žûçl‹D@¥Žê³g ø@¥Žûçl‹D@¥Žèšu%@¥Žûçl‹D@¥ŽãS÷ÎÙ@¥Žûçl‹D@¥Žæ +¦L0@«wŒIº^5Á.„€@«wŒIº^5@«wHË’9@«wŒIº^5@«wò{²þ@«wŒIº^5@«w’ñ©ûç@«wŒIº^5@«wÒñ©ý@«wŒIº^5@«w‡E8ï5@8 ]cˆe”Á.„>¤µÜÆ@3ÎÙ‡+@2ë¬q ²–@2 ²-V@2E¡ÊÀƒ@1L¿±[W?@1NÑ·Y@1L¿±[W?@1:QÎ`@1L¿±[W?@12×sü@8J¨?¡Ýq+qW?˜ëàÕÁc0?”7lyÎ\?¦p3/ ¤?§°:ÛAJ+@8J¨?¡­·k$Õ?¸V¶nþ„ý?™vEËõB?™d‰u‰5Ž?±§<þ"(o@8p÷?›¿G¶‘µ?‰¢Ò+ÜÝX8ý‘ ?¥é+(³?œ¦]`úæ?•Äí¥×?–®ã–†áž?©W»¥ÿ$B? >Ô±µR?¡¨{ª’®W?“ÅÒÏPÉä?•nW*Ø„?šºi 0/¥?•;¯(ó?”Ú¢Ó¯?—’h…b?ÓLÞ?æ?šÙ,yf’Y?›ÇûP|@@@@@*@,?ð?ð?ð?ð?ð?ð¿ne±ƒ7?~‘l¦À?RàsìS¢?lŽ^—y–í@¤äKz«0Ä@¤9á¬H8¨?cÇ*JÔê?Bî ¾[?¬×FMAr?îþr`¹‹i@Ÿq5XÇñ@™@¬^yÛ"Ðå@¬^k Iº@¬^yÛ"Ðå@¬^X“t¼j@¬^yÛ"Ðå@¬^H1&éy@¬^yÛ"Ðå@¬^Mžƒä&@¬^yÛ"Ðå@¬^QÄ2ÊW@¬^yÛ"Ðå@¬^OŸ¾x@¢±Ï\(õÃ@¢±ÎV“@¢±Ï\(õÃ@¢±Ðå`A‰@¢±Ï\(õÃ@¢±Ö“u@¢±Ï\(õÃ@¢±Òñ©ûç@¢±Ï\(õÃ@¢±Î!–R½@¢±Ï\(õÃ@¢±Ï'»/ì@6 xFÜ@6|ÚQ@1)‡+ @1Dg8~@0¬j~ùÛ#@0™7KƧð@/õ¨Xy=Ú@/ÖOv_Ú@/õ¨Xy=Ú@/Ò½<63@/õ¨Xy=Ú@/Ñø -ß?•²»UbB2?‘¡çL¤?¬4F&xé?¨‹™µ¸¤?°¿ Ý2 ¦?°|S6³Y?Œs¤DÅÐ?’7Îf¬ps?“Ë— +"3?‘.“¥?–ÓîTî?—+Áèlç?ªìýi?Ž*JŠË?aäŽ +Ù?Þ‚ ‡F?^^ω•?‹Ûx§Þ@@@@@,@(?ð?ð?ð?ð?ð?ð¿|€U?1M¬Ê ?]þZÇ?Géwh¶7Ò@¬^[Ô>W@¢±Ïµ{É„?}(Ï{…iR?f[d©m@'?Î&v‘»/?È?:QÓ $@Ÿf×e`â@š@¯oc× +=qÁ.„€@¯oc× +=q@¯l„tSŽó@¯oc× +=q@¯lžƒä&@¯oc× +=q@¯lœ¬1'@¯oc× +=q@¯lÈÎp:ü@¯oc× +=q@¯lÓg ù @¬Ï\(õÃÁ.„€@¬Ï\(õÃ@¬Ž$Ý/@¬Ï\(õÃ@¬ŽŠqÞj@¬Ï\(õÃ@¬Ž¯·è@¬Ï\(õÃ@¬Ó àÞÔ@¬Ï\(õÃ@¬Íw1Æ@9ò䎊Á.„>¤µÜÆ@3Š^5?|í@-’ò䎊@2»Æ§ï²@,™#¢œwš@1Œ¿±[W?@+×éùrH@1Œ¿±[W?@+íw1Å@1Œ¿±[W?@+éá°‰ (@8J¨?¡2¶Qã=t?—U’¹DÆü?•Ô¦?n¸?ž)‚^°y?ŸŸ[‹¹5@8J¨?˜ü^Š1??šJ‘ÍÒÁ?“ä$š„…œ? p G)L?šºi 0/¥@8p÷?•ða˜,F?ŠÇÿú?‹h¢íc„„?“KÌ&¨Í?ˆT“Ÿÿ@@@@(@&?ð?ð?ð?ð?ðøøøøøøøøøøøø›@¬ÜdÝ/ Á.„€@¬ÜdÝ/ @¬Û‰xÔýô@¬ÜdÝ/ @¬ÛÚkP°ò@¬ÜdÝ/ @¬ÛùõY³Ð@¬ÜdÝ/ @¬ÛÞ($ x@¬ÜdÝ/ @¬ÛÈÁTɆ@¥]/Ÿ¾Á.„€@¥]/Ÿ¾@¥ÂMÒñª@¥]/Ÿ¾@¥gl‹C–@¥]/Ÿ¾@¥…o@¥]/Ÿ¾@¥Çâ‚@¸@¥]/Ÿ¾@¥úû~‘@8eöý!ÿ.Á.„>¤µÜÆ@4}‘hr° @3ùk¹Œ~(@3‹"Ðå`B@3<˜_ö”@3 ù kº@2Á©ûçlŒ@3 ù kº@2Â:)Çy§@3 ù kº@2Êû~ÿ—@8J¨?ÇW‘ßÃq?È®|1¹?¾G#}«?ÆlB_l@©˜Ãñ–O0?V7S§ë ]?R,X¼mt?µôtNÙ–?­Ž¥@@ŸgËŒ—^@@©gÚ¬1@©gÚáG®@©gÚ¬1@©gÚ)Çy§@©gÚ¬1@©gÚp[? @©gÚ¬1@©gÚŸ¾vÉ@©gÚ¬1@©gØN¼Ü@©gÚ¬1@©g׻Ȱk@•e¬1&é@•e£S÷ÎÙ@•e¬1&é@•eŸ‚Úÿk@•e¬1&é@•e¡$ì­æ@•e¬1&é@•e¡<%J<@•e¬1&é@•e¡ôÿž~@•e¬1&é@•e¢Çyùõ@3Žì¿±[X@3‰ªôfJ*@0; Iº^@07ÇÀœ@/†éxÔýô@/â!ýv:@.³üPH@.«íúCþ]@.³üPH@.¬'S1@.³üPH@.«ûµsê?ŽÕQp Î?u:I1?‘%ja •a?‹»³!.H.?÷(l¨˜?ưz÷_3?|Ñb×¶@?’!‡!{?™ö-@§y?9ÍÇ~FÀ?äU1 +¶?kN? ïv?‚“rÉÜ?Œ½K ìë?‚À%?‚íS¸0iBZîd?|¬Çëý ?ûJ`ÕYð?‘D&»ä?‹×lÇ…N9?‘2A¥Ø?âé¨ë7F?|¬Çëý ?’&u÷E»@?§^ ÿo˜?K·‘d]?‘ ÛÌÏõA?–’+¸¢d?‚‹¡8*ùÿ?Œ¾»•lŽ?‚¸“Îè ø?ƒ ?ÿ½?†µ°jÆÃ?†–f_ÔŠŠ@@@@@,@,?ð?ð?ð?ð?ð?ð¿©V@¿%óŽW?c«6,9>ŤN(\»@§Rq¢‰@§Ï‹i\ç?':¢{u^>åþ5n½/ð?]^„¸Ë2>Ùõ`ºµÐ@ŸfÞ}ÿõ@ @¯¶4¼j~úÁ.„€@¯¶4¼j~úÁ.„€@¯¶4¼j~úÁ.„€@¯¶4¼j~úÁ.„€@¯¶4¼j~úÁ.„€@¯¶4¼j~úÁ.„€@¨äŽV“Á.„€@¨äŽV“Á.„€@¨äŽV“Á.„€@¨äŽV“Á.„€@¨äŽV“Á.„€@¨äŽV“Á.„€@9 ]cˆe•Á.„>¤µÜÆ@5» Iº^Á.„M‰ûçm@5“t¼jÁ.„QnÙ‡@4Ì¿±[W?Á.„NÜC,¥@4Ì¿±[W?Á.„NÜC,¥@4Ì¿±[W?Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø¡@¢éY‡+@¢éY‡+@¢éY‡+@¢éXy=Ù@¢éY‡+@¢éYõY³Ï@¢éY‡+@¢éX†YJõ@¢éY‡+@¢éXDЩ@¢éY‡+@¢éY™™™™@©Ë'ï²-@©Ë'ï²-@©Ë'ï²-@©Ë)Çy¦µ@©Ë'ï²-@©Ë*W§†Â@©Ë'ï²-@©Ë-¸ºÇ@©Ë'ï²-@©Ë,q ²–@©Ë'ï²-@©Ë-¸ºÇ@32ÃÉîËû@32䎊qÞ@0)‡+ @0(FÜ]d@.›dZ¬@.™™™™™š@/#¼ÓZ…ˆ@/i­BÃÊ@/#¼ÓZ…ˆ@/ @/#¼ÓZ…ˆ@/ A‰7KÇ?‚á²Olºü?*£|3Né?‘7[ä­?Aš%ðï?‘˜¯ +`É?‘#†»{׈?}Ñ¿ž,?’Q_Ú¸FN?‘twæ³?“óoãwlP?‘Uç·Býi?ó‹P=´?‚† SFñ?lío>÷?‚§W®ê ?ƒv_.^?‡´*žZ}Õ?‡<û¡71@@@@@*@&?ð?ð?ð?ð?ð?ð¾úx˜?T_ÙÂÞ?#–uY¿7?2;->à¯@¢éXë6}r@©Ë*íãÃ?CYZ3JM?STUeG 7?'—çÍ*Ã?°‘n®b;·@Ÿgâÿa@¢@¡ ]²-VÁ.„€@¡ ]²-VÁ.„€@¡ ]²-VÁ.„€@¡ ]²-VÁ.„€@¡ ]²-V@¡ ’x7Çþ@¡ ]²-V@¡ ÓŽóMj@¢lKC•Á.„€@¢lKC•Á.„€@¢lKC•Á.„€@¢lKC•Á.„€@¢lKC•@¢lgY|ƒ@¢lKC•@¢l*JŒL@>2ÃÉîËûÁ.„>¤µÜÆ@7Ìí‘hr°Á.„M‰ûçm@6Ͳ-VÁ.„QnÙ‡@5«xFÜ^Á.„NÜC,¥@5«xFÜ^@5––óñ©(@5«xFÜ^@5¼ÌÌÌÌÍ@8@8#˜@8¾:@8 >+? ¶ÕIò…T?Öˆp&`ÁF@8@8Î÷@8i§@8Å? ?cˆ³H‹?ÏBŠ>œÅâ@8@8 * @8p÷@8¶?½µÏΙ¬?ÄŠ†^¤¿è@.@?ð?ðøøøøøøøøøøøø£@Ÿóê~ùÛ#@Ÿô +ü\&û@Ÿóê~ùÛ#Á.„€@Ÿóê~ùÛ#Á.„€@Ÿóê~ùÛ#Á.„€@Ÿóê~ùÛ#@Ÿøõöý!ÿ@Ÿóê~ùÛ#Á.„€@­É}p£× +@­Éaô±î#@­É}p£× +Á.„€@­É}p£× +Á.„€@­É}p£× +Á.„€@­É}p£× +@­ËVlô@­É}p£× +Á.„€@7í¥œàv@7¬ûùÎìü@3…?|í‘hÁ.„M‰ûçm@2â-VÁ.„QnÙ‡@2¨è§æ›Á.„NÜC,¥@2¨è§æ›@1cˆe”¯@2¨è§æ›Á.„NÜC,¥?…ðE[i)@8#˜@8¾:@8 >+?â•`i%|@8Ù?~Ov_Ø­«@8Î÷@8i§@8Å?ó´«×õ¹ð@8û—?…kô%,@8 * @8p÷@8¶?­E(É¡¨@8 Ø@@(?ð?ðøøøøøøøøøøøø¤@ªÒñ©ü@ª‘&éxÖ@ªÒñ©ü@ª(Œç@ªÒñ©ü@ªœ(õÂ@ªÒñ©ü@ª’n—P@ªÒñ©ü@ª“¶E¡Ì@ªÒñ©ü@ª¤µÜÆ?@¬ÃÆ$Ý/@¬ÃÏ\(õÃ@¬ÃÆ$Ý/@¬Ã§_oÒ @¬ÃÆ$Ý/@¬Ãœ¬1&@¬ÃÆ$Ý/@¬Ã´9Xb@¬ÃÆ$Ý/@¬Ã¸†YJö@¬ÃÆ$Ý/@¬Ãª=p£×@9ò䎊@8ýÒñ©ûç@5 Ä›¥ã@4ü‘ÑN;Í@497KƧð@4+çl‹C–@2úÔ,<ží@2ù=Ùb·@2úÔ,<ží@2úÔ,<ží@2úÔ,<ží@2ð©*0V?¹hC%¿ï?¥­|¨Þ?›(`¥Æ´?› { xÄç?¡ãÑWÐö?¡{7]['?ªÝ8Ⱥ™J?¡ÿ}ö?˜“º£¹‡b?™MßïšNÆ?›™¬ï?¥Í " z?ºy„à‘?—E!Üý·'?›Ny”…?–¼ä1ZüŽ?–7Qûñ?¥VËMª¼‰@@@@@,@*?ð?ð?ð?ð?ð?ð?všn5Ò¿vDõM:?gøn[cN`?hÌ?ŠDM’@ª–D¦åô@¬Ã¶oãç"?{…“  ?€âV½?ÑÇÃß¿§|?Þ Àƒˆ@Ÿoxƒð|‹@¥@£Ì>vÈ´9Á.„€@£Ì>vÈ´9Á.„€@£Ì>vÈ´9Á.„€@£Ì>vÈ´9Á.„€@£Ì>vÈ´9Á.„€@£Ì>vÈ´9Á.„€@“±¦éxÔþÁ.„€@“±¦éxÔþÁ.„€@“±¦éxÔþÁ.„€@“±¦éxÔþÁ.„€@“±¦éxÔþÁ.„€@“±¦éxÔþÁ.„€@7ÖšÔ,<ŸÁ.„>¤µÜÆ@5 Iº^5Á.„M‰ûçm@4A‰7KÇÁ.„QnÙ‡@4!:’£SÁ.„NÜC,¥@4!:’£SÁ.„NÜC,¥@4!:’£SÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø¦@¤NÙ‡+@¤NÙ‡+@¤NÙ‡+@¤NÙ‡*@¤NÙ‡+@¤OhÛŒ@¤NÙ‡+@¤Lô!-@¤NÙ‡+@¤LIº^5@¤NÙ‡+@¤LÌÌÌÌ@£ ° Ä›¦@£ ° Ä›¦@£ ° Ä›¦@£ ¯ „M@£ ° Ä›¦@£ °ØDÐ@£ ° Ä›¦@£ ¯O „M@£ ° Ä›¦@£ ®æ1ø¡@£ ° Ä›¦@£ ¯4Ö¡b@1‡>«6z@1‡RT`ªe@.®V“t@.¯²-W@.Œ1&éy@.5¨Xy>@-u¨Xy=Ú@-u%F +¦N@-u¨Xy=Ú@-vÈ´9X@-u¨Xy=Ú@-w1Ń?É^žQ5P‚?ûJ`ÕYð?‘@˜¯³¸?‹×lÇ…N9?‘çG¸?ß-tT?ÐbMçê_x?’4 "ëžØ?³2ºŽ'?Níú¾?üÓqÔNŠ?ˆ9²0?€g‹)ØêÀ?Œ²ÅŒÕ6?ƒM¬Öe—_?ƒƒQçÐ(?‡<û¡71?†Ü‘ °Ô@@@@@,@(?ð?ð?ð?ð?ð?ð¿ #À¿xáÃh?)%)òS¨?ÖÂ0¶èK@¤L¸5†g@£ ¯&ï Î?85 +TØ¿?.!76^?lR­¬Íç ?SŠÐlU X@Ÿsã“ã[@§@¦õã× +=q@¦õàA‰7L@¦õã× +=q@¦õÎV”@¦õã× +=q@¦õÉã¼@¦õã× +=q@¦õËC,¥@¦õã× +=q@¦õÊ™0¾@¦õã× +=q@¦õÁÿ.Hé@¦(õÂ@¦XbN@¦(õÂ@¦ Ä›¥ã@¦(õÂ@¦/·éù@¦(õÂ@¦ó¶E¢@¦(õÂ@¦ÌcñA@¦(õÂ@¦dZ­@7÷â‚@·€@7ôŽŠqÞj@3xr° Äœ@3o'»/ìW@3Ct¼j~ú@3*W§†Â&@2…œàu÷@2–»˜È@2…œàu÷@2~Ñ·Y@2…œàu÷@2}í(Œç?€‚ñêã ?£Äìµç¯?œI!S¨?’èÞ㬱_?ž)‚^°y?£‰I$4}?¢F^ì¼Sð?§±¬¯Ö~æ?©Óɰ?›‘Ûê\PK?•޼ÿ>#G?¡íÜ'Ln‹?¥×»xG–? î$£G?¡§~gN?ýÿJÔ{?¡FÍb2x?žµ½èq¨®@@@@@&@&?ð?ð?ð?ð?ð?ð¿zÄz?Dœ~Ò?L÷”ºžþ?ExäVLS™@¦õÎ4˜}a@¦…ó ª@”“Oß;dZ@”“Y.•Æ@”“Oß;dZ@”“Y÷òu’@”“Oß;dZ@”“[cî/@0įO „M@0ÄÉ…ðoi@/€A‰7KÆ@/d?›•@/&éxÔþ@/ Z¼P7@-æL/ƒ{K@-äq°ã@-æL/ƒ{K@-æUê˜6@-æL/ƒ{K@-èÚD!?É^ž-?ü#Ä×ÇÊ?‘ó™èû?Œ]¯Ľ?‘Å åš?´š"·Ù·?ÐbMÙï;Ó?’Y«FÑ£?º:q¬À?Í9GE…?ìÃÉÿ¹i?KäÆÀ?€b×Vï£?Œ·aéÝ?ƒiˆâ2?ƒ/»ñ¶[?‡Ú!ccC?†±KVPn@@(@*@,@@@8?ð?ð?ð?ð?ð?ð?OƲ×?@ÖYÞ?.+s3ú^?C÷©ð¤@ è‡øçÃE@”“ZmŠâ?=ˆakà +?-:¨)?t90ÝìÉ·?R¸ï¸BZ@ŸsÏ“w@©@¦Í Iº^@¦Íoj‹@¦Í Iº^@¦Ìì5C:/@¦Í Iº^@¦Ìögî½@¦Í Iº^@¦ÍH>ä@¦Í Iº^@¦Í¬Öæ@¦Í Iº^@¦Í!¼Æ@•kbMÒò@•j÷€\ç’@•kbMÒò@•k]þ·ã@•kbMÒò@•k œ{©@•kbMÒò@•kwývè@•kbMÒò@•k*Õè ¢@•kbMÒò@•k9š@9(†YJôñ@9);=­e^@4!hr° Ä@4 Èu\pÆ@3.ùÛ"Ðæ@3/8[ã_@2𖻘Çã@2óm !«×@2𖻘Çã@2öÿW6@2𖻘Çã@2ðywÇW?µ³h—†È¶?“t2«xÕ8?“€@m|xù?ñÊÇ/·?¡U‘·ÙÉË?œ1÷ïâá(? Ôøx¡9»?“ëÄA ¿S?“0–­}h-?’²ãˆn©,?Ÿej¡˜ó–?˜ÿ2 Ö2ê?…Üò•Št¤?‘ý£#LŽ?‘ `ÕÞÍ?Ž/©zˆ?òLšÄ—?—$òïñX³@@(@&@"@;@6?ð?ð?ð?ð?ð?ð?ˆ>@L± ?{Ú¢$U@?k•Lø÷Zß?A£Ë[ˆÙ¸@¦Í ÙçzT@•k 8…TÅ?|§ÿ$i?ZáÅrJ‹?ä(ÉafÙÃ?¢p€C¦:@ŸoXÚÔ»@ª@­¯Š=p£×@­¯Š=p£×@­¯Š=p£×@­¯ŠJŒN@­¯Š=p£×@­¯Š™0¾ @­¯Š=p£×@­¯Š³g ù@­¯Š=p£×@­¯‰­BÃÊ@­¯Š=p£×@­¯‰“ àÞ@«³@«³@«³@«²ÿË’:+@«³@«²ÿ¤?åÈ@«³@«³@N¥@«³@«²ÿò䎊@«³@«³ÞÒˆÏ@2™*0U2b@2™7KƧð@.ÂÐå`A‰@.¶®}Vm@-¯ß;dZ@-¯²-V@-½Vlô"@-¼àuöý!@-½Vlô"@-½IQ‚©’@-½Vlô"@-½!ÿ.Hé?É^žQ5P‚?êÚÏ$?‘šÕU#?‹Æ úJ-M?‘¿ÐÅu?ß-tT?ÐbMçê_x?’#maЀ?r¼Jsž?Y‡…—Ø?äú’?6²#šZQ@­¯Šs@«³¨·/µ?1GúÇ?Eyx"hM°?\Ó÷°ÐŽ?ƒûÓr{@ŸsVB@«@¬ÒÖ“u@¬ÒÖ“u@¬ÒÖ“u@¬Ò×1Å@¬ÒÖ“u@¬Ò×Xâe@¬ÒÖ“u@¬Ò×$tS@¬ÒÖ“u@¬ÒÔÖ¡aå@¬ÒÖ“u@¬ÒÔÉ…ðo@¦Îl‹C•@¦ÎlÌÌÌÍ@¦Îl‹C•@¦Îl²•éâ@¦Îl‹C•@¦ÎmV@¦Îl‹C•@¦Îlô!-@¦Îl‹C•@¦Îl¿±[W@¦Îl‹C•@¦ÎmquŽ@/!-w1@/!-w1@){"Ðå`A@){"Ðå`A@(S¶E¡ÊÁ@(SÃa@O@'¸7´¢3œ@'¸7´¢3œ@'¸7´¢3œ@'¸7´¢3œ@'¸7´¢3œ@'¸DЩ+?É^žQ5P‚?ÉGãA­÷?‘$Cê¡@í?‹²MÿAÿ8?îú/´`?·t¤¢‚J?ÐbV‡,?’ +‰¸Ì?¹º–Èj?3.Ylî?Ó%y*£=?J&d„?k?€b¡´ñ@?Œ¬Çëý ?‚oÁÆÜ§÷?‚ãaÎúvh?†‡hÉÈÓ?†ˆ#.÷@@@@@,@*?ð?ð?ð?ð?ð?ð¿QŒ"°? õ9@?5Ãó=«Þ¶?{¹wÎ@¬ÒÕÁýÆ@¦Îlï**”?Dï:õ°H«?(­*«–j?…†ˆöÚ_Á?J½·È‡¸@Ÿs (È@¬@­&Š=p£×@­&dÝ/ @­&Š=p£×Á.„€@­&Š=p£×Á.„€@­&Š=p£×Á.„€@­&Š=p£×@­&ŠÀƒo@­&Š=p£×@­&’n—P@¯us3333@¯tô9Xc@¯us3333Á.„€@¯us3333Á.„€@¯us3333Á.„€@¯us3333@¯ut9Xb@¯us3333@¯uuÂ\)@8Âò䎊@8($ xG@3õãS÷ÎÙÁ.„M‰ûçm@3_²-VÁ.„QnÙ‡@2ëxFÜ^Á.„NÜC,¥@2ëxFÜ^@2îV“u@2ëxFÜ^@2ó{J#9Á?Ó–ÐÌlÏP@8#˜@8¾:@8 >+?ðŽºJ+½?ð‹Ið˜ ?ßž‚.ÂÓ­@8Î÷@8i§@8Å?ðÅìq?ð„‰p„Ã?ë4hÒâ§N@8 * @8p÷@8¶?ð?oÚ•¼?ð?oÚ•¼@?ð?ð?ð?ð?ðøøøøøøøøøøøø­@¡üOß;@¡üOß;@¡üOß;@¡ü_ö”@¡üOß;@¡ü€4mÆ@¡üOß;@¡ü}¿H@¡üOß;@¡üfÏAò@¡üOß;@¡üÂ\)@¦Ô­V@¦Ô­Oß;d@¦Ô­V@¦Ô¯Òòå@¦Ô­V@¦Ô¯AòÖ@¦Ô­V@¦Ô­í(Œæ@¦Ô­V@¦Ô­„M;@¦Ô­V@¦Ô®!–R½@5IÎ_oÒ@5IÛ"Ðå`@08r° Äœ@07ÈK]Ìd@.ÉxÔýó¶@.É*0U2b@,ܾߤ@@,Û¥ãS÷Î@,ܾߤ@@,ÚÔ,<ží@,ܾߤ@@,ÚáG®{?|¬Çëý ?Òç{íj?‘G¿yÛ?ï?‹×lÇ…N9?ÿ £‰¸9?ÔCXsñ?1·†Æjñ?’CòO…?‘kþE<%?]bËn~?ÔÒ@úˆ‘?hï,ðà?ƒ¡É^&Ö?ŒÂ§dß±?„ã¼ÓZ…ˆ?‚éXëLL÷?†ÃÛSPã?†ïRÉv‘Ñ@@@@@&@,?ð?ð?ð?ð?ð?ð¿5ίP?!ë\?/˜•/5T? 19”…@¡üñvéü@¦Ô­ A?O)ýªáÑâ?.ºƒh[©?ªÿ³AG?g0VÀƒm’@Ÿg;óøF˜@®@ª§ž5?|î@ª§¨´9X@ª§ž5?|î@ª§¶ý!ÿ-@ª§ž5?|î@ª§Ÿò䎊@ª§ž5?|î@ª§˜“t¼j@ª§ž5?|î@ª§Ž¤¨ÁU@ª§ž5?|î@ª§œC,¥z@§ê C•@§ê …¸R@§ê C•@§êmÅÖ9@§ê C•@§ê!–R½@§ê C•@§êT`ªe@§ê C•@§ê ^ž @§ê C•@§êñ©ûè@8ëµsê´@8àÞÒˆÎp@5#÷ÎÙ‡@5$!-w1@4¤¼j~ùÛ@4¨ -à @3Ê0U2a|@3ÉõY³Ð}@3Ê0U2a|@3ÖšÔ,<Ÿ@3Ê0U2a|@3Ò‚@·€5?гá‡}?°»¸ ßÛ?–¦r…û?ŽVåç0ÇO?šŒÐ&îèx?¢©LÚTk?¦NIÉ®š?¤„OW°ò?’˜l%F…Z?’ÁÛ/’:?š¹'¤Ò ? “EÅse?¨¦ï»xŒ?§âŒ$“ná?˜o\¾Z|?‡9 ƒ–’”?” 4‹eñ +?–Mí\{WÐ@@@@@$@&?ð?ð?ð?ð?ð?ð¿tÞ)ƒö?bà·@?Zç õL?bL¦Bò@ª§™;i@§ê¯ˆ<&?z÷~8Úu»?w,ÍF·>?è Z &2ª?ØuHl«–}@ŸlLð¦Ð©@¯@¥"(õÂ\@¥")xÔýô@¥"(õÂ\@¥"&ffff@¥"(õÂ\@¥"%¸Qì@¥"(õÂ\@¥"&¸ºÈ@¥"(õÂ\@¥"%o@¥"(õÂ\@¥"$¨ÁTÉ@®E¡ÊÀƒ@®E¸Qí@®E¡ÊÀƒ@®=ó¶E£@®E¡ÊÀƒ@®?Ë’:)@®E¡ÊÀƒ@®8ï4Ö¡@®E¡ÊÀƒ@®;˜Çâƒ@®E¡ÊÀƒ@®<£n/@3ð4mÅÖ8@3îå¦gCb@0@ Ä›¥ã@0@|„µÜÆ@/ØÔýó¶F@/ÚCþ\‘Ò@/ +#9Àëî@/ …ðoiE@/ +#9Àëî@/Ë’:*@/ +#9Àëî@/ ùrGF?|¬h2:“?¾‰máÚ?‘£Ä›è?Ô@R’?‘ŠR%¨(0?×°ë*–w?|Ñb×¶@?’7Îf¬ps?’±ä?‘aYZ†«q?‘–=û.e1?·t¤¢‚K?‚ÁQ(®U?Œèsq‡#?…I‘ÒÁ/À?†¤c·Ó—1?‡v>ª¸ ?‡2[síç@@@@@,@&?ð?ð?ð?ð?ð?ð¿Pù’q¶¿Rè®$?’ûE´.›?9æíLÛî@@¥"'8:°O@®?µås?0ºô‹C`h?Zm2ôI¤Â?l»ØïMóF?Áh;Iá¶Ï@Ÿfºû'±•@°@¨#Ïß;dZ@¨#Ù‡+@¨#Ïß;dZ@¨#Ø -á@¨#Ïß;dZ@¨#Ô¼j~û@¨#Ïß;dZ@¨#Ô`ªdÃ@¨#Ïß;dZ@¨#Ñ‚©“ @¨#Ïß;dZ@¨#ÒþÅm]@ª–ß;dZ@ª–£× +=@ª–ß;dZ@ª–¨è§ç@ª–ß;dZ@ª–›~ÿ—@ª–ß;dZ@ª–•µsê²@ª–ß;dZ@ª– [À7@ª–ß;dZ@ª–žƒä%¯@8šÔ,<Ÿ@8Åo@1k¥ãS÷Ï@1a×Ûô‡ü@0A‰7KÇ@0 Çy¦µ @.£¼ÓZ…ˆ@.–+jçÕg@.£¼ÓZ…ˆ@.•ÜÆ?@.£¼ÓZ…ˆ@.—süPI?°{QBãï?‘_¦X ë +?’©ßc«?Œ2ÌUÃT?’(æ„+Zk?’—ØPö«?«_$Øï†?¦ KBI?—+Áèlç?’„÷ò¸?Ÿé„ærrl?¦¤Wë'?•ë þÅ?i-ý-›…?ƒíÈm½!¿?…®×__C?‡æê7²zE?Œúq‘@@@@@*@*?ð?ð?ð?ð?ð?ð¿P;ì½¶?nкû?DÏ2Ne÷?Uú”˜ üy@¨#Ó˜™l@ª–™|U›6?V£öù!¹ ?jÌJ‰ª*µ?¥·ú3*?¾ºñÔûáQ@Ÿo–ÕzåY@±@¯ÈéxÔýô@¯ÈèõÂ\@¯ÈéxÔýô@¯Èë I»@¯ÈéxÔýô@¯Èê Þ@¯ÈéxÔýô@¯Èë¬q ²@¯ÈéxÔýô@¯ÈèË’;@¯ÈéxÔýô@¯ÈèŒç°@­Tñ©ûçm@­Tñë…¸@­Tñ©ûçm@­Tò•éá±@­Tñ©ûçm@­Tñ[W>¬@­Tñ©ûçm@­Tò-V@­Tñ©ûçm@­Tòñ©ûæ@­Tñ©ûçm@­TòGE8ï@2Ô xFÜ@2Ô¼¤@0k¥ãS÷Î@0kÓÃa@@0M²-V@0MÌcñA @.æL/ƒ{K@.æ€IQƒ@.æL/ƒ{K@.æ +¦L/„@.æL/ƒ{K@.æ§ï²-?É^òÀXæN?õ¹Ëh?‘WßÈDö@?‹¬àÌ’Ç?ÿ £‰¸9?ô Î]V?ÐbV‡,?’5CàQ?‘twæ³?-õI¸`K?çêÑHcÇ?{L Õ¢D?€e@ˆ’„'?ŒÆò/¢äÍ?ƒmÕ+&¬Š?‚æÊ¬vã?†žóB» “?†¼Š˜L¥÷@@@@@*@*?ð?ð?ð?ð?ð?ð¿W[sêD?Â"§°?@#Ÿ›~Ì?/°û‰¹¢@¯ÈéÍ{o@­TòréÏ?NíñÏB­Ö?=þ™õ#eŠ?—A¤qWî?s“Ç+è@Ÿrý£ñøo@²@¬8âMÒñªÁ.„€@¬8âMÒñª@¬8ðX°±7@¬8âMÒñª@¬8ø¯„@¬8âMÒñª@¬8î}¥@¬8âMÒñª@¬8êgqŸU@¬8âMÒñª@¬8ç~êé@•#På`A‰Á.„€@•#På`A‰@•#J¶æ§x@•#På`A‰@•#Fn‘ê@•#På`A‰@•#6 +&÷9@•#På`A‰@•#4f~+@•#På`A‰@•#/aOÿ @9#g ù lÁ.„>¤µÜÆ@4.5?|í‘@41p@3¹7KƧð@3µ˜)k@3‚@·€5@3€b‘SC@3‚@·€5@3N0óöô@3‚@·€5@30Í©@8J¨?‘݇CD&?ÄšFË ç?‘´7ã@ô?’И©ZŽN?“*qh!–@8J¨?’3jR6Þà?—¾b8[.Þ?°vb'Þ?“SÉ)½z?”¿”@8p÷?’;”Ä>p?’mýݹæ?‰/Æ6 4?– ³G+?Ònëĸ@$@*@,@;@9?ð?ð?ð?ð?ðøøøøøøøøøøøø³@©CÒñ©ü@©CŒ1&é@©CÒñ©ü@©CŽ}Vlô@©CÒñ©ü@©CAò×@©CÒñ©ü@©CŽŠqÞj@©CÒñ©ü@©C‰“ àÞ@©CÒñ©ü@©C‹C,¥@©Së…¸R@©SëC•@©Së…¸R@©SîóMj@©Së…¸R@©SóMj@©Së…¸R@©SñÞi­C@©Së…¸R@©Só&Á¾@©Së…¸R@©SñuŽ!–@7^Hè§æ@7`bMÒñª@2ðÄ›¥ãT@2í‘hr° @1—ï²-@1–“t¼@1?ò䎊r@1=Òñ©ûè@1?ò䎊r@1=¿HË“@1?ò䎊r@1=í(Œç?˜ž^ƒÿ*ˆ?Žd±Ìº?‘ñê&ètä?ŽVåç0ÇO?’dÓÙiº?‘îƒÔ1a?–ªÎ­¡?•²»UbB3?’$ûJw"Ú?’ü#q\-v?‘êë·áþA?’?;Áƒè?†Æ‹™þ?iT£C~t?…~ÆÎÇ$‡?…2 Ôî½?‡×7°º?ˆ©{2¡Î@@@@@,@,?ð?ð?ð?ð?ð?ð¿Bd‚(€?UÅôûš?JˆHä]Dð?DñÑpº@©CŒ,ë| +@©SðÈÃ!Z?dNKLŠ¢¦?a…S*%›?úõJ·È„?ºBÌŒ Î@ŸmÏ4V@´@ äu?|í‘@ äxOÊáÐ@ äu?|í‘@ ähQ]@ äu?|í‘@ ä_Á +™@ äu?|í‘@ ätVü¢@ äu?|í‘@ är†¼ìl@ äu?|í‘@ äxôXÉ©@­ˆ“÷ÎÙ@­ˆ‡®zà@­ˆ“÷ÎÙ@­ˆ¢ðjƒ@­ˆ“÷ÎÙ@­ˆ¥h”@­ˆ“÷ÎÙ@­ˆÚ¯âË@­ˆ“÷ÎÙ@­ˆ“ ”¥W@­ˆ“÷ÎÙ@­ˆ’õ»DŸ@9(†YJôñ@9 Á>0!X@4Š^5?|í@4|NÆ@3v§ï²-@3n„ˆÅ¦¶@33&Á½¥@3*)ª™ Ÿ@33&Á½¥@3%¥ÊK@33&Á½¥@3#Þ~*GÇ?”>¢¿,À@?”¾¨R{ä°?—åLôÕ?‘`m޼ÿ?• i¸È?–èÑrÐ7?‡‡á´WÉ?–¨!ãmþ~?“0à"Ì?’RGçÏl€?”JGY$Ãl?“çË,–s?¼P–5¯¶s?šœ…(êÁÒ?ŒtqNæŒ;?:åùkÔÀ?˜¾[%©à?®öÖ¢.@@$@&@&@4@5?ð?ð?ð?ð?ð?ð¿6í`%ð?`ßJøÈ?P`Ÿñµ?`ÃI]º¤ @ äuÚ¥ö=@­ˆ‹oœ¯?l^©‹@ºž?ËŸ9ôå?Ð-~À:T@lp Â;ü@ŸkêÚæ@µ@¨TzáG®@¨S÷ÎÙ@¨TzáG®@¨V4ê@¨TzáG®@¨Vðº@¨TzáG®@¨[¥ãSù@¨TzáG®@¨YŒ~($@¨TzáG®@¨;=ÈK@®¤`Ä›¥ã@®¤`A‰7M@®¤`Ä›¥ã@®¤VâëC@®¤`Ä›¥ã@®¤[šv@®¤`Ä›¥ã@®¤SMj@®¤`Ä›¥ã@®¤]Vlô@®¤`Ä›¥ã@®¤6®}Vm@5wâ‚@·€@5vµ '»@2T›¥ãSø@2PØDЩ@26§ï²-@21Þi­BÄ@1zÔ,<ží@1v»˜Çâ‚@1zÔ,<ží@1w€4mÅ×@1zÔ,<ží@1_—$tS?}Ñ¿ž,?–âFpë3?™_*®k?‘£ºáõÑ?•BPbC¡©?ž»‚>äÚ>?€‚ñêã ?˜I­}ý½Ä?™”uÀdª?“{¡7¨Üò?’êJ>áý?¢¢@ ~?‚‘´…=Ca?à í¡h„?† + Ðló]?ˆx»€ñö2?ŒÙ”!Çx‡?•mCìc¿4@@@@@ @?ð?ð?ð?ð?ð?ð¿:ÃZ½X¿lŽÀùË?eè1Aüýž?e¾(]ðPÌ@¨T-–s@®¤YØJ't?ƒØ 4Û¸?ƒºê©7.š@ EIý†§@ +!3 k°F@Ÿd„”̯Ï@¶@ Ÿ¾vÉ@ ãR5~{@ Ÿ¾vÉÁ.„€@ Ÿ¾vÉÁ.„€@ Ÿ¾vÉÁ.„€@ Ÿ¾vÉÁ.„€@ Ÿ¾vÉÁ.„€@¢?ÚŸ¾vÉ@¢?ýÐ ¢,@¢?ÚŸ¾vÉÁ.„€@¢?ÚŸ¾vÉÁ.„€@¢?ÚŸ¾vÉÁ.„€@¢?ÚŸ¾vÉÁ.„€@¢?ÚŸ¾vÉÁ.„€@9^Hè§ç@9`^ùcc‡@4n5?|í‘Á.„M‰ûçm@3×ï²-Á.„QnÙ‡@2ÿò䎊rÁ.„NÜC,¥@2ÿò䎊rÁ.„NÜC,¥@2ÿò䎊rÁ.„NÜC,¥?»)¢||n@8#˜@8¾:@8 >+@8Iç@8Ù?¿¢ši.&@8Î÷@8i§@8Å@8S@8û—?¶móEKT@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø·@ŸG‘hr°!@ŸGŽÙ‡+@ŸG‘hr°!@ŸG’K«c@ŸG‘hr°!@ŸG“\_y8@ŸG‘hr°!@ŸGN‰'Ò@ŸG‘hr°!@ŸG‰ýF¿ß@ŸG‘hr°!@ŸGˆ²E@¢4m‘hr°@¢4n}ú@¢4m‘hr°@¢4nËû¶@¢4m‘hr°@¢4pù kº@¢4m‘hr°@¢4met@¢4m‘hr°@¢4n\‘ÑN@¢4m‘hr°@¢4nCË6)@5µS&Á¾@5”¹£îz@1^Ù‡+@1^0Èí#b@0È“t¼j@0Ǻ—<@08DЩ*@07Ç$›AÈ@08DЩ*@06¢-Egå@08DЩ*@07 +Õ xÖ?|Ñb×¶@?×Ý¢t’'?‘[È4òÊ?‹ï Æ?‘00‡Ÿ?ýÐýsC?e™”XWø?’ Ö]…â?ǧ5u°?U&¢>/¥?‘Kf¸@í?¨K t ?ƒ]nx¤µÜÆ@4{ Iº^Á.„M‰ûçm@3y7KƧðÁ.„QnÙ‡@2ãÉîËûÁ.„NÜC,¥@2ãÉîËûÁ.„NÜC,¥@2ãÉîËûÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø¹@¤¥ë…¸@¤¥ Òñ©û@¤¥ë…¸@¤¥PS @¤¥ë…¸@¤¥!UŽÃÝ@¤¥ë…¸@¤¥óž»@¤¥ë…¸@¤¥ ªe"@¤¥ë…¸@¤¥xàs @“Ðî—Oß@“ÐîCªy¼@“Ðî—Oß@“Ñ(úè ý@“Ðî—Oß@“ÐôÆßO¹@“Ðî—Oß@“Ðü#Ø·@“Ðî—Oß@“Ðô—.÷¥@“Ðî—Oß@“ÐðpÒÅ@7šÔ,<Ÿ@7*¢¤ Ì@3?|í‘h@3J“â@2b-V@2Z/á>ÇË@1î_oÒ @1é騥¦@1î_oÒ @1äé(p½L@1î_oÒ @1æLR>±¨?Ĺó¥p?Ì +…"ˆÔ?’@»ó>¯é?†úâ™Ú?–Ú ØžÙ?’gà=aù?~Ov_Ø­«?’$•œa?‘ß<å1Iñ?1ÊGe»|?˜µ[ÄŽ™þ?•Bü5„1r?Ÿéd¡GE?Á&Ÿ>G?‘!+Üä?ƒ:šœœÙâ?ŽûJr ¦7?ŽüÇßéy@@@ @@5@5?ð?ð?ð?ð?ð?ð?P½:("?K]>¯V?XQ«î?™?Jý}w½r@¤¥ uÎ=@“ÐóM£ì€?u×[By1Ò?m‰1-M‘?è´UábS?Úy‹ðÈÿB@Ÿi‚á~6@º@«L/²-@«L-Òñ©ü@«L/²-@«L1œàu÷@«L/²-@«L0U2a|@«L/²-@«L3¶E¡Ë@«L/²-@«L/–»™@«L/²-@«L/ùrGE@§…¸Qì@§Ž—OÞ@§…¸Qì@§‡RT`ª@§…¸Qì@§‡»/ìW@§…¸Qì@§‰^ž @§…¸Qì@§…`A‰7@§…¸Qì@§‡ÈK]Ì@7Ô xFÜ@7Óg ù l@3+ Iº@3Éã¼@2“t¼j@2 ÞÑ·@1a:’£S@1`-à r@1a:’£S@1_¾vÈ´9@1a:’£S@1_ìVÕÏ«?š•§q!U?’ Œ#Çî«?’Gßk;m?Ça_b‹?’yÊêºq?âé¨ë7F?‡YÍ_?”ÇtæMPÐ?‘ïɇ}~?’_3Í\Æ?’$) ‘?“IëH!w?ôê÷º»â?Ž»žä4?ŒR‹w#{?„l¯¸‰ŒÎ?‡gϵ’õ?‹ ˜1 D@@@@@@,@(?ð?ð?ð?ð?ð?ð¿ku¿\¤j?P‚i¹û±?<éþ{·"&@«L1ps4@§‰+ã[ ?hë½Ü $‰?_2¶ð’[½?Í6*ÓÎ?º±=[Ex@Ÿm7ƒœ@»@¦¬“t¼j@¦¬3333@¦¬“t¼j@¦¬ ƒn™@¦¬“t¼j@¦¬(õÂ@¦¬“t¼j@¦¬ƒä%¯@¦¬“t¼j@¦¬&$Ý/@¦¬“t¼j@¦¬+ûµt@¢Ç¯²-@¢Ç½ó¶E¢@¢Ç¯²-@¢Ç«¬q ³@¢Ç¯²-@¢Ç¬"h Õ@¢Ç¯²-@¢Ç¥m\ú­@¢Ç¯²-@¢Çš¹õY´@¢Ç¯²-@¢ÇŸHË’@8Ñ|ÚQ@8È­«ŸU›@4Lí‘hr°@4J…‡“ݘ@3€å`A‰7@3Ø­«ŸV@3B‚@·€5@36 +¦L/„@3B‚@·€5@3EðoiDh@3B‚@·€5@3Esê³g¡?|öOÿÝ?‘_¦X ë +?—¯}_ƒÜ»?›"Jª]u?—åaÿ0Ð?¥sú·–Á[?Ÿ‹‘+-/Ü?’CòO…?“’OÕƒõ‘?¢"|ÐOV?™³¤Áa5?¥å`Åðu3?´Ã»™Ö ?–¡aä÷eþ?‘!´ö‚?’ª=˜Å?™ì ª# Ù? hvÅÜk@@@@@&@,?ð?ð?ð?ð?ð?ð?sƒ×ã¿p+É"€?(ÒÔù“s?ZÀYmMg@¦¬l]„^@¢Ç¨fŠc??MJjMP|?w§è|a}d?ˆó˜õ¦?ÐÊ@‚/¦@Ÿj Ø1ñ[@¼@ªÅ@ªÄù™™™š@ªÅ@ªÅ ÞÒˆÎ@ªÅ@ªÅbMÒò@ªÅ@ªÅe+ÓÃ@ªÅ@ªÅã¼Ó@ªÅ@ªÅ"e+Ô@ æÉ7Kƨ@ æÎV“@ æÉ7Kƨ@ æ‹C,¥@ æÉ7Kƨ@ æ•Â\)@ æÉ7Kƨ@ æwKƧï@ æÉ7Kƨ@ ævR½<7@ æÉ7Kƨ@ ælÌÌÌÍ@8wâ‚@·€@8l1&éy@4 í‘hr°@3ßoÒòä@3_²-V@35¸Që…@3 ¿±[W?@2Ñ-w1Å@3 ¿±[W?@2Љ 'RT@3 ¿±[W?@2Ñ‚©“ á?¬c°Åxt?¤eÄ…àÖ‚?Ÿ7'»ˆv?¥__z8Ž`?¨eTm5[]?¬Jà"ÃFr?¹©¢þµ|õ?¨î+³M?ªÊÏËùô?°.OŠcÉ?¶|ùŒg?¾T+)¶ª?…™ï ufÝ?”XÁyÁ´š¬1@¨>ŸF=E@@¨>š¬1@¨>ºÉ@=@¨>š¬1@¨>›Ô»¾@¨>š¬1@¨>­ÁéÁ9@¨>š¬1@¨>¶_­þÉ@¨>š¬1@¨>¬NÄ|@˜&dZ¬@˜&BÑ®K%@˜&dZ¬@˜&’Pþ@˜&dZ¬@˜&™òñU@˜&dZ¬@˜& êHÍ@˜&dZ¬@˜&¶;°·°@˜&dZ¬@˜&œ›ö-@8òÃÉîËû@9˜orX@3î5?|í‘@3ÚZîcŠ@2éÛ"Ðå`@2ØÏD­@2£ÉîËû@2ŠSsFÿ +@2£ÉîËû@2†X r Í@2£ÉîËû@2…À¶ÀNö?†c£ïDì?°òè$nba?•ÂÁm´Bñ?§ö„$~q?«QeÄ,•?¤uhÒ¨ìÏ?®p¹EkIõ?¨ª{9JgD? ·W)²Be?²– ’Äc¢?¯ÙíÒ ?°4Fò§:?°½ |ȶ?’…û: æ?‡ôæ‰[?ŒÑìZ£%¢?‹Û•Ý“ý?b$QߤA@@*@&@*@;@8?ð?ð?ð?ð?ð?ð?nh +2?…ÍehW ?R~| +hÄ?pïA:Oó@¨>©­rÓ@˜&ˆ??w;-´²™?Žg×n„ô?ÉÛâL©Ìæ?ÛæÜW'Æ@ŸkÖëþc@¾@£šyÛ"Ðå@£š½/Ÿ¾@£šyÛ"Ðå@£šxFÜ]@£šyÛ"Ðå@£šyb¶®@£šyÛ"Ðå@£š|‘ÑN<@£šyÛ"Ðå@£šz–¼@£šyÛ"Ðå@£švR½<5@§»àA‰7L@§¼^5?~@§»àA‰7L@§»ãñA \@§»àA‰7L@§»âëC,@§»àA‰7L@§»âø7´¢@§»àA‰7L@§»Ûšv@§»àA‰7L@§»à'RTa@9?–»˜È@8œ²•éá°@3õãS÷ÎÙ@3ý!ÿ.Hè@2Õ`A‰7L@2ÚîcŠ @2B‚@·€5@2E%F +¦L@2B‚@·€5@2GeýŠÚº@2B‚@·€5@2F¸ºÇ?Ô­FLgŽ4?Kb½™×?“‡ƒ×¤?’~ò™rV?•Qð^ûF?’j•×›b?£G± *Ç‚?“Öæ…0Âû?š }Õ>_?—°Ó&v'ç?–%¥ê3–?•lÓªü<?ñLÆ´G¤?“Ø/‰ #?6´×–±?‹µ¼a?ˆk! ¨l?Œ¸ðËb@@@@@*@&?ð?ð?ð?ð?ð?ð¿h «òˆ€¿„¿ ¡ÌÀ?Vïn(I›®?s¯˜@£šyêÇ2¢@§»âáÍí¤?f2Š“‘/? ]¹3É?¿æšO”³×@ýÉti;¬@ŸsN%`EE@¿@®r‘ë…¸@®r‡®zá@®r‘ë…¸@®r‰7Kƨ@®r‘ë…¸@®r•%F +¥@®r‘ë…¸@®r¾ í*@®r‘ë…¸@®rˆÛ‹¬p@®r‘ë…¸@®rŠ™0¾@ E Ä›¥ã@ E¡G®{@ E Ä›¥ã@ Eœ¹#¢@ E Ä›¥ã@ E¤2ÊW¨@ E Ä›¥ã@ Eš^5?}@ E Ä›¥ã@ Ežƒä%¯@ E Ä›¥ã@ E™=Ùc@8+µsê´@81hr° Ä@3ã÷ÎÙ‡@3ßb¶®}V@3lj~ùÛ#@3fÁ½¥@2kxFÜ^@2ffffff@2kxFÜ^@2he”¯O@2kxFÜ^@2hy=Ùc?ð°–Ž]?‘" Á°–•?’ +·>á ?ŒÇQ´ë…¸R@ž>õÂ\)@ž>ë…¸RÁ.„€@ž>ë…¸RÁ.„€@ž>ë…¸RÁ.„€@ž>ë…¸RÁ.„€@ž>ë…¸RÁ.„€@6£g ù l@6¥¸Që…@3|í‘hrÁ.„M‰ûçm@2¬j~ùÛ#Á.„QnÙ‡@1¸DЩ*Á.„NÜC,¥@1¸DЩ*Á.„NÜC,¥@1¸DЩ*Á.„NÜC,¥?æ ç«Z–@8#˜@8¾:@8 >+@8Iç@8Ù?æ ç«Z–@8Î÷@8i§@8Å@8S@8û—?æ¡‚á¾A@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøÁ@¡+ܬ1'@¡+ñbÂa@¡+ܬ1'@¡+«tŠH@¡+ܬ1'@¡+ðþ­-@¡+ܬ1'@¡+!u/@¡+ܬ1'@¡+“xEú—@¡+ܬ1'@¡+«]ú¬!@¡#…¸Qì@¡#´Ø%e˜@¡#…¸Qì@¡#ôTg@¡#…¸Qì@¡#ᒖË@¡#…¸Qì@¡$‰Ø·@¡#…¸Qì@¡#²àcƒ@¡#…¸Qì@¡#ÇðœÏ @8Ù*0U2b@8ª›3›þ»@4)‡+ @3ÌUéªÛ@3²-V@3"œ™ðÇs@2µµsê³h@2f„ä+e@2µµsê³h@2y{“¶2@2µµsê³h@2z)$ä? ý+úª?”Xføö[?ž}q㉽a?‘å-ví<?š•«ú'ݘ?“ -U[?¥¢É?˜#P€•5a?¨ÅJÇõ?“ “p®<Ú?îCJÄ?’í¯ )&ü?Š{×§EG?š­(g³`B?ª¨ 7¹Ü9?ˆT¨VX¶W?“…‹×[Çh?˜* ô;•@@ @"@@.@"?ð?ð?ð?ð?ð?ð¿±(¾W@?`ïŽbÏ?ˆá¶Ä{1`?Œ¯¦ÞçTý@¡+¦Ó³®a@¡#ÍUíÎÇ?¢Í£€§Ç?«¤Y¯âÏ@65bÝ]þ@S‘Ï#´@Ÿmè0”þÓ@Â@§§záG®@§§{¥ãSø@§§záG®@§§zÔ,<Ÿ@§§záG®@§§z^5?}@§§záG®@§§záG®@§§záG®@§§z–½@§§záG®@§§z¬Ùè>@¡fŸQì@¡fÇï²-@¡fŸQì@¡fÆ1ø @¡fŸQì@¡fÄÂø7¶@¡fŸQì@¡fÄ›¥ãT@¡fŸQì@¡fÄ?åÉ@¡fŸQì@¡fÄ÷eý‹@5uS&Á¾@5vR½<6@1O|í‘hr@1NùÛ"Ðå@0•`A‰7L@0•¸Që…@/ÑÑN;Í6@/Ñ4êJ@/ÑÑN;Í6@/ÑuŽ!–S@/ÑÑN;Í6@/ÑÞi­BÄ?|öOÿÝ?Qdöÿô¼?‘K]Ã4?Œ'õ‚$5ñ?‘ ·èf?×°ë*–w?1·†Æjñ?’HGªÂÛ^?üÓqÔN‰?iêhAÜ?ß’ºèh!?oÌ‘'ýT?„ü›ðÓ?2ô]7?‚§W®ê ?ƒE 8?†µ°jÆÃ?†Ü‘ °Ô@@@@@$@(?ð?ð?ð?ð?ð?ð¿1ç°"¿II½ÿ?®íLCÛg?+çCÆ8°@@§§{Б@¡fƈýæ?4À’» T?L{€:­*Â?vØ>ˆ8øÚ?£ØË ¸@Ÿg@Ü)!T@Ã@¢Â`A‰7L@¢Â`ƒn™@¢Â`A‰7L@¢Âa×Ûôˆ@¢Â`A‰7L@¢Âa£n.²@¢Â`A‰7L@¢Âa|ÚQ@¢Â`A‰7L@¢Â` qv@¢Â`A‰7L@¢Â`ÞÒˆÎ@¨1ò-V@¨1ó3333@¨1ò-V@¨1ò䎊r@¨1ò-V@¨1ó àÞÓ@¨1ò-V@¨1óÝ—ö*@¨1ò-V@¨1òÊW§ˆ@¨1ò-V@¨1òT`ªe@6Hè§æ@6„M:’@1 Iº^5@1aä÷eþ@0y7KƧð@0xÎp:û~@.p‰ 'RU@.oÅo@.p‰ 'RU@.ov_Ø­¬@.p‰ 'RU@.oÅo?|öOÿÝ?õ¹Ëh?‘"žæÆó¡?‹½XQê>æ?‘¿ÐÅu?À­Õß}º?…ÅBðrç?’HGªÂÛ^?ŽËÜ¿€?UÕh;·Å?õ<úU?e¾DQ„Q?Œznyž-g?Œáò¯ž¼ù?‚ÂÌ]æ?ƒ ?ÿ½?†©b/bJö?†¯Mž684@@@@@,@$?ð?ð?ð?ð?ð?ð?õáN€¿ á²?P?#ƒ¼(´?#P—µ9®@¢Â`¸°¨ª@¨1óÔ£?DKE•Ð-?CRqE} !?”l-LÅ?Œð•Lo@Ÿh¹-æ9@Ä@ ’øÔýó¶@ ’ùCæ)è@ ’øÔýó¶@ ’üî¾q«@ ’øÔýó¶@ ’õÑqž@ ’øÔýó¶@ ’øE¯Hu@ ’øÔýó¶@ ’Û,ç1Ü@ ’øÔýó¶@ ’ᆸ>•@¡½p£× +@¡¾BZîd@¡½p£× +@¡½ó¢Æ¬@¡½p£× +@¡ÈkŒc@¡½p£× +@¡ðM©%@¡½p£× +@¡Ûd'k0@¡½p£× +@¡ßgûPw@5m¥œàv@5m,Ç +@1áhr° Ä@1ÊÑlš @0ûƧï²@0òi0X•'@0õµsê³h@0ÚárJ@0õµsê³h@0Úfy½T@0õµsê³h@0Ø1#%H?}x—™¼:@£¯²-@£°ÎÏ(@£¯²-@£¯ ”_@£¯²-@£¯ŒÄ@£¯²-@£¯>뽕@•õÂ\)@•õÂ\)@•õÂ\)@•õÀ4"_@•õÂ\)@•ö±»C@•õÂ\)@•ô¾Y¸@•õÂ\)@•ö‡¶_@•õÂ\)@•õè/´q@0|ÚQ@0|ÚQ@)=²-V@)>Jüµ@) 1&éy@) ™Bö¬@'Ǔݗö,@'ÇʤÐRø@'Ǔݗö,@'È0ÌÕ>±@'Ǔݗö,@'È?»õN?É^ž6õP?ų6¨¹?‘ YƒÓ`?‹¦ à:?è³/ï†?¶‚µxÅ?ÐbMÝn½?’²ÖxÉ?†t0^[?-õ(ƒ½?Ñ_$^Þ?N@™ˆ£?€bwÄ' g?Œ­ÛÊ™· ?‚zŽbœ¡½?‚ç¬V–…‰?†Žÿ󰉋?†y €¤Y@@(@,@$@;@:?ð?ð?ð?ð?ð?ð¿(ÏŠÓ(?1›:Èþ?“ºVÆ|ø?)rû{A@£¯YÁM”@•õ¥f˜¡?+zÃZQ'?8?WÉx¼$?H쮽âøÐ?B~)ß›ì@¥Œ"®˜Ž@¯©V–H?bÝÃØ„f)?gm="å[?¼æÏÚZl?ÑrdÉàüJ@Ÿm¼»9X¬@Ç@®€ß¾vÈ´@®€ÞvÈ´9@®€ß¾vÈ´@®€à-à @®€ß¾vÈ´@®€á$Ý/@®€ß¾vÈ´@®€à-à @®€ß¾vÈ´@®€Þÿ—$@®€ß¾vÈ´@®€ÞvÈ´9@­£9Û"Ðå@­£9Û"Ðå@­£9Û"Ðå@­£:áG®@­£9Û"Ðå@­£:^5?|@­£9Û"Ðå@­£:)Çy¨@­£9Û"Ðå@­£:xl"h@­£9Û"Ðå@­£:6âë@4Ô xFÜ@4Ñä÷eý‹@/Üj~ùÛ"@/Û~ÿ—$@.N—Oß;@.NV“v@-QÑN;Í6@-Qø -ß@-QÑN;Í6@-QÑN;Í5@-QÑN;Í6@-Q‚©“ á?žˆ2}?ZÁ».œ?‘4!Ÿ•p’?‹ª½¨ª8v?ðÌÇßgé?Êëüâi{?€‚ñêã ?’4 "ëžØ?†[‘'Í?/ò×ÈZø?â2„&ÿh?sxÙ/T?‚nâwfÿ?Œ».êxóÚ?‚q6tNø7?‚éXëLL÷?†špk Y?†špk Y@@@@@(@*?ð?ð?ð?ð?ð?ð?_Gz€?ê+­À?3_û['?ÑŠ±Ÿ:H@®€Þø„‰@­£:¢G¶?S>>ÜØ u?"b³äÇù?±P!>Ý‹I?O‘ÙY +@Ÿh,Ùl,²@È@¦ôD“t¼@¦ôDZ¬@¦ôD“t¼@¦ôDÂø7µ@¦ôD“t¼@¦ôDÝ/ @¦ôD“t¼@¦ôE‡“ݘ@¦ôD“t¼@¦ôC9Àëî@¦ôD“t¼@¦ôC¯·é@ªpô¼j~ú@ªpô¼j~ú@ªpô¼j~ú@ªpõ2a|@ªpô¼j~ú@ªpô¢3œ@ªpô¼j~ú@ªpô¢3œ@ªpô¼j~ú@ªpóg ù @ªpô¼j~ú@ªpóÝ—ö,@204mÅÖ8@20A‰7KÆ@/žùÛ"Ðå@/Ÿö”Fs@.¯ß;dZ@.®Ù‡+@.3üPH@.1hr° Æ@.3üPH@.-úCþ\’@.3üPH@.-žƒä%¯?É^³Dw'?äm°û0Ž?‘.Ò®ó_ ?‹ÑqÔ@vÿ?‘¿ +Óñ›?‘‚ÊŸû©?ÐbMçê_x?’)£µ“[+@8Iç@8Ù?Š÷iž$@8Î÷@8i§@8Å@8S@8û—?« ¡½ÄðJ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøË@ª+…¸R@ª33333@ª+…¸R@ª4¼@ª+…¸R@ª9XbN@ª+…¸R@ª`hÛ‹­@ª+…¸R@ª–lô"@ª+…¸R@ªvR½<6@¡ÖX“t¼j@¡ÖV‡+ @¡ÖX“t¼j@¡Öi 'RT@¡ÖX“t¼j@¡ÖPå`A‰@¡ÖX“t¼j@¡Ög†Â&@¡ÖX“t¼j@¡ÖLÙè>C@¡ÖX“t¼j@¡ÖCŠ @7ëµsê´@7é^žš@5sS÷ÎÙ@5sn.±Ä2@4ù7KƧð@4÷¯·é@4¸DЩ*@4ª³g ù +@4¸DЩ*@4¶lô!.@4¸DЩ*@4­5¨Xy>?}Ñ¿ž,?’‚€‡d_s?”^RžpX?­×‡·lôg?ÊI]mû­B?½:7{ë*J?—¤o„C?’{cü€øõ?低NëU?¬]~ɺ¶@?¯¦>5¬‡?³º{$Õ@?¤WÙAâèå?™Uîœsú?©¼wX¬?§¸'ôÔD[?§R†Í?§8©$ +"º@@@@@*@*?ð?ð?ð?ð?ð?ð? H¼c@¿X—JL?b´½ôÀË?jïdÓx@ªHË„@¡ÖUÿü¯ð?xNæX(&?†Á3ƒHò’?Å…p’øç•?ä4Kð?Ùü@Ÿ`QlüÙ;@Ì@£]3¶E¡ËÁ.„€@£]3¶E¡ËÁ.„€@£]3¶E¡ËÁ.„€@£]3¶E¡ËÁ.„€@£]3¶E¡ËÁ.„€@£]3¶E¡ËÁ.„€@¬>0£× +=Á.„€@¬>0£× +=Á.„€@¬>0£× +=Á.„€@¬>0£× +=Á.„€@¬>0£× +=Á.„€@¬>0£× +=Á.„€@9=:’£Á.„>¤µÜÆ@4œIº^5?Á.„M‰ûçm@3~V“uÁ.„QnÙ‡@3._oÒ Á.„NÜC,¥@3._oÒ Á.„NÜC,¥@3._oÒ Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøÍ@©èØbMÓ@©èØQë… @©èØbMÓ@©èØÆäÍø@©èØbMÓ@©è×ÚÅ=Ò@©èØbMÓ@©èØ~çÆ@©èØbMÓ@©è×ÿû£u@©èØbMÓ@©èØÅ†@“+ J@“,NE%@“+ J@“ÍiG@“+ J@“2ÈÙŠ@“+ J@“ö”Fs@“+ J@“4R!@“+ J@“d. @204mÅÖ8@20FÇd®@.Çï²-@.È>BZîc@-›dZ¬@-›Và·e\@.­úCþ\’@.®Xsœ–@.­úCþ\’@.­ì*Ÿýó@.­úCþ\’@.­ã,Ù¢´?É^¨¯Âj?ÅÁè]9?‘"žÉQJé?‹ÇÁBÙù*?üYY%?ÍÊ/z?ÐbMçµ7§?’Ï9þn?„=¾ý,D?4ái¶Ù?ÜÜv©¢ +?\Ÿ¨ð :?€b™Qž?Œ¬7c‹­Ï?‚~ƒ”@\?‚ë•ä™ Š?†‘"‘Fùá?†ßÁL“å@@"@"@&@6@5?ð?ð?ð?ð?ð?ð¿'¼üÈè¿5sæ]ø?6Éúê€?|\·Ãt—@©èØ<Öô—@“`€´R?'HJ´+b?%Hínì?JnðÃGˆ ?CÎÙüYt@Ÿs&)Ž?@Î@­¡oŸ¾w@­¡nV’@­¡oŸ¾w@­¡l‹C•‚@­¡oŸ¾w@­¡hr° Å@­¡oŸ¾w@­¡tðØDÏ@­¡oŸ¾w@­¡n¤¨ÁU@­¡oŸ¾w@­¡mí(Œç@£ÍbMÓ@£Í#× +=q@£ÍbMÓ@£Íéùr@£ÍbMÓ@£Íéùr@£ÍbMÓ@£ÍÃa@@£ÍbMÓ@£ÍeýŠÛ@£ÍbMÓ@£Íï4Ö¡@8¿–»˜È@8©“ àß@3^Ù‡+@3_Š Þ@2Ú~ùÛ"Ñ@2Ü/ƒ{J#@2&YJôðØ@2&”FsØ@2&YJôðØ@2&¸ºÇ@2&YJôðØ@2%m\ú¬Ú?žˆ2}?—É·R©Ï?‘yß]³Õø?ZÁ».œ?‘·Xâe?’£sðU Z?Ÿ‹‘+-/Ü?•yom?‘F·ˆH>d#?’÷fAzQa?Æ<äQøN?ŽõÕJ?„ü›ðÓ?ƒ¼9XNÄu?‡¤o„C?‘  ¶‚3@@@@@ @&?ð?ð?ð?ð?ð?ð?2‡Ô‹¿Xn1‚Æ?Lá¶ ·B÷?^8¶¦ÈÆÄ@­¡oÚŠ@@£Í˜J‚?pþóÎz‹?wsÒ·J?áQ´ê£ú±?áÈxtâ @Ÿm®Èáp§@Ï@¡¹H´9X@¡¹M‘hr¯@¡¹H´9X@¡¹IÞÑ@¡¹H´9X@¡¹K’:)Ç@¡¹H´9X@¡¹G®zá@¡¹H´9X@¡¹GÕfÏB@¡¹H´9X@¡¹KP°ò|@¢îbMÒñª@¢îdÝ/ @¢îbMÒñª@¢îjW§†Â@¢îbMÒñª@¢îjÚ¹õZ@¢îbMÒñª@¢îhÎp:û@¢îbMÒñª@¢îh Ô•@¢îbMÒñª@¢îf1ø @7|ÚQ@7°‰ 'R@3° Ä›¦@34êJ@2>V“u@2BˆÎp:û@1æYJôðØ@1èï4Ö¡b@1æYJôðØ@1ãFÜ]cˆ@1æYJôðØ@1áÄ2ÊW¨?гá‡}?‘‹PƧ¢$?–™@^Ú¢?ŒR‹w#z?“K–ºé…/?‘Û.Yrî?‘â%ì˜ ä?–HÞÆzì²?’üüšë‚J?@§[*^?’we °÷¬?’÷fAzQa?¿N†Ï¸?à í¡h„?„‘Za¹Q?ˆã1µR?Œúq‘?Ä;Ãkr>@@@@@&@(?ð?ð?ð?ð?ð?ð¿K8IÑÐ?9íì¨?I™ÄcÔà?B  eÝŠ@¡¹J-aã@¢îgIrR?h4n«R­Û?_à¨l§¡â?Ò5.ØD?¹¥CtéØ@ŸkzÿNCÄ@Ð@¢Ðå`A‰@¢záG®@¢Ðå`A‰Á.„€@¢Ðå`A‰Á.„€@¢Ðå`A‰Á.„€@¢Ðå`A‰Á.„€@¢Ðå`A‰Á.„€@•ð$Ý/@•öÝ/Ÿ¾@•ð$Ý/Á.„€@•ð$Ý/Á.„€@•ð$Ý/Á.„€@•ð$Ý/Á.„€@•ð$Ý/Á.„€@8G>«6z@5ŠT`ªdÃ@4Yº^5?}Á.„M‰ûçm@3²-VÁ.„QnÙ‡@3O „MÁ.„NÜC,¥@3O „MÁ.„NÜC,¥@3O „MÁ.„NÜC,¥?æ ç«Z–@8#˜@8¾:@8 >+@8Iç@8Ù?æ ç«Z–@8Î÷@8i§@8Å@8S@8û—?æ¡‚á¾A@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøÑ@« ¤Z¬@« ¤Z¬@« ¤Z¬@« ¦ +¦L/@« ¤Z¬@« ¢ø7´£@« ¤Z¬@« ¥Éä@« ¤Z¬@« ¡×Ûô‡@« ¤Z¬@« ¡‰7KÆ@ª¡l‹C•@ª¡lIº^5@ª¡l‹C•@ª¡o–»™@ª¡l‹C•@ª¡m\ú¬Ú@ª¡l‹C•@ª¡l¥zxl@ª¡l‹C•@ª¡n.±Ä3@ª¡l‹C•@ª¡m\ú¬Ú@4‡>«6z@4‡§†Â&@25ãS÷ÎÙ@25ÜÆ?@1ÐA‰7KÇ@1Ð quŽ@1._oÒ @1-ŠÚ¹õZ@1._oÒ @1+˜Çâ‚A@1._oÒ @1+çl‹C–?|¬Çëý ?jú‚<·™?” +Ÿ”îtI?Œ<…ÓÆÝ?‘ÏX¼ãs~?’IåŠú?|öOÿÝ?’µ4ãÝÿ?’hÕü‰­?;ß $Þû?’ºñS©YÖ?‘õe\Š«p?‚Ö˜>µDà?=d­úå?ƒ]€µ,Vß?†ÞåØÜÓ?ˆ0&YÊEd?Š|)-}í(@@@@@,@,?ð?ð?ð?ð?ð?ð¿:\F“`?2«ÍÓ?:¤×iÿj-?öƒàJ!@« £¼ÛèÎ@ª¡làuP?Z NV=Sê?=ì >R£h?Á”fæ_H?…zRWëÅ@ŸfiÊí‘ò@Ò@£ìQhr°!@£ì^vÈ´9@£ìQhr°!@£ë;Í5¨X@£ìQhr°!@£ê»²þÅm@£ìQhr°!@£ê·éù@£ìQhr°!@£ê¥®æ1ù@£ìQhr°!@£ê¼„µÜÆ@£Ú»dZ¬@£ÚÆ$Ý/@£Ú»dZ¬@£Ù™‡+@£Ú»dZ¬@£Øç ù l@£Ú»dZ¬@£Øû=ÈJ@£Ú»dZ¬@£Ù}¿H@£Ú»dZ¬@£ØïÒòå@7½:’£@7¢{²þÅn@5™º^5?}@4ó{J#9Á@5`A‰7L@4+À6âë@4O „M@3…+ÓÃa@4O „M@3•Â\(ö@4O „M@3Òñ©ûè?„F/·ÿP5?¿ &ð/d%?Äüjl|Õ?¶÷üG>à +?Ë ^㪶Ê?ÑB¦[!?¡ÅꯨŠT?»üÉ–›ú¢?¿¡3A×ÑO?£…} ÑÉ?ÓfµÙú¶?Ô‚ûüï»Ê?•@K/Ù{?²€8Ð7½À?­ó@¯@ ×? :>è-ƒ?¤€3¼¾BÁ?¦ÆIÊv:@@@@@,@*?ð?ð?ð?ð?ð?ð¿ÂåÖ=@¿Å<¼/Œ?œu˜¶MŒ?“4ܹ³@£ë»Sû\@£ÚòT¼Í?°Oº4¼+?©pÕ˜¥zm@"’LÈ@@‰(‘3S@Ÿ^ïò{ˆ@Ó@«3ºáG®@«3ºŸ¾vÊ@«3ºáG®@«3½ eÐ2@«3ºáG®@«3ºõÈÊ@«3ºáG®@«3¾`Ðc=@«3ºáG®@«3»Ó¤¥\@«3ºáG®@«3¼¶óöý@”?üí‘hs@”?ûè¸Ä@”?üí‘hs@”?þÍþ+@”?üí‘hs@”?þJ¿ô“@”?üí‘hs@”?ýCz‚Í@”?üí‘hs@”@Z ñ@”?üí‘hs@”?ÿÝ>À@3ëµsê´@3ëP°ab@1 Ä›¥ã@0þŸÊe1@0Z~ùÛ"Ñ@0Y~´N0@0‚@·€4@0^×{ê@0‚@·€4@0W… ’1@0‚@·€4@0Oô4ä?|Ñb×¶@?Hˆ]ñ9?‘)ûÍÿ×þ?‹¸–¿;ŸÅ?‘×±T©?‘(ØHÙ?|¬Æ Væ?’Eµ§¢~*?¿§³Œ +?0Ô¾1R +?ÿ±6X?„x++?‚zÄÌí*?ŒÐñX‰I?‚‹HÊoù?‚÷ëá÷?†° Ñòo?†©b/bJö@@,@&@$@7@8?ð?ð?ð?ð?ð?ð?AžÖè?;ÇÊq?8\¼áË[?$ÀG7è2£@«3¼rv@”?ý½ýoÝ?X%v1ÚE©?Eå}¬g?¿‚Š%}ÖZ?—" †´ô³@Ÿfá]‚d@Ô@£ +_¾vÈ´@£ +T9Xb@£ +_¾vÈ´@£ +~Åm\ú@£ +_¾vÈ´@£ +¬<žìÀ@£ +_¾vÈ´@£ +™Î_p@£ +_¾vÈ´@£ +wXâd@£ +_¾vÈ´@£ +}—ö+l@¨¯“÷ÎÙ@¨¯ŽzáI@¨¯“÷ÎÙ@¨¯6ÕϪÎ@¨¯“÷ÎÙ@¨¯0ØDÐ@¨¯“÷ÎÙ@¨®÷§†Â'@¨¯“÷ÎÙ@¨¯ -à@¨¯“÷ÎÙ@¨¯!½¥@8%öý!ÿ.@8)XbMÓ@3i‡+ @3P–»˜Çâ@2þV“u@2áÎ_p@2ž«6z‘@2ò䎊r@2ž«6z‘@2•Ϫ͞„@2ž«6z‘@2ÌcñA ? Eˆ‡ðó‹?ª½Š†kf?¬s¨›¶ |?¦áU³6Ö§?¡úñÙà?¦—d4â?Ž=fA:?·Àº0æo>?³Ã7È‘<Ö?Áî˜/áÕÎ?»¼¸ölƒ?¹P¢¹’s³?”⦘¹Ô?¡:¥UYP§?špdÃ2-´?¦PöÔMmk?¨S![cé?ªi‰o+p@@@@@(@*?ð?ð?ð?ð?ð?ð?‚-ÉiÒÀ¿›éûFB?z2WûiY?|±p^óõH@£ +lWip¼@¨¯[c:ƒb?š©£Áxa +?šI.údS@ i7üßîC@¢ÿÄ›¥ãT@¢ÿ±hr°!@¢ÿÄ›¥ãT@¢ÿ`[À7@¢ÿÄ›¥ãT@¢ýäM:“@¢ÿÄ›¥ãT@¢ÿã{J#:@¢ÿÄ›¥ãT@¢ÿ¬˜_÷@¢ÿÄ›¥ãT@¢ÿ“©*0U@8õS&Á¾@8÷“Ý—ö,@5ør° Äœ@6VÈ´9X@5•`A‰7L@6tmÅÖ8†@4ÑÞi­BÄ@6œwškQ@4ÑÞi­BÄ@5ª…‡“ݘ@4ÑÞi­BÄ@5-ÈK]Í?гá‡}?³ÔØZ:“1?可jÝk?È,J à3?Lj!þ_¸ï?É{='"­?±Á1È+@8Iç@8Ù?“Æ×q„nï@8Î÷@8i§@8Å@8S@8û—?‰¢Ò+ÜÝ:@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø×@¡Ò["Ðå`@¡Ò[¥ãSø@¡Ò["Ðå`@¡ÒXï4Ö¡@¡Ò["Ðå`@¡ÒZkP°ò@¡Ò["Ðå`@¡ÒYÎ_p@¡Ò["Ðå`@¡ÒYJôðØ@¡Ò["Ðå`@¡ÒV®}Vm@£×ŠÀƒo@£×Š~ùÛ#@£×ŠÀƒo@£×‰Dg8@£×ŠÀƒo@£×Š#9Àì@£×ŠÀƒo@£×‹àÞÒ‰@£×ŠÀƒo@£×ŽHè§@£×ŠÀƒo@£×hÛŒ@4 ]cˆe”@4 VÕϪÎ@0‚° Ä›¦@0uŽ!–R@0Z~ùÛ"Ñ@0TÂø7´¢@/Ǔݗö,@/»"Ðå`A@/Ǔݗö,@/¾ì¿±[X@/Ǔݗö,@/¾ì¿±[X?‚á²Olºü?µ‡:úÎ ?‘\H{gX ?Uóú*˜?“”>C,4?’ëÆ[2?|öOÿÝ?’u¦ieõ–?ð{¥âdú?°‹Œ÷€?”8©èÈí?“‘k–šj?‚|׿pY?2ô]7?‹v'þ­X?ˆW„hðQ?‰©OO ¨?ˆ0&YÊEd@@@@@,@,?ð?ð?ð?ð?ð?ð¿KjÁ˜?LR§Ð?&Ñ‘hy?!Ã(¨|Ð@¡ÒYè#@£×ŒTëCÛ?F,F‹i?B ˆSÀ” ?“âzûrt?‹ž…-@Ÿg¾Z@Ø@ž–Z¬1@ž–q©ûçm@ž–Z¬1@ž–YA={@ž–Z¬1@ž–]/}:l@ž–Z¬1@ž–_µÝi@ž–Z¬1@ž–Z•(¿ù@ž–Z¬1@ž–Y–%Óð@ªÛ“÷ÎÙ@ªÛ›Ïeì@ªÛ“÷ÎÙ@ªÛ”ÁÍ’ä@ªÛ“÷ÎÙ@ªÛ”V:[@ªÛ“÷ÎÙ@ªÛ•Ps¾ë@ªÛ“÷ÎÙ@ªÛ–Çã2H@ªÛ“÷ÎÙ@ªÛ•¼@7Ì]cˆe”@7ưj¤~@1‡ÎÙ‡+@1†½À$0@0Z~ùÛ"Ñ@0YpC aí@0kxFÜ^@0iyV )x@0kxFÜ^@0h*ôÎ}@0kxFÜ^@0h(¥ñu?Ö?ŠÓ'P?Üaas?‘Ûø{½?Œ}Ñ +½‰ ?ÿÃhý?Ñskîy¤?Ž\Õl6Ò?’ 71ùR +?€Z5kÙÈ?p™[!¹B?ÑI}/‘@?•VãÒÁ?´LuÛ³?ŒÉ¯›nR\?‚{zÞ&U?ƒ!™ä!È?†¨5 Y?†Ê°Ìæ@@"@ @$@2@2?ð?ð?ð?ð?ð?ð¿b$>ü.¿TdŒâ?AûÿõAJ“?>,ZÌÊaé@ž–_€Umy@ªÛ–ì²ó”?X÷q‘9ò?\¡²Ô­¦è?¯7–!DŸ?¸ü‹ä@Ÿn+ÐïM@Ù@ U7ÎÙ‡@ U8bMÒ@ U7ÎÙ‡@ U8ÄVº@ U7ÎÙ‡@ U8‚Ü;Ñ@ U7ÎÙ‡@ U8žïñ@ U7ÎÙ‡@ U7Xâf@ U7ÎÙ‡@ U7*o@¬í¬1@¬í^5?}@¬í¬1@¬í;X÷,@¬í¬1@¬íåÂ*@¬í¬1@¬ífµÀp@¬í¬1@¬íFŠSs@¬í¬1@¬ívJÐ@1}:’£@1}:’£@.Û"Ðå`@.óUzùz@.]ó¶E¡Ë@.]³+@-u¨Xy=Ú@-u’¼–A@-u¨Xy=Ú@-u÷¢'“¦@-u¨Xy=Ú@-uÉã½?É`úBcM?Ì}Ãûp[?‘-5AÔ˜ß?‹¸šŠš?èמ©?¸‹œ1Y?ÐbQë„›¦?’à,Ä2Þ?Œ÷Ïãk?3]Z@˜Û?Í£Mm/?SÜ»_¼j?€bMÕ]f?Œ®–v?‚€Û€¸Í?‚ê¬Ù:âk?†•7 b ?†ÏÅ1C@@*@(@$@5@9?ð?ð?ð?ð?ð?ð¿9ð|”>ôØo€?÷,_\ ? ©Íf‡Ê@ U7”00@¬ía$Ó]?"^ã2űe?óŠ6¢Á?@“À`ác,?0!kNQK@Ÿs¦K ù@Ú@¦D.—Oß@¦D'ÛsyÆ@¦D.—Oß@¦D#n.±Ä@¦D.—Oß@¦CðbMÒò@¦D.—Oß@¦CûdZ¬@¦D.—Oß@¦D–R½<@¦D.—Oß@¦Cÿ;dZ@rŠ=p£×@r}:ì +@rŠ=p£×@r¿¼@rŠ=p£×@rz)Çy§@rŠ=p£×@rÞi­BÄ@rŠ=p£×@rå`A‰7@rŠ=p£×@s+6z@7wâ‚@·€@7n¶TËb@5+¥ãS÷Ï@5"° Ä›¦@4â-V@4Ðuöý!ÿ@48DЩ*@4Ëûµt@48DЩ*@4*u%F @48DЩ*@4¸Që…?}x—™¤µÜÆ@-¤“t¼j@-{Ó·1#Ù@- 1&éy@-€ É® ­@,#¼ÓZ…ˆ@,/3ºvÊ@,#¼ÓZ…ˆ@+ú)Þˆxû@,#¼ÓZ…ˆ@,1ÍS߬@8 +Näy?*)ÖHé?›Ðê9ÐÙ?È? +˜0B?Ÿ¸ÆÍ­ú?–×UØgsj@82rê?’“pÔðU_?’©†g—´b?š>ÿ¡!¹u?¬Ç–&÷æï?œŒäQc@8L?Œî™%ÜÄ?„€1QcFe?„PÉûÍÀ0?‰]ÞÉ^Ï?‰ « Gg@$@$@$@9@3?ð?ð?ð?ð?ðøøøøøøøøøøøøÜ@§ÊeãS÷Ï@§Êm¯hLÖ@§ÊeãS÷Ï@§Êš[07@§ÊeãS÷Ï@§Êc¬ò2P@§ÊeãS÷Ï@§Ê[kÎê:@§ÊeãS÷Ï@§Ê[›„Ÿ@§ÊeãS÷Ï@§Ê[Ž8ì @•*•$Ý@•*–Mþ˜[@•*•$Ý@•*¨¬ñ®@•*•$Ý@•*¤_êË@•*•$Ý@•*˜G={@•*•$Ý@•*‹Éвn@•*•$Ý@•*ŽJ¯ùÑ@9|ÚQ@9_˜.Î@3Ï|í‘hr@3H+Étw@3Z~ùÛ"Ñ@3,±·aQ@2TmÅÖ8†@2FA¢–a@2TmÅÖ8†@2C]Ÿ±p¿@2TmÅÖ8†@2C9rJÖ³?š­˜]?’v÷KŸ?¬>žžŸÖÞ?]“:VE?”žìÝ}?–§ŽØìT?’t D5·±?¢q Aì«'?¤lôH?‘Qã)\üŽ?”¸r|Øæ2?›<þ–`Þ?·6;:?’öÝ^5ûÜ?•ü +V‚¾?‡¨ŠÍæ?‰àÑ:˜?‹½äøé<@@"@(@$@:@9?ð?ð?ð?ð?ð?ð¿l·¨ñ¿P^äÈ?[Ç ¼éÀ?I˜h#LÀ@§Ê^ãÞ_Ö@•*’¯Çn¬?u(‚h?f°×J0β?à¡ho­??íaßk´@Ÿl=”6¥Ÿ@Ý@¦ªÐbMÒò@¦ªÑÇOðœ@¦ªÐbMÒò@¦ªÒð• @¦ªÐbMÒò@¦ªÌ qo@¦ªÐbMÒò@¦ªÐ"·cÞ@¦ªÐbMÒò@¦ªË@ÙGt@¦ªÐbMÒò@¦ªÌÚÆˆz@•ã@ƒn˜@•ã?EjGw@•ã@ƒn˜@•ã@'—‡@•ã@ƒn˜@•ã<øRø¬@•ã@ƒn˜@•ã6ó âú@•ã@ƒn˜@•ã1Èñe@•ã@ƒn˜@•ã:Vßò=@6쿱[X@6 ¬Èß4@2?|í‘h@2="§ž*@0¶§ï²-@0µ´)¶@0…œàu÷@05ÉÍúå@0…œàu÷@0Ë«GL@0…œàu÷@0¹^4?ƒÔo"ë–?ðÓ¡ãö€?‘)úô}>?ŒŸ?B6?’½u=Ý?‘B&ñYè?¨Sp*?“hã ø+ð?€vnþ×A?» tEÙz?“Nô €s?ÝZ!}ˆ?‚ãTʼ =? ç£Þµ?‚oÁ0_+*?„°ìQ?‡©*ô¿®?ˆz´”w®@@*@"@(@4@8?ð?ð?ð?ð?ð?ð¿RÑ(4¿N¯[ëT?8çBú ?@í;ݾ@¦ªÏC²Ö(@•ã:L‘Wà?W¡úcmën?aŸÇh€M?¶ÚT©=yr?Ép´Ø3|@ŸhX(<@Þ@žz}ó¶E¢Á.„€@žz}ó¶E¢@žzcˆe•@žz}ó¶E¢@žz€@žz}ó¶E¢@žz“&Á¿@žz}ó¶E¢@žzd9ÈKî@žz}ó¶E¢@žz~bb¦@­Å#S÷ÎÙÁ.„€@­Å#S÷ÎÙ@­ÅkP°ó@­Å#S÷ÎÙ@­Å(Œç¯@­Å#S÷ÎÙ@­ÅØ­«Ÿ@­Å#S÷ÎÙ@­Ä­7c3‚@­Å#S÷ÎÙ@­ÅVBD:@9eöý!ÿ.Á.„>¤µÜÆ@4=‘hr° @46»˜Çâ‚@3U`A‰7L@3L‹C•@2Ì¿±[W?@2Å '»0@2Ì¿±[W?@3Ÿ6áL@2Ì¿±[W?@2Ç’0¢d@8J¨?«W@!âÏ?‘RsÈW?”–¹rÕ‰?”ª•âP·?‘™t¦£š +@8J¨?“«ö„@×®?–¬HðºDŸ?”Ò}“® ?“ªÇŠÈ@Í?‘«,3vF@8p÷?› ’„ÚAI?–Ϥ?œC‰þx%?’uÛà ?Š$rM´£y@@@@.@,?ð?ð?ð?ð?ðøøøøøøøøøøøøß@¡el1&é@¡e|(õÂ@¡el1&é@¡eP‰ 'R@¡el1&é@¡eÑN;Í@¡el1&é@¡eSÐ|„¶@¡el1&é@¡e„Щ*@¡el1&é@¡evz—@¬¿MOß;d@¬¿49Xb@¬¿MOß;d@¬¿!-w@¬¿MOß;d@¬¿YõY³Ð@¬¿MOß;d@¬¿:Ÿ¾vÉ@¬¿MOß;d@¬¿³©*0U@¬¿MOß;d@¬¾Ç_oÒ @9D¯O „M@9X­«ŸUœ@5Yº^5?}@51&éxÔþ@4d¼j~ùÛ@4"@·€4n@3¿ò䎊r@3:’£S@3¿ò䎊r@3¡œàuöý@3¿ò䎊r@3¦»˜Çâ‚?°¼x‡Ç…Ä?˜?"‡6$?¸Þ)ÒÆ?°ÅaMzÚ?±$—Ú@â?±›»»Ž?´ Z è´ß?®*JŠË?Çc«ó¶?¸š‚ÄöËÙ?°1üTn]?ºsà_Nùr?œÁXÙðÿ?¥C‡y¿^?¢tñÓu?£èŠFÊ?ª¹0ÇåÄ?¨Ðaî#¾ÿ@@@@@,@&?ð?ð?ð?ð?ð?ð?<åû¶Ð?|/Å}Ñ?}7‹õö"? ŠN"911@¡er—v‹ @¬¿X›«eª?šb Æ/G?½qwHŒ ?óx‡eç³@0C—¯X='@Ÿlz@à@£q Iº^@£qÊ~ùÛ#@£q Iº^Á.„€@£q Iº^Á.„€@£q Iº^Á.„€@£q Iº^Á.„€@£q Iº^Á.„€@¬P=ó¶E¢@¬P1hr° @¬P=ó¶E¢Á.„€@¬P=ó¶E¢Á.„€@¬P=ó¶E¢Á.„€@¬P=ó¶E¢Á.„€@¬P=ó¶E¢Á.„€@8įO „M@8Ú™0¾ í@4sS÷ÎÙÁ.„M‰ûçm@3Æ“t¼Á.„QnÙ‡@3O „MÁ.„NÜC,¥@3O „MÁ.„NÜC,¥@3O „MÁ.„NÜC,¥?¶Ú·Œò¸›@8#˜@8¾:@8 >+@8Iç@8Ù?©W»¥ÿ$B@8Î÷@8i§@8Å@8S@8û—?ÆSÌ~6d)@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøá@«gõÂ\)@«gÛ"Ðå`@«gõÂ\)@«gïv_Ø®@«gõÂ\)@«g·´¢3œ@«gõÂ\)@«gçâ‚@¸@«gõÂ\)@«géDg8@«gõÂ\)@«géùrG@žm‘hr°@žs3333@žm‘hr°@ž.Ëûµ@žm‘hr°@žJÀƒn@žm‘hr°@žc¢œwš@žm‘hr°@ž…ðoiE@žm‘hr°@ž‘ÑN;Í@4Û¹Œ~($@4Êxl"h +@1Ùº^5?}@1·¯·é@1`A‰7L@0í¥œàv@0G ù kº@03&Á½¦@0G ù kº@00bMÒñª@0G ù kº@02&€IR?ˆÿÀ)T¿Æ?”êÎlŒy?¤™9tø3C?“²¡Ž+?“”>C,4?–yí+PYu?š•§q!U?šÒ’](¼+?¹íþ™Æôì? j—SV·?˜hüÁ¯Y?¢µu*ó,?±hU¬óø?”~ªd•?”l´~ðJ?„XïWÉò~?‡Õ˜]–GÄ? ²jÖ]É@@@@@*@,?ð?ð?ð?ð?ð?ð?jМ$¢?fpÛ‚X?FiSÁs>?bgÉõnW@«gäÁ…@ž{‰mtÌ?g^¿Ëœ?€Ì6†Êrl?Ê Èÿ€™?å_¹æ cø@Ÿjïq¥½Å@â@¡Vp Ä›¦@¡Vs÷ÎÙ@¡Vp Ä›¦@¡Vuéá°Š@¡Vp Ä›¦@¡VuÂ\*@¡Vp Ä›¦@¡Vr×sû@¡Vp Ä›¦@¡Vròä@¡Vp Ä›¦@¡VqÄ2ÊW@©P« Iº@©Pª~ùÛ#@©P« Iº@©P¨šu%@©P« Iº@©Pª0U2a@©P« Iº@©Pª=p£×@©P« Iº@©PªqÞi­@©P« Iº@©P«¬q ´@6Âò䎊@6ÀØDШ@2Ï|í‘hr@2Ì‘ÑN;Í@2.ùÛ"Ðæ@2+C•%@1–ý!ÿ.I@1•oi@1–ý!ÿ.I@1–âëC-@1–ý!ÿ.I@1—8}¿H?žˆ2}?ÿ﯒?’ +N»A3?{¾“úy6?’ðä¼_?’4¶ó?|¬Çëý ?’&u÷E»@?’üüšë‚J?‘.}áµ$?’íßš?‘µEÂBÕl?Š:t†?ލf†)"?‡z"2Úù)?„†YÊ’È?‰ö±«tï?Šì¾ ;8´@@@@@,@*?ð?ð?ð?ð?ð?ð¿=o§e€?YÇã€>ì‚°M‘êÎ?/Ô Ø¹@¡Vrû4@©Pª´£®? …-G—ó?@—wÕl +?!,Y=M[?‡ÐÄÅ¥”Ð@Ÿg7H~Í@ã@®¤œ(õÂ@®¤©xÔýó@®¤œ(õÂ@®¤¡×Ûôˆ@®¤œ(õÂ@®¤¿HÌ@®¤œ(õÂ@®¤ž\‘ÑM@®¤œ(õÂ@®¤›²þÅm@®¤œ(õÂ@®¤Žæ1ø¡@¨÷…¸Qì@¨÷ƒn—@¨÷…¸Qì@¨÷‚œwšk@¨÷…¸Qì@¨÷$Ý/@¨÷…¸Qì@¨÷ƒn.±Ã@¨÷…¸Qì@¨÷’¼£@¨÷…¸Qì@¨÷n—Oß@8%öý!ÿ.@8$ohÜ@3©‡+ @3ªáG®{@2ûƧï²@2ü]cˆe•@2‚‚@·€5@2‚‚@·€4@2‚‚@·€5@2yb¶®~@2‚‚@·€5@2ŠCþ\‘Ñ?¢Æ÷Xê†?”žP1²"?“ óÎéð\?ö€(tUo?ž€—zcŠR?ÊþtûÙµ?}Ñ¿ž,?•ÞèI1Æ@?•ÇØ¼áêZ?–ª'G_ßJ?¢ÒUöˆ?¯/Õ’¬Œ»?ŒR‹w#z?‘žˆ2}?‹’Ú[ßõ?Ž‚1(w?‘p&Æ ç–?§ÞF-™ü@@@@@,@*?ð?ð?ð?ð?ð?ð¿t’¹“€?BÔX?T7aØÚ?aàs„aYE@®¤žŒCP(@¨÷„†iL~?l6Sl´ì£?„îe w!°?‚;£gN?ð`‚NZ³+@Ÿi㹎Ë\@ä@£˜å`A‰Á.„€@£˜å`A‰@£˜ í(Œç@£˜å`A‰@£˜;çl‹D@£˜å`A‰@£—ò¼£@£˜å`A‰@£—í\ú¬Ú@£˜å`A‰@£—ò×sü@¡š#S÷ÎÙÁ.„€@¡š#S÷ÎÙ@¡šb¶®}V@¡š#S÷ÎÙ@¡šaä÷eþ@¡š#S÷ÎÙ@¡™÷süP@¡š#S÷ÎÙ@¡šNp:û@¡š#S÷ÎÙ@¡šcÉîËú@8›¹Œ~($Á.„>¤µÜÆ@3Ô›¥ãSø@3k¥ãS÷Ï@2V”@2WÎÙ‡+@2=cˆe”°@1ÝOß;dZ@2=cˆe”°@1ì1&éy@2=cˆe”°@2ÞÒˆÎq@8J¨?´¼6¶¦Êü?½…\­½Æ.?¬&¾L=§‰?Ó[XõÿLj?ÉÆ0ý2Û¼@8J¨?¨áókðI}?ÂQaQÞš·?° ¡ðÒ?Àüàfî÷Þ?ÅÊ-a)—@8p÷?±Ù,å,ÀÓ? Ú }P!?°Ôù· +K?­ùO²Þ‚Ù?Ó"Úþöñõ@@@@,@*?ð?ð?ð?ð?ðøøøøøøøøøøøøå@ž¢éxÔýô@ž¢éxÔýô@ž¢éxÔýôÁ.„€@ž¢éxÔýôÁ.„€@ž¢éxÔýôÁ.„€@ž¢éxÔýôÁ.„€@ž¢éxÔýôÁ.„€@›ÏB\(ö@›ÏA‰7KÇ@›ÏB\(öÁ.„€@›ÏB\(öÁ.„€@›ÏB\(öÁ.„€@›ÏB\(öÁ.„€@›ÏB\(öÁ.„€@1žHè§æ@1蛋5à@0\Iº^5@Á.„M‰ûçm@0>V“uÁ.„QnÙ‡@/á-w1ÅÁ.„NÜC,¥@/á-w1ÅÁ.„NÜC,¥@/á-w1ÅÁ.„NÜC,¥?É^ž(“Ç­@8#˜@8¾:@8 >+@8Iç@8Ù?ÐbMØ/×^@8Î÷@8i§@8Å@8S@8û—?€ngH2É9@8 * @8p÷@8¶@8 Ø@8 Ø@ ?ðøøøøøøøøøøøøæ@¯ +Àƒo@¯›¥ãS@¯ +Àƒo@¯ +™0¾@¯ +Àƒo@¯ +™0¾@¯ +Àƒo@¯ÿ—$t@¯ +Àƒo@¯§æ›@¯ +Àƒo@¯{J#:@­$ÐbMÒò@­$Òn—P@­$ÐbMÒò@­$ÐbMÒò@­$ÐbMÒò@­$×Oß<@­$ÐbMÒò@­$ÌÌÌÌÍ@­$ÐbMÒò@­$Øâe-@­$ÐbMÒò@­$ß.Hè¦@9>«6z@8û’:)Çz@4J^5?|í@4Iè>BZî@3®ùÛ"Ðå@3¬¾ß¤@@2î_oÒ @2èQë…¸@2î_oÒ @2ê)Çy¦µ@2î_oÒ @2èK]Ìcò?²„× ì²x?˜¶ÚæÁ€?–/¸Í”p?’\GyÆ©?”Å¥ÒB–W?”º²¶;?ˆÿÀ)T¿Æ?—{UƒO?‘¡Kd·´+?“§ÞÐÞû?›r=Þw‘‰?›¶x•7fÙ?ÀKøù°ê?’ *ïsr?ˆT“Ÿÿ?R è®ãî?ŒÙ”!Çx‡?‹ú èNÆö@@@@@*@&?ð?ð?ð?ð?ð?ð¿pBê¸Ë?X,¤8?cra@ãÆ?\”Äl¬U@¯ ®-}z@­$ÕÓÚà?uµtê³?£öàGà?ÚZ}%n¯?ð«6û›œ@Ÿo—¼:ª¦@ç@Ÿõ8Që…@Ÿõ8Që…@Ÿõ8Që…@Ÿõ9¶ê\h@Ÿõ8Që…@Ÿõ9YŒ¢ @Ÿõ8Që…@Ÿõ;„ö³s@Ÿõ8Që…@Ÿõ6¶- Þ@Ÿõ8Që…@Ÿõ8eC°ü@­8gï²-@­8gï²-@­8gï²-@­8häú¼@­8gï²-@­8j&_h§@­8gï²-@­8i-^˜@­8gï²-@­8i—Í]@­8gï²-@­8ky¶“Ú@2#g ù l@2#g ù l@.8“t¼j@.7¿¢’×E@.*Àƒn˜@.&&V39@-¨Û‹¬q @-£¼ÓZ…ˆ@-¨Û‹¬q @-¤„Œµòð@-¨Û‹¬q @-¤X‘éú^?É^ž6õP?Ëi<õ?‘O¬±G Ñ?Œúoù?ÿÃhý?Þ³EÆ49?ÐbMÝn½?’ ÌÐvLª?à÷ "ù†?‡Õ$µãœ?íˆ »‡?~ð–šdÃ?€b™Qž?Œ³ºžˆ®>?‚ƒ}µà.™?‚ój1s=?†–Ðé(Y÷?† X^)@@@(@*@*@5@8?ð?ð?ð?ð?ð?ð¿IP- ?O^¦?@WÒõ¥Ê?4˜Éâ@Ÿõ9)6fè@­8iú5”K?Odħ.£?Bþ2ôˆ¾‡?—Ä$¶_›D?~ÓÂßAF@Ÿs Ò™O6@è@¦¾õÂ\)Á.„€@¦¾õÂ\)@¦¾ô/õ¼@¦¾õÂ\)@¦¾ãìÊ÷@¦¾õÂ\)@¦¾æfl´Ì@¦¾õÂ\)@¦¾äh³@J@¦¾õÂ\)@¦¾ñ›/ì}@“áG®{Á.„€@“áG®{@“¡`\J @“áG®{@“$q‘y@“áG®{@“Ø*À%€@“áG®{@“¹š@“áG®{@“ǯe H@7òÃÉîËûÁ.„>¤µÜÆ@3¦‡+ J@3±¢ ðM@3€å`A‰7@3о'|Q5@2Œ¿±[W?@2”8þmR@2Œ¿±[W?@2ŒCGVÌ@2Œ¿±[W?@2ƒÒ}@ -@8J¨?”*†¯û}v?—0ŽÏxO?‹¦ >N?˜AÓ æñ?—H¿Fé™@8J¨?¨¸ç¢ÿ¾?¬¬u† P;?•¼ÏK–È•?—#PG?’^Y:·p@8p÷?Ž˜Ýµ#U?ƒÄ¡Íœ¨+?Šˆ^×›',?Œ—ðøÆ8V?Ž<ûŽU““@"@ @"@4@*?ð?ð?ð?ð?ðøøøøøøøøøøøøé@¡2“t¼j@¡2Ôýó¶@¡2“t¼j@¡2õY³Ð@¡2“t¼j@¡2ï4Ö¡@¡2“t¼j@¡2ºÇË@¡2“t¼j@¡2öý!ÿ@¡2“t¼j@¡2öý!ÿ@¡‚å`A‰@¡‚‘&éxÕ@¡‚å`A‰@¡‚¾ í*@¡‚å`A‰@¡‚–»˜È@¡‚å`A‰@¡‚–»˜È@¡‚å`A‰@¡‚°ò{³@¡‚å`A‰@¡‚°ò{³@1-¥œàv@1-žƒä%¯@,ùÛ"Ðå@,Åm\ú¬@,*Àƒn˜@,*dÂø7µ@+åÉä@+HË’;@+åÉä@+!-w1@+åÉä@+!-w1?É_\p)Ï?Òç{íj?‘$Cê¡@í?‹ÑqÔ@vÿ?ÿ £‰¸9?Å{¿Ž<¹?ÐbV‡,?’ ,øÕC©?¹º–Èj?K·‘d]?ÝIMÎ?]#ÍìO¤?€b¡´ñ@?Œ¯þuõí?‚s@ˆaÛ?‚æÊ¬vã?†–f_ÔŠŠ?†l&þ@@@@@,@,?ð?ð?ð?ð?ð?ð¿TبI­?E½?9Û‰ï³>Ã>ø|À§O@¡2©Ù@¡‚¦îÛ?HßÅ#,?)µ*FT?Ž'Û‚™ž?Zªü"&@Ÿs ”¢ü@ê@ Ø33333@ Ø3÷ÎÙ@ Ø33333Á.„€@ Ø33333Á.„€@ Ø33333Á.„€@ Ø33333Á.„€@ Ø33333Á.„€@¨@ÌIº^5@¨@Ñhr°!@¨@ÌIº^5Á.„€@¨@ÌIº^5Á.„€@¨@ÌIº^5Á.„€@¨@ÌIº^5Á.„€@¨@ÌIº^5Á.„€@7eöý!ÿ.@7gÕmët@3¸r° ÄœÁ.„M‰ûçm@3 ²-VÁ.„QnÙ‡@2èè§æ›Á.„NÜC,¥@2èè§æ›Á.„NÜC,¥@2èè§æ›Á.„NÜC,¥?|¬h2:“@8#˜@8¾:@8 >+@8Iç@8Ù?ƒ6ð]g™ä@8Î÷@8i§@8Å@8S@8û—?ƒ„Zgr´@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøë@¡|í‘hs@¡’L¶ª…@¡|í‘hs@¡~Ð]ÜÔ@¡|í‘hs@¡Ìvù@¡|í‘hs@¡‰)·jÕ@¡|í‘hs@¡‰Z¶t@¡|í‘hs@¡ŽT'-K@¢¡t¼j@¢¡ m±oE@¢¡t¼j@¢¡6óRw@¢¡t¼j@¢¡!NAaw@¢¡t¼j@¢¡g@¢¡t¼j@¢¡˜”@¢¡t¼j@¢¡¿©¶@7ð4mÅÖ8@7ïRþR@3—+ Iº@3‰h k@2¹7KƧð@2µÈ+Ä@2zÔ,<ží@2}0ù—Q@2zÔ,<ží@2}ÜÈ›@2zÔ,<ží@2~RQ44©?–…­à Ø—?’ó̇+ø?’ß ¶Tª÷?Ž×îoïcÃ?’†YB­Ú2?ó”—B?—Õ˜ b2Û?£åº~Ï?—}T9IÐÉ?’‘4Kv–x?“|;‡õ*?PO W”Ó?‡Ì Â93¿?“mçŒ-Ì?‘|6}Š>?„iÁY^#¿?”2êTå?²>ô!@@&@$@"@.@1?ð?ð?ð?ð?ð?ð¿H‰n?bÚ¡íc?Wã-‡?V8rÅNÀ@¡Œ#?Óó@¢¡2‡ ¸?rqFûnš?rdFo7«?á 0@½Š¦?ÝS=6`p@ŸmýûÌ¥Ú@ì@¨%Ÿ;dZ@¨%¢ Iº]@¨%Ÿ;dZÁ.„€@¨%Ÿ;dZÁ.„€@¨%Ÿ;dZÁ.„€@¨%Ÿ;dZ@¨%“©*0V@¨%Ÿ;dZ@¨%˜ -à@¨ôº^5?}@¨ô»dZ¬@¨ôº^5?}Á.„€@¨ôº^5?}Á.„€@¨ôº^5?}Á.„€@¨ôº^5?}@¨ô¾¸Që…@¨ôº^5?}@¨ô»/ìV×@7 ]cˆe”@7 …¸Qì@3é‡+ Á.„M‰ûçm@2¾V“uÁ.„QnÙ‡@2‘Þi­BÄÁ.„NÜC,¥@2‘Þi­BÄ@2·€4mÆ@2‘Þi­BÄ@2·éùr?‡YÍ_@8#˜@8¾:@8 >+?“K–ºé…/?™¢tY+9>?ˆÿÀ)T¿Æ@8Î÷@8i§@8Å?’¯dL¶t?•÷f¸D¦?aäŽ +Ø@8 * @8p÷@8¶?屘Úã?‹¹ÇlŒ@@ @(?ð?ð?ðøøøøøøøøøøøøí@¢ª¬‹C•@¢©n—Oß@¢ª¬‹C•@¢ª±Ä2ÊX@¢ª¬‹C•@¢ª´ã¼Ó[@¢ª¬‹C•@¢ª®æ1ø¡@¢ª¬‹C•@¢ª®±Ä2Ê@¢ª¬‹C•@¢ª«jçÕg@¡‰7KÇ@¡lIº^5@¡‰7KÇ@¡ÞÒˆÏ@¡‰7KÇ@¡ù³Ð|…@¡‰7KÇ@¡IQ‚@¡‰7KÇ@¡ý²-V@¡‰7KÇ@¡û=ÈK@7Y*0U2b@6ÀA‰7KÇ@2€ Ä›¥ã@2{6z–@2 ²-V@2 Û"Ðå`@1._oÒ @1*…‡“ݘ@1._oÒ @1)õY³Ð}@1._oÒ @1*Ÿ¾vÈ´?ó÷ãnÐ(t?”•µ³S_?”ñ-a} ?Žëâÿ1¥?•³™»7…?’ŒZzˆZ”?ÙH²6m§Å?—{UƒO?”p¶I”“ž?èÊ\då?“‚Û£0Î¥?’÷fAzQa?ó˜êޤžR?u/®Xã?‹v'þ­X?‘ÄÚ êÛu?‡v>ª¸ ?‡´*žZ}Õ@@@@@*@(?ð?ð?ð?ð?ð?ð¿U”NÙ¿eQó÷?_-ÌÔ&_ê?_w=™eê"@¢ª­žúèw@¡þ"C(?nÉÃ|äg©?méšu[€?ѿȡ9«?Ïã…5Ta¡@ŸsB.ž @î@¡/å`A‰@¡/å`A‰@¡/å`A‰@¡/šÏem@¡/å`A‰@¡/ëC +@¡/å`A‰@¡/NÌý2@¡/å`A‰@¡/ñÄ@¡/å`A‰@¡/oQV@¤HŸ;dZ@¤HŸ;dZ@¤HŸ;dZ@¤H›hah@¤HŸ;dZ@¤H£Ó›g@¤HŸ;dZ@¤H¥):O7@¤HŸ;dZ@¤H£(Ê•V@¤HŸ;dZ@¤H›núÈž@4í¥œàv@4î_oÒ @1Š^5?|í@1†/Hxqœ@0ô“t¼j@0ê3¡ +z|@0œÚQÎ@0” Ó'Ð@0œÚQÎ@0‘;«äÙ@0œÚQÎ@0’Û("wk?|Ñb×¶@?Š›°i?‘rÞµò?Œ‚•zòÅ?• GœÏÐe?’׎L'y#?|¬h2:“?’¸FšDí?|™"x‹?5Ôá…?–x_OqÊ?•»ÐŽVæN?ƒ’íÕà­?DÆÞ£xÔ?‚þå9¦]±?„2Eó×ùò?Œ=`XªDÔ@3‚° Ä›¦@3fL/ƒ{J@3 "Ðå`B@2Ò×sü@2+xFÜ^@2° Ä›¦@2+xFÜ^@20L`}@2+xFÜ^@2Õ˜4>b?‡‡á´WÉ?´Í U?£Û/_ ·?´jŽ}ªý›?£ t4ÂgU?›ëj5¾?|¬Æ Væ?͹/vö\?Ñ.Ô†U?ÂjVß^ÈÂ?ž^J+¯ƒ‹?¦`‡Lk.î?‚ 8œ@Ž?¨! þý6?³ß"xþ?±]CÞ¶è?› Ž­È™©?©Ð½MrѶ@@@@@7@7?ð?ð?ð?ð?ð?ð¿k`¡j§?OjG¦P?b@v³@Q?aë“ÿ<ðâ@¥¦×lœØ²@—Ë ƒ?¹eHè?~n‘™2?ôòƒªàŒ?ð««ò¿†@ŸbŽ’èä~@ð@­™¼í‘hs@­™½/Ÿ¾@­™¼í‘hs@­™½<63@­™¼í‘hs@­™½²-V@­™¼í‘hs@­™À[À8@­™¼í‘hs@­™»‹¬q @­™¼í‘hs@­™½<64@¢î²-V@¢î²-V@¢î²-V@¢î²½<6@¢î²-V@¢î°å`A‰@¢î²-V@¢îµ*™2@¢î²-V@¢î²äŽŠr@¢î²-V@¢î³3333@4” xFÜ@4“Ð|„µÝ@2i‡+ @2h†YJôñ@1Ÿ²-V@1ŸAò×s@0𖻘Çã@0ïhÛ‹­@0𖻘Çã@0ð'RT`ª@0𖻘Çã@0ïß;dZ?|öOÿÝ?•ìspîî?‘ùé éµ??ŒÇQ´¤µÜÆ@4Ï|í‘hrÁ.„M‰ûçm@4`A‰7LÁ.„QnÙ‡@3Þ«6z‘Á.„NÜC,¥@3Þ«6z‘Á.„NÜC,¥@3Þ«6z‘Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøò@¯È0 Ä›¦@¯È/²-@¯È0 Ä›¦@¯È14êJ@¯È0 Ä›¦@¯È0 Ä›¦@¯È0 Ä›¦@¯È0oiDg@¯È0 Ä›¦@¯È.}Vlõ@¯È0 Ä›¦@¯È.p:û€@ªÛž¸Që…@ªÛŸ;dZ@ªÛž¸Që…@ªÛŸ—$tT@ªÛž¸Që…@ªÛŸ±[W?@ªÛž¸Që…@ªÛŸ;dZ@ªÛž¸Që…@ªÛžß¤?æ@ªÛž¸Që…@ªÛŸb¶®}@4²ÃÉîËû@4²a|ÚR@/Š~ùÛ"Ð@/Š ÞÑ@.rn—Oß@.që…¸R@,ÑÑN;Í6@,Ñ&éxÔÿ@,ÑÑN;Í6@,ÑN;Í5©@,ÑÑN;Í6@,Ñ4êJ?€‚ñêã ?ÖÈ ¼?‘1f_¨Ï÷?Œ<…ÓÆÝ?üEÙáõ{?¾ƒìÈÁ?}Ñ¿ž,?’¼  g¶?ŠA)Nîá?e”[|ú(?äú’M @Ÿkúû“‚ @õ@ ×Â\(ö@ ×Öi*w@ ×Â\(ö@ ××#[@ ×Â\(ö@ ×ØdÙ@ ×Â\(ö@ ×ÄœBýo@ ×Â\(ö@ ×·[]Ñ@ ×Â\(ö@ ×»XÖƒA@¥ö&ffff@¥ö0@ÜEý@¥ö&ffff@¥ö7ž @¥ö&ffff@¥ö5·U>@¥ö&ffff@¥ö'ÀgÁ@¥ö&ffff@¥ö*¢Ù@¥ö&ffff@¥ö3`q3¡@8ÿ–»˜È@8ü«P׌@3Ê^5?|í@3ÁûÊú@3A‰7KÇ@3 psÞ@2ÏO „M@2È9jÃÄ—@2ÏO „M@2¿`Ê,u@2ÏO „M@2Ä ç†7L?šž†%³Õh?ÏZu‰­D?•Ó)sÄó?’âÍÑß?“f94IÝ?’ùŠƒÌ`?¡ë MV{¶?’U:÷”?’—eíhd­?˜,=ãÌÎ?•Økîn™?”‰—Ðhã?‚©³:«?Ž%f+Ö?À…®£?v#wŒ)•?—_¦3+z?‘÷ßÏ åa@@@"@$@3@.?ð?ð?ð?ð?ð?ð¿x,;¥@?R¢Í5Z?[\-þ'+y?a+rf˦Ó@ ×ÁsowÁ@¥ö-Îå·?u¢ÝNwž?z('«†µ?â í¤Í?â5–»z¶à@ŸnÕ¼Ng®@ö@©h-V@©h,ÌÌÌÍ@©h-V@©h+¹Œ~)@©h-V@©h.—Oß@©h-V@©h0 Ä›¦@©h-V@©h/ìVÕÐ@©h-V@©h/·éù@ª©ÌÌÌÌÍ@ª©ÍOß;d@ª©ÌÌÌÌÍ@ª©ÎcŠ +@ª©ÌÌÌÌÍ@ª©Í«ŸU›@ª©ÌÌÌÌÍ@ª©Ð¸º@ª©ÌÌÌÌÍ@ª©Ï\(õÃ@ª©ÌÌÌÌÍ@ª©ÑÞi­C@5[¹Œ~($@5[¹Œ~($@2ý‘hr° @2ü¥zxl"@2•`A‰7L@2”÷eýŠÛ@1õµsê³h@1õÖ8†YK@1õµsê³h@1ôÂø7´¢@1õµsê³h@1óg ù l?|öOÿÝ?“âÜ[ê• ?“IK¹É?ŒR‹w#z?‘·Xâe?‘¦‘=W?}Ñ¿ž,?•íÌÖf?—+Áèlç?RLnj?‘އ Àí?‘C å;Ã?„ã¼ÓZ…‡?7'în‹K?ˆ†Ô‡º:?ƒ=rµE=?‡´*žZ}Õ?‰©OO ¨@@@@@"@$?ð?ð?ð?ð?ð?ð?HÑBF?Jqá8Ø?,ùóéÚW?'._üøÍ@©h.“¨k@ª©ÏËžf?L®…hdÀ,?Gf•p$)q?¥B—\g!?šÀÚAª“®@ŸfÊAƒš˜@÷@§ŸÉº^5?@§ŸÊZ]Á‹@§ŸÉº^5?@§ŸÏQ%Í7@§ŸÉº^5?@§ŸÏô‘nˆ@§ŸÉº^5?@§ŸÎ‚3 +@§ŸÉº^5?@§ŸÏ² Å@§ŸÉº^5?@§ŸËŠiÛ´@”Ù‡+@”ÎSï1@”Ù‡+@”Ƨ8Þd@”Ù‡+@”¸¬<:@”Ù‡+@”ɶaN‘@”Ù‡+@”àîã=@”Ù‡+@”ßøìŽ@6Ñ|ÚQ@6ÑWï¾vˆ@3#÷ÎÙ‡@3'‰Óm1x@2ƒt¼j~ú@2ˆm߸ ª@2Þi­BÄ@2ƒô‰»@2Þi­BÄ@2¡SÑ@2Þi­BÄ@2Íâ^{¬?‚Ú¡ËG7èFo˜?Q+6Í–¡;@§ŸÌk”œö@”ÔÙ§ÛÉ?bÖvÝ´j?qn9ƒ 'l?Ê/o¢¾?ã>GX@Ÿi2¸9#Ë@ø@¥ïàA‰7L@¥ïàÄ›¥ã@¥ïàA‰7L@¥ïàIQƒ@¥ïàA‰7L@¥ïàuöý"@¥ïàA‰7L@¥ïàuöý"@¥ïàA‰7L@¥ïá@N¥@¥ïàA‰7L@¥ïßåÉ@¨“k Iº@¨“k Iº@¨“k Iº@¨“lIº^5@¨“k Iº@¨“i^ž @¨“k Iº@¨“k6z‘@¨“k Iº@¨“jqÞi¬@¨“k Iº@¨“iá°‰ @4” xFÜ@4”“t¼j@0» Iº^@0º¦L/ƒ{@0,j~ùÛ#@0,¬1&ê@/Ǔݗö,@/ÆÂ&€J@/Ǔݗö,@/Á‰7Kƨ@/Ǔݗö,@/Á–R½<6?|¬Çëý ?ß‹’bÏ?‘=?ùKh?‹ÝÉ!ë#?’Z†Ažj?‘£‡9²þ?}Ñ¿ž,?’NÛˆV(?£½:…?ø,~[´?’aÔæ +/ ?Éöm/wBZ@2}:’£@2}ÈK]Ì@1° Ä›¦@14êJŒ@/íOß;dZ@/èÎp:û~@0Œ~($ @04êJŒ@0Œ~($ @0öý!ÿ.@0Œ~($ @0lô!.?É^žQ5P‚?Eˆ‡ðó‹?’>¯\¾¦?—^tø -a?‘oNÅ’+?“ d?ÐbMçê_x?’)£µ“[ +fuæ?”3jà’_?’‘Ç#·X?‘žˆ2}?’.8 +B?ƒ/‹ÍY}‘?þ,DöP?‡Ü̈- +?…”rsw?‡?®\Âä?‡ã ËÄž@@@@@$@*?ð?ð?ð?ð?ð?ð¿BWR¿N–‚ŠŒ?`ö`íA?7ªÑb—~@¥9í¹:x*@ž±’˜?;eH _C?Xø½€­Yb?zÛJ.IR?¹‘ù¢çñë@ŸhC‘ù9=@ý@¬5w@¬5î—Oß@¬5w@¬5ïÅo@¬5w@¬5ïìVÕÐ@¬5w@¬5ï·éù@¬5w@¬5î.±Ä4@¬5w@¬5îzáH@Ÿ­XbMÓ@Ÿ­Y™™™›@Ÿ­XbMÓ@Ÿ­W +=p¤@Ÿ­XbMÓ@Ÿ­WXâe@Ÿ­XbMÓ@Ÿ­WXâe@Ÿ­XbMÓ@Ÿ­WsüP@Ÿ­XbMÓ@Ÿ­Vð¹@1wâ‚@·€@1wKƧïž@+WKƧï@+WXâe,@* 1&éy@* 1&éz@(ÿåÉä@(ÿåÉå@(ÿåÉä@(ÿØ­«ŸW@(ÿåÉä@(ÿò䎊r?É^òÀXæN?Ï[äevÈ´8@®”7ÎÙ‡@®”6E¡ÊÀ@®”7ÎÙ‡@®”_oÓ@®”7ÎÙ‡@®”MBÃÉï@®”7ÎÙ‡@®”R{²þÄ@®”7ÎÙ‡@®”UfÏAò@­¿33333@­¿.—Oß@­¿33333@­¿1&éxÕ@­¿33333@­¿ /ƒ{J@­¿33333@­¿@4mÅÖ@­¿33333@­¿IDg8@­¿33333@­¿?Š Þ@7uS&Á¾@7t9XbN@4™º^5?}@4®V“t@4Ãt¼j~ú@4Üàuöý"@4\ÚQÎ@4xDЩ*@4\ÚQÎ@4ŒIº^5@@4\ÚQÎ@4Ž\‘ÑNp³ø?8Y¸ÀV?Èv0{Gt?v󒇾O@«^µ0WÞp@œw‹6öŠ?+®ëoð¿??)ýƒ­ë¥?Ráƒ%È{A?M´; ´Yç@ŸszÑl@@¤š‡+@¤šðbMÒñ@¤š‡+Á.„€@¤š‡+Á.„€@¤š‡+Á.„€@¤š‡+Á.„€@¤š‡+Á.„€@”Ô‡+ @”Ór-V@”Ô‡+ Á.„€@”Ô‡+ Á.„€@”Ô‡+ Á.„€@”Ô‡+ Á.„€@”Ô‡+ Á.„€@7„¯O „M@6õt-N@5uãS÷ÎÙÁ.„M‰ûçm@4ÒÐå`A‰Á.„QnÙ‡@4–ý!ÿ.IÁ.„NÜC,¥@4–ý!ÿ.IÁ.„NÜC,¥@4–ý!ÿ.IÁ.„NÜC,¥?"r+©©£@8#˜@8¾:@8 >+@8Iç@8Ù? Sñƒ´V-@8Î÷@8i§@8Å@8S@8û—?‚£Ë @8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@ªøQë…@ªõÂ\)@ªøQë…@ªñ;„g‘@ªøQë…@ª𸵜Ã@ªøQë…@ª÷tw[Â@ªøQë…@ªõore@ªøQë…@ªõ¹ èy@“}G®zá@“}A‰7KÇ@“}G®zá@“}VZ3(@“}G®zá@“}KÖ>à%@“}G®zá@“}aGAÅ @“}G®zá@“}O[A‚*@“}G®zá@“}O¼Ç0Ú@7Ì]cˆe”@7·Ï[X?@33S÷ÎÙ@33z{ªéª@2€å`A‰7@2êìn@@2:Ô,<ží@2=¸Ø†@2:Ô,<ží@2=‰ËÌéï@2:Ô,<ží@2=Õ$0šw?~ì“?ÕÒJ?Þ÷ð`¾?‘)õó Ä?Œ»ãÞ~?’O¾mI³?’á\o¯p?a÷nñ?’Y’A?‘“EE/J?-õI­¬?’Húüˆ¦?‘°KÊìCá?©˜­Þ†·f?†Y ‡Ü?ƒÝŠXì#?†»QíB?‰]€Ñ–ÜË?‰ Èt_‚á@@"@"@ @9@6?ð?ð?ð?ð?ð?ð?¤ÏiÀ?`ÐtT?0=ŠMöu?XûHýWq»@ªöKê@“}Lùå=?P.ÔÈ T?y*·bUiû?¨@äÂæxË?úåè¥QZ@Ÿg]£'@@£”¥ãSø@£”“u@£”¥ãSø@£”.æ1ø¡@£”¥ãSø@£”/Aò×@£”¥ãSø@£”+ÓÃa@£”¥ãSø@£”"ÃÉîÌ@£”¥ãSø@£”&ö”Ft@®1©ûçl‹@®1–‡+ @®1©ûçl‹@®1¸ºÇË@®1©ûçl‹@®1ºQÎ@®1©ûçl‹@®1«¹Œ~(@®1©ûçl‹@®1 ëíúD@®1©ûçl‹@®1™b¶¯@8p4mÅÖ8@8T¯O „M@5uãS÷ÎÙ@5~æ1ø @56§ï²-@5,žì¿±[@4æYJôðØ@5æšÔ,@4æYJôðØ@4éîËû¶@4æYJôðØ@4êu%F ?Ÿ‹‘+-/Ü?œ’1„<Ô ?¸Š³ùÓ³¢?¤3Òƒ°?³•Šä•ìS?®¿sY°(?•²»UbB2?¢n4Ñ?¶EÎ%:9?œ¾,#“t¿?®+Ò¥õÿ/?¤n]3mÍ?­$°*a„?¦.œ9؇8?®'ºwò?¡~l’VoŸ?©)Ũ‰(æ?£ªS@Gd·@@@@@(@(?ð?ð?ð?ð?ð?ð?qõëØ<€?c¡W_°?aˆ(Ëžý?hÞ\z‹1³@£”"+s@®1Ÿ)ëV“u@1=›Ñ{@0uµsê³h@0utÐn) +@0uµsê³h@0tZNò¢@0uµsê³h@0v5 Ùì–?}õ¬#„­?!Ô¡.?‘L߉N2;?‹À0ЀÐ?‘-'¬‘Ãi?òrCêÝ?|¬h2:“?’tìFLjù?‚‰í41ð’?ƒ%¹=|ÊV?‡%çqߌ?†àV·þzÇ@@$@ @@4@5?ð?ð?ð?ð?ð?ð¿JLøä?Qs*Μ?0EsÉ€?&Ž Åò@žóüÌ_J@¬¶((Ī?P!³÷Îx?GTÄV¥Ø?«nL¢;uÐ?› +z +ƧL@ŸfýŒ];?@@¢Î½p£× +Á.„€@¢Î½p£× +@¢ÎÛÍ5¨Y@¢Î½p£× +@¢Î³œ¾à@¢Î½p£× +@¢ÎàëíúD@¢Î½p£× +@¢Ï{¥ãSø@¢Î½p£× +@¢Ïô¯O „@¥¢÷ÎÙÁ.„€@¥¢÷ÎÙ@¥¡§l‹C–@¥¢÷ÎÙ@¥¡â©“ á@¥¢÷ÎÙ@¥¢¼@¥¢÷ÎÙ@¥¢ [À@¥¢÷ÎÙ@¥¢”Ö¡aæ@6Ñ|ÚQÁ.„>¤µÜÆ@4J^5?|í@42-V@3éÛ"Ðå`@3ÿ „M;@3p–»˜Çã@3gXâe,@3p–»˜Çã@3%öý!ÿ.@3p–»˜Çã@3-í(Œç@8J¨?¢æ# ßèÄ?ÁHå,Käó?¯©C“Ë—?ѶöÄ¥±¾?ÒüHŽæg@8J¨?£ëÇfÜ\?ËŠè`R*?¿=,Ü„oè?ÇޞEæ?Ç ŸPÅ7L@8p÷?ª‡ªfƒ‚?¼-t*zþË?¨+Î&*ô?«ªwô, ?°Í=üi@@@@*@(?ð?ð?ð?ð?ðøøøøøøøøøøøø@¤¢Qhr°!Á.„€@¤¢Qhr°!Á.„€@¤¢Qhr°!Á.„€@¤¢Qhr°!Á.„€@¤¢Qhr°!Á.„€@¤¢Qhr°!Á.„€@¨× +=p£×Á.„€@¨× +=p£×Á.„€@¨× +=p£×Á.„€@¨× +=p£×Á.„€@¨× +=p£×Á.„€@¨× +=p£×Á.„€@7Y*0U2bÁ.„>¤µÜÆ@3{ Iº^Á.„M‰ûçm@2—ï²-Á.„QnÙ‡@2”mÅÖ8†Á.„NÜC,¥@2”mÅÖ8†Á.„NÜC,¥@2”mÅÖ8†Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø@§ívÈ´9X@§íxQë… @§ívÈ´9X@§í}—ö+k@§ívÈ´9X@§íjÚ¹õZ@§ívÈ´9X@§íc× +=r@§ívÈ´9X@§ímÒñ©ü@§ívÈ´9X@§íkûµt@®k¸Qì@®kï²-@®k¸Qì@®kØDÐ@®k¸Qì@®ksüP@®k¸Qì@®k¡ÊÀ‚@®k¸Qì@®k:)Çz@®k¸Qì@®kû~‘@6>«6z@6F +¦L/@3½‘hr° @3¾ŠqÞi­@3‹"Ðå`B@3~Ñ·Y@3:Ô,<ží@33•$Þ@3:Ô,<ží@3..±Ä2Ë@3:Ô,<ží@3*¹õY³Ñ?€‚ñêã ?™ýÏËJ6|?›õåzI#…?‘“~mïÑW?›Ýr¶?¡AœÏŸ¦?1·†Æjñ?•N¬Ÿª`Ž?™ÐÈï£L?“3ÏÇF0?ž0 2Î\é?¡íÜ'Ln‹?ƒmÕ+&¬‰?˜ÔÞÑ—æJ?‡9Â@0wç?“-;dø'ˆ?‘\,‚†!?”8©èÈí@@@@@&@&?ð?ð?ð?ð?ð?ð¿q"@h?`35Ût?`V (‚?Z[˲O@§ípGS|’@®k +â(æÕ?|’ŒF¯?vtðÀø?øŽQH¤æÚ?ìqÛŠ|@Ÿc ‹”@ @§´çï²-@§´Ýó¶E¢@§´çï²-@§´¾Ov_Ù@§´çï²-@§´ÉÞÒ@§´çï²-@§´ÓMj@§´çï²-@§´¤?åÉ@§´çï²-@§´Ë Iº@§ ;çl‹D@§ 6È´9X@§ ;çl‹D@§ NV“@§ ;çl‹D@§ {quŽ"@§ ;çl‹D@§ Xï4Ö¡@§ ;çl‹D@§ +€@§ ;çl‹D@§ 9Î_o@7Î쿱[X@7ÇæšÔ,@4®5?|í‘@4œq ²•ê@4t¼j~ú@4@3ÔmÅÖ8†@3Â\(õÃ@3ÔmÅÖ8†@4DmÅÖ8†@3ÔmÅÖ8†@3ÁÑN;Í6?гá‡}?™öä+†>?­ ÒJ°?“ׂa†Üü?°ët#®ªV?±€Éó/U€?Ÿ‹‘+-/Ü?ž%Œ@&—?µ±¾ïï?”‘v»?À)™È.‡ ?±mݪƒÒ?¢t€FI?“&•Z÷˜#?©uÃÇ?žH®hú'$?°e¯ÜT‰Í?°úAäÈ&»@@@@@(@*?ð?ð?ð?ð?ð?ð¿v”j¾?p_‘ø?i>:³ç?Wú85â@§´Òß¹H3@§ JBŃ?†+L?¥?¤Ĺ+?õY`øò,‡@*?fþ%H}@ŸfFÅW + +@ +@¯ùPå`A‰@¯ùQ©ûçm@¯ùPå`A‰@¯ùR9dfp@¯ùPå`A‰@¯ùPò{²þ@¯ùPå`A‰@¯ùQ¹07Õ@¯ùPå`A‰@¯ùOK‚?@¯ùPå`A‰@¯ùOôg@—€Ÿ¾vÉ@—€¡ +¯¤@—€Ÿ¾vÉ@—€¥ãS÷@—€Ÿ¾vÉ@—€‰Àjà@—€Ÿ¾vÉ@—€Ì\@—€Ÿ¾vÉ@—€œëFí@—€Ÿ¾vÉ@—€f`”m@304mÅÖ8@30'RT`ª@0!hr° Ä@0![Ý?„ø@.¯ß;dZ@.¯ÚÍËÛé@-Öð¸»@-×deg„@-Öð¸»@-Ö»C²È@-Öð¸»@-ÖÁªeŸ›?}õ¬#„­?Úeqa†?‘ 5¾ãC?‹Î +F[?ôáa¦f?ÂKqœ?|¬Æ Væ?’úC™l?‚&šÙ£v?8f_w•³?ÕbÏzÚF?^p_‘Œ?‚t¢w{O?Œº“zí+‡?‚siH4á?‚ïñ-øB\@.ÛJ#9Àì@.ÛJ#9Àì@)`A‰7K@)zxl"h@' ƒn—@' IQ‚ª@'a-w1Å@'aG®zâ@'a-w1Å@'aG®zã@'a-w1Å@'a:’£T?É^žQ5P‚?Æ¿5›7÷?‘ŸÇSñ?‹²MÿAÿ8?êtÿKÑc?·t¤¢‚J?ÐbMçê_x?’¼  g¶?ˆ9²0?7枪y7?ÔÒ@úˆ‘?L "¾?€b¡´ñ@?Œ¬8 T£?‚oÁÆÜ§÷?‚ãaÎúvh?†‰Oú|q?†ˆ#.÷@@@@@&@(?ð?ð?ð?ð?ð?ð¿RÀ d?Bȹ ¬©^@­ïì„ë¢@®yƽ¸?Gl´´aé>×f’ˆü 6?Š÷£Œ‹4C>¨Vp¾ª@Ÿs nY:O@ @§,ݲ-V@§,Ý/Ÿ¾@§,ݲ-V@§,à6âë@§,ݲ-V@§,õ*™1@§,ݲ-V@§,àhÛ‹¬@§,ݲ-V@§,ÛW>«7@§,ݲ-V@§,ÜC,¥y@¥ê\¬1'@¥ê]²-V@¥ê\¬1'@¥êgË)_@¥ê\¬1'@¥êcS÷ÎØ@¥ê\¬1'@¥êmV@¥ê\¬1'@¥êa@N¥@¥ê\¬1'@¥ê\PHð@5IÎ_oÒ@5IrGE8ï@2\Iº^5?@2ZÔ,<žì@1¾V“u@1¹b¶®}@1¦YJôðØ@1¤¼j~ùÛ@1¦YJôðØ@1«)^ž@1¦YJôðØ@1ª6âëD?|¬Çëý ?4ë©$è‰?–•Kù̃æ?ŽwX/8?’o?P´À?“ d?€‚ñêã ?’`5žña?“1Ú©! ?œé®|oí?’íßš?•êÁØ|?ƒÆ×q„nï?þþoÀM?„›‹ÖO?…âC£½¾Ý?‹¹ÇlŒ?Ž .0åv@@@@@*@*?ð?ð?ð?ð?ð?ð¿ èö@?A”S=d?A¡Îïó¾?Uerh£OÀ@§,Ý\“\Û@¥ê_ZA@Ç?a?(åáJ³?uêÚ>@?Í´[_Ô?ñ'Þ.}\@Ÿf7!Aá9@ @¨Qô9Xb@¨Qè1&éy@¨Qô9Xb@¨QíÅÖ8†@¨Qô9Xb@¨Qñœàu÷@¨Qô9Xb@¨Qóg ù @¨Qô9Xb@¨QíjO@¨Qô9Xb@¨Qí:’¢@§âÈ1&éy@§âºŸ¾vÊ@§âÈ1&éy@§âÆö”Ft@§âÈ1&éy@§â¼àuöþ@§âÈ1&éy@§â½¥œà@§âÈ1&éy@§âµ$Ý@§âÈ1&éy@§âÆ€IR@8‰Î_oÒ@8‰ÞÑ·@4^Ù‡+@4aTÉ…ðo@4²-V@4'süPH@3G ù kº@3GškP°ó@3G ù kº@3DmÅÖ8†@3G ù kº@3EF +¦L0?©W»¥ÿ$B?“vuØcʲ?•XYäý?š›'©ÓZ¸?šPUó`ÿ?–"ûe”M?žŒÝÙ›P?”b?Etã?¤xÝH +Ê?š. Œžô?X2»æÕ$?˜]'ŠÎØY?žÇ™žsŠ?‘ÌAzÁý?•ýÿLîO?‰öuП—?”ø™¾?ž S è›@@@@@*@,?ð?ð?ð?ð?ð?ð¿/2ÞA?\%Ç<?Zü™ñÕΈ?b{ø}–b@¨Qî•1ψ@§â¾?ý{Ò?sDs×Y?œÛx¾l?Ì=žMýìd?åhÿò™s„@Ÿo0z¥×ú@@®ïLIº^5@®ïGl‹C–@®ïLIº^5@®ïLIº^5@®ïLIº^5@®ïJ=p£×@®ïLIº^5@®ïM«ŸUœ@®ïLIº^5@®ïJôðØE@®ïLIº^5@®ïL˜_ø@«2ï²-@«2ô¼j~ú@«2ï²-@«2ïùrGF@«2ï²-@«2íjN@«2ï²-@«2ð|„µÝ@«2ï²-@«2ïiDg9@«2ï²-@«2ïìVÕÐ@8ò䎊@7öâëC,@3°Ä›¥ãT@3±hr° Ä@2®ùÛ"Ðæ@2®¤¨ÁTÊ@1èè§æ›@1é=Ùb·@1èè§æ›@1éÞÑ·@1èè§æ›@1é7KƧð?§Q,Äš¤?“…­tµH?“UGNAÂÆ?ŽõÕJ?‘§›ßÉîj?’ïJ8Èž?‚á²Olºü?– ÕDÛuÝ?“$zü¾6?˜ò¶Ðú?’.<ù?‘:i€ÑìÂ?·ˆ]ø„?vùv“?‡Ü̈- +?„ªÎZ´?‡ø¢:›¸1?‡YÍ_@@@@@(@(?ð?ð?ð?ð?ð?ð?#q·@¿R¿S>è?LåN‚½Jt?.V,«ø@®ïLBÐm"@«2ðÒiâ1?al9'}?R9Y {y?¹•G4q?¢‹tˆ `Ø@Ÿo_SÖ!A@@¯ETýó¶F@¯EU$Ý@¯ETýó¶F@¯EUϪ͠@¯ETýó¶F@¯EU$Ý@¯ETýó¶F@¯EUϪ͞@¯ETýó¶F@¯ES÷ÎÙ@¯ETýó¶F@¯ES©*0U@ªbMÒò@ª&éxÕ@ªbMÒò@ª°ò{³@ªbMÒò@ª£× +=@ªbMÒò@ªÎ^@ªbMÒò@ªhr°!@ªbMÒò@ªò{²ÿ@4(†YJôñ@4(e”¯O@0 Ä›¥ã@0-à r@/ÊÀƒn@/‰7Kƨ@.a-w1Å@.aohÛŒ@.a-w1Å@.aG®zâ@.a-w1Å@.aG®zâ?€‚ñêã ?Ì&ÏøHÃ?‘*"AaIÐ?Œݶ\ñr?‘Dj?È2I/?|öOÿÝ?’ ÃCÀ`ú?ŠA)Nîá?]bËn~?äú’«6z@4F÷åLy@0½‘hr° @0½pÕz 8@0H“t¼j@0H8%€‚%@/žžš@/Ÿ8ì½9¿@/žžš@/»)ŠÛ•@/žžš@/žz‚‰?}õ¬#„­?Çé'ÐŒ?‘3W¦?%¥?‹­B¦·‡‰?‘×±T©?ÊVÑñ?|¬h2:“?’Ÿ1(µ?ˆ—tÒy!?7íÞݸ?ê\C„)è?s¬cð§)?‚o«E—P}?Œ³ßl< ?‚x¢ú½û¯?‚ùÉÃk†?†¡“ÿ4?†ž6Íã@@@ @ @5@3?ð?ð?ð?ð?ð?ð¿ +fuæ?‘[RK¶ËE?˜ò¶Ðú?’˜£“µ~Ð?‘A_f;j?¡jÐÅx?Œèsq‡#?†úŒz_–È?ƒ ?ÿ½?‡ø¢:›¸1?‡v>ª¸ @@@@@*@*?ð?ð?ð?ð?ð?ð¿JÇ:jä¿]²zq?NDK·Rs?@:‹Ê~@§Û^›LŒà@£Tn¬‡©n?gÚáÒ?Vã‘á5ß?ËÐV7qF,?¥cÃx +e@Ÿn™G’çc@@§D49Xb@§D3÷ÎÙ@§D49Xb@§D4FsØ@§D49Xb@§D4ðØDÐ@§D49Xb@§D4SŽóM@§D49Xb@§D33333@§D49Xb@§D3×Ûõ@\…¸Qì@\…¸Qì@\…¸Qì@\ƒa@P@\…¸Qì@\‚&€I@\…¸Qì@\ƒn—@\…¸Qì@\‚Zîc @\…¸Qì@\„“t»@25S&Á¾@25Vlô!@/€A‰7KÆ@/oÒòä@/ ƒn—Ž@/Ÿ¼@.`ªdÂù@.!-w2@.`ªdÂù@.záG®@.`ªdÂù@.¢3œÀ?É^ýTïŽ?Ì&ÏøHÃ?‘`×›mÏ?‹ª½¨ª8v?‘Dj?¾ƒìÈÁ?ÐbMÝn½?’ ,øÕC©?·t¤¢‚J?3.Ylî?ß’ºèh!?e¾DQ„Q?€bMÔŠ»?Œµ3‰;šÏ?‚§W®ê ?‚ð'ã:ÂÝ?†¼Š˜L¥÷?†¼Š˜L¥÷@@@@@,@&?ð?ð?ð?ð?ð?ð¿:€å,?(Šƒ¿Ä?,¦ÄŒ»_?->{Ž!6@§D3À§Wÿ@\ƒ&œ‘â?;Ù¹VlB?;÷½ˆÅÊ?qï"øLQŽ?q~Íaú@Ÿsõ\9¬@@¤.s3333@¤.rñ©ûç@¤.s3333@¤.týó¶G@¤.s3333@¤.uÂ\)@¤.s3333@¤.s àÞÔ@¤.s3333@¤.rT`ªe@¤.s3333@¤.qÞi­D@¬…»çl‹D@¬…»¥ãSø@¬…»çl‹D@¬…¾\‘ÑO@¬…»çl‹D@¬…¾ í(@¬…»çl‹D@¬…»ô‡ü¹@¬…»çl‹D@¬…¼]cˆf@¬…»çl‹D@¬…¼žì¿±@4rÃÉîËû@4r䎊qÞ@0£÷ÎÙ‡@0£ê³g ù@0H“t¼j@0HºÇË)@/¨Û‹¬q @/©­BÃÉï@/¨Û‹¬q @/ª~ùÛ"Ñ@/¨Û‹¬q @/ª¦L/ƒ|?|öOÿÝ?ß‹’bÏ?‘e +!ßC?‹ó#ƒt£?ôê÷º»â?‘¦ µÚ?1·†Æjñ?’7Îf¬ps?«'Q™µ?‡@Cvì×?øóéM Ÿ?r¼Jsž?‚2Y0â³?ŒïQ¼º“ã?‚† SFò?ƒ^ ›¨¬a?†Ë¢L1Ù?†å·ÑfWà@@@@@(@,?ð?ð?ð?ð?ð?ð¿$íºÁ?(3á?/.Ü(x>ùj$ö ðc@¤.r¥â¬Ã@¬…¼ œp?6,s•toÓ?ðv˜3q?z%´˜ü?@]¿kåh$@Ÿg5™©à@@¬Þ¦ffff@¬Þ¡‰7KÈ@¬Þ¦ffff@¬Þ­BÃÉï@¬Þ¦ffff@¬Þ¥ýŠÚº@¬Þ¦ffff@¬Þ¥¼£n@¬Þ¦ffff@¬Þ¤¨ÁTÊ@¬Þ¦ffff@¬Þ§E8ï5@ª“¾ùÛ"Ñ@ª“ŸQì@ª“¾ùÛ"Ñ@ª“âœwš@ª“¾ùÛ"Ñ@ª“¾Ov_Ù@ª“¾ùÛ"Ñ@ª“À@ª“¾ùÛ"Ñ@ª“¾ùÛ"Ò@ª“¾ùÛ"Ñ@ª“¿|í‘h@7­¥œàv@7¯–»˜È@2W+ Iº@2W8}¿H@1lj~ùÛ#@1l¬1&é@0s&Á½¦@0ra|ÚR@0s&Á½¦@0rGE8ï5@0s&Á½¦@0r@·€4n?|öOÿÝ?™à*­Ÿš?’ +N»A3?‹¬àÌ’Ç?‘VšÐ^Ø?ß-tT?¡ÅꯨŠT?™Eo…Æ&?‘ŽütÅÒ(?-õI¸`K?‘77…Âç?ŒÙ¶êm¥?‡þ:ó-êÏ?ï7è-ÖR?ƒÚ@êA²?ƒžÂâk,?‡2[síç?‡ã ËÄž@@@@@(@"?ð?ð?ð?ð?ð?ð?RAåD¿Lø&Q?0ÄÕµg?>KMU9Ò@¬Þ¥!³›@ª“ÀD¨8·?TäÅ>È`?T¾‹Ç @?«–B WA?¢,;òô1@Ÿnvr.Ìk@@žŽ~ùÛ"Ñ@žŽ¼j~ùÛ@žŽ~ùÛ"Ñ@žŽéëyFØ@žŽ~ùÛ"Ñ@žŽ×O.+@žŽ~ùÛ"Ñ@ž&'A¥@žŽ~ùÛ"Ñ@žA:’£@žŽ~ùÛ"Ñ@ž’šó¦@¬ÇºáG®@¬Ç¬Iº^5@¬ÇºáG®@¬Ç›l“‘@¬ÇºáG®@¬ÇƒÝUûË@¬ÇºáG®@¬Ç€õx”@¬ÇºáG®@¬Æç ù l@¬ÇºáG®@¬Çt/=~=@8cg ù l@8[_Oå…ä@4 Iº^5@3¾ë8@3Wï²-@3*ˆŠ¥b@3^«6z‘@2Ë +8¬|@3^«6z‘@2â‚@·€5@3^«6z‘@2ÙjD)o‹?™¤Ï}IT?«BGt×ì?¤r¢8¼M?»!\|“?!?½i~ür0)? >£¢;f_?¨'Yb! ?½~6gäL‡?·‰ÛªéÇb?̳÷r`f­?Ëu¥{¤0®?’ôå¸ÿß ?–æSp?¡Œhb“óE?£{ÙÓâ¹­?­G[]=ÿ?¡ÛÈxŪÄ?†ËŽÎY½x@@@ @ @$@&?ð?ð?ð?ð?ð?ð?€zBoÀ¿†æå Õ€?a°—F/§/?tî¶‘€ƒâ@žŽîO–m¡@¬Ç‰)¾èf?†*ˆË¹ZÌ?•œö†ò‡?átÃ"z™Ð?þ Sß@ŸmGhÀ%J@@¤óùXbN@¤óùÛ"Ðå@¤óùXbN@¤óü£n/@¤óùXbN@¤óùõY³Ð@¤óùXbN@¤óùÛ"Ðå@¤óùXbN@¤óø7´¢4@¤óùXbN@¤óø}¿H@ ü A‰7L@ ü Ä›¥ã@ ü A‰7L@ ü¡G®{@ ü A‰7L@ ü ƒn˜@ ü A‰7L@ ü @ ü A‰7L@ ü¢e+Ô@ ü A‰7L@ ü¡½¥ž@3Î쿱[X@3Îæ1ø @0ør° Äœ@0÷§†Â&€@0’Ðå`A‰@0’GE8ï5@/Ǔݗö,@/ÆšÔ,<Ÿ@/Ǔݗö,@/ÈÁTÉ…ò@/Ǔݗö,@/Èð¹?}Ñ¿ž,?Úþþ³?‘`×›mÏ?‹¦ ŸYÔ?‘VšÐ^Ø?‘‚ÊŸû©?|¬Çëý ?’›ÈÖÝ?ö”iåó¨?1ð'7éÃ?‘c3¸cÜ(?äqÅYÈ?ƒ/‹ÍY}‘?ŒÖ +ÄȲ?‚Ì ÝŽ‚8?ƒžÂâk,?†Ü‘ °Ô?‡v>ª¸ @@@@@*@&?ð?ð?ð?ð?ð?ð¿4Õ«€€?'âÈñ ?!ö=ã"½K?'];ÇØŸ@¤óù?ËeÆ@ ü¡ôÔ?AÈ .Sö?GÁèÇ&zý?«›"}e?œ³ &k +@Ÿfð¾Óº@@¯¸Ôýó¶@¯º^5?}@¯¸Ôýó¶@¯¹Û"Ðä@¯¸Ôýó¶@¯¼64@¯¸Ôýó¶@¯ºáG®@¯¸Ôýó¶@¯¸ -à@¯¸Ôýó¶@¯·Oß;@¬MuÂ\)@¬M~¸Që…@¬MuÂ\)@¬MtÖ¡aå@¬MuÂ\)@¬Mqø .@¬MuÂ\)@¬MsŽóMj@¬MuÂ\)@¬Mv¡aä÷@¬MuÂ\)@¬MvR½<6@8šÔ,<Ÿ@8þÅm\û@1ë¥ãS÷Ï@1éÔ•*™@1Z~ùÛ"Ñ@1X“t¼j@0}cˆe”°@0{xFÜ^@0}cˆe”°@0{²þÅm]@0}cˆe”°@0|wškP±?Œs¤DÅÐ?×s·IÓ?‘Š©Nà¶?F‘q/b?‘ƒZ)Àˆ?‘ë´¤G?«_$Øï†?’{cü€øõ?§^ ÿo˜?’"Š6›Wz?‘<¸ö}½?›ªU3Îp? ânIð?ŒÛÏ·+?‚‘´…=Cb?„•ˆG’Z¾?‡ø¢:›¸1?‡v>ª¸ @@@@@&@&?ð?ð?ð?ð?ð?ð¿A•ˆà¿Ç|¯@?53N½î?Tþ1†¯ @@¯¹+—”@¬Mué^-x?U'–tec$?iÍy4ª+?¨óFRÁ?Ç»•ûÔ@Ÿp9Znfü@@©2ß¾vÈ´@©2ã•$@©2ß¾vÈ´@©2Ó÷ÎÙ@©2ß¾vÈ´@©2ŸQí@©2ß¾vÈ´@©2ÕÜÆ?@©2ß¾vÈ´@©2Ý¿HÌ@©2ß¾vÈ´@©2Ý—ö+k@¡:·KƧð@¡:ºŸ¾vÉ@¡:·KƧð@¡:/Ÿ¾@¡:·KƧð@¡:~«6z@¡:·KƧð@¡:Œ²•éâ@¡:·KƧð@¡:¦Á½¥@¡:·KƧð@¡:¢ø7´¢@6òÃÉîËû@6ð-à r@2° Ä›¦@2°¸ºÇ@2ˆ“t¼j@2nšu@1Þi­BÄ@1ohÜ@1Þi­BÄ@1 rGE8ð@1Þi­BÄ@1tSŽóN?‡YÍ_?‘€5{ºÎ#?£«ëS–_??”oý]Þ‡&?”k¸!¯eÕ?žy—™öW?‡YÍ_?œ¾ß¤?æ?±Wz>ð­œ?©1}çï ?¢i ú?¨,?e +,ùž?œÚ.ô §Æ?“~tÒZE?–½™C)?Ž«]O8èº?‡Õ˜]–GÄ?™¼òQh@@@@@@,@&?ð?ð?ð?ð?ð?ð¿_'øÝÆ¿vµ†&A€?W0l’_+6?d'Ê™Ol‡@©2Þ¯ýzë@¡:®…ÐP?uæ®n“ ?„æ“”?çóE['?ùtËص1@Ÿeú¸Y@@¢ÖŠ=p£×@¢ÖOß;d@¢ÖŠ=p£×@¢Ö”ýó¶F@¢ÖŠ=p£×@¢Ö¸ºÇ@¢ÖŠ=p£×@¢Ö“g ù @¢ÖŠ=p£×@¢Ö›ô‡ü¹@¢ÖŠ=p£×@¢Ö!ÿ.I@¢vŸQì@¢vÅãS÷Ï@¢vŸQì@¢v§®zá@¢vŸQì@¢v·§†Â'@¢vŸQì@¢vÆö”Ft@¢vŸQì@¢vÀ4mÅÖ@¢vŸQì@¢vÈè§ç@7Î쿱[X@7Õœàuö@3ã÷ÎÙ‡@3Ó¯·éù@36§ï²-@3)7KƧð@2ýcˆe”°@2èõÂ\)@2ýcˆe”°@2èr° Äœ@2ýcˆe”°@2ëçl‹C–?•²»UbB2?“à‘û?¥p»`£@i? „rÓ‚¼?¤¾¯d…8?¬Jà"ÃFr?¤I~Óy‘?—b…ªH=?ªýîm¿ùl?±?»ä?«Ÿ¸VÅc?«˜™1Á_A?ƒ¡É^&Ö?“=ä!ƒK?Цÿßë?¤?•YžŽAdå?žµ½èq¨®?ŸÂ°çR=@@@@@,@,?ð?ð?ð?ð?ð?ð?j}ÄLŸ¿ +ü´?A+U{³5?PÎ+'àc@¢Ö•H1^@¢vÅq˜1?aÁA²‡—?q, Yõÿê?÷’C=?«±ûƒÜ¾@Ÿihãi¥@@¬U Iº^@¬UÁG®{@¬U Iº^@¬U¡G®{@¬U Iº^@¬UbMÒñ@¬U Iº^@¬U­‘hr°@¬U Iº^@¬Ui 'RT@¬U Iº^@¬U–”Fs@¡.‰7KÇ@¡.ÊÀƒ@¡.‰7KÇ@¡.0Hð@¡.‰7KÇ@¡.M(Œç@¡.‰7KÇ@¡.LIº^5@¡.‰7KÇ@¡/ê³g¡@¡.‰7KÇ@¡/ðoiD@6­¥œàv@6¢3œ¾à@2@ Ä›¥ã@2+xFÜ]@1´“t¼j@1˜Û‹¬q @1TmÅÖ8†@1.Ov_Ø®@1TmÅÖ8†@1ã¼Ó[@1TmÅÖ8†@1u%F +¦?¥K¶{Oÿ?®–ú—ÿ>¦?® ¸¡¢¢?¥©Ù%°Ù\?À¯B¾´¶?¼ìc>Ý‘?óA[ØïF?´«z¤ ³Ð?¹Y8쪒•?¤G›LD3?ÐðûÿôÇÔ?ÆÏ›Ú¾2?‚ÂÌ]å?\{ÏïŽ?›®­,ë?’oÍb4U?“ )D)?–í +e˜›ï@@@@@(@(?ð?ð?ð?ð?ð?ð¿…p§è€?¡GW%€À?tj¸ '8ß?ÓY ô"@¬U±$"Ø9@¡.;¢ëÛ? +µ7ð?œÇÑþ½\ã?ãõm:Ô³ƒ@þµ‡ƒÛæ@Ÿcm.)‘:@@¯ßš¬1@¯ß–E¡ÊÁ@¯ßš¬1@¯ßšû~‘@¯ßš¬1@¯ß›"Ðå`@¯ßš¬1@¯ß›À6ã@¯ßš¬1@¯ß™rGE8@¯ßš¬1@¯ß˜ -à@®=ixÔýô@®=kC•@®=ixÔýô@®=iûçlŠ@®=ixÔýô@®=iQ‚©“@®=ixÔýô@®=i“ àÞ@®=ixÔýô@®=iã¼@®=ixÔýô@®=i“ àß@2šÔ,<Ÿ@2£S&@-kƧï²@-k¬q ²•@,rn—Oß@,rGE8ï5@,Ǔݗö,@,ÇË)^Ÿ@,Ǔݗö,@,Æö”Fs‚@,Ǔݗö,@,džÂ&€ž?Éq0ÀŠ$?Òç{íj?‘*"AaIÐ?‹ÑqÔ@vÿ?è<`.Ÿ?Ðýð^–Ö?Ðcš¾µE?’)£µ“[µDà? $gú‡v?„›‹ÖO?ŒÅÐ7N³¬?Š*ÊÔQãú?‹¹ÇlŒ@@@@@(@(?ð?ð?ð?ð?ð?ð?R`š„¿W~Ô$P?5£çÝ3@?2ÕÎII/ò@¤Ÿa!F?@¬Êøü«}§?TÕ>µ?R«¾©õv?´¡À&Úx?«ŽgA_@Ÿeá¿Om@@¡Iñ©ûçÁ.„€@¡Iñ©ûçÁ.„€@¡Iñ©ûçÁ.„€@¡Iñ©ûçÁ.„€@¡Iñ©ûçÁ.„€@¡Iñ©ûçÁ.„€@žÙüí‘hsÁ.„€@žÙüí‘hsÁ.„€@žÙüí‘hsÁ.„€@žÙüí‘hsÁ.„€@žÙüí‘hsÁ.„€@žÙüí‘hsÁ.„€@7úqÞi­CÁ.„>¤µÜÆ@4ý‘hr° Á.„M‰ûçm@5“t¼Á.„QnÙ‡@4Eœàu÷Á.„NÜC,¥@4Eœàu÷Á.„NÜC,¥@4Eœàu÷Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø @¬—ƒn—@¬—ƒn—@¬—ƒn—Á.„€@¬—ƒn—Á.„€@¬—ƒn—Á.„€@¬—ƒn—@¬—5Y³Ð}@¬—ƒn—@¬—ËàÞÒ‰@¬vÓt¼j@¬vÓt¼j@¬vÓt¼jÁ.„€@¬vÓt¼jÁ.„€@¬vÓt¼jÁ.„€@¬vÓt¼j@¬w7Xâe@¬vÓt¼j@¬vzÔ,<Ÿ@4?–»˜È@4?ß;dZ@2—+ IºÁ.„M‰ûçm@2F“t¼Á.„QnÙ‡@1µµsê³hÁ.„NÜC,¥@1µµsê³h@1æÁ½¥@1µµsê³h@1ƒ¯·éú?}Ñ¿ž,@8#˜@8¾:@8 >+?»B¬W2ì9?¸à”ͬc?|¬Çëý @8Î÷@8i§@8Å?¶"Ý “Sí?·KÃãùE~?‚|׿pY@8 * @8p÷@8¶?«I„t?°XÆl­‘i@@(@*?ð?ð?ðøøøøøøøøøøøø!@¢ˆxQë…Á.„€@¢ˆxQë…@¢ˆtFsØ@¢ˆxQë…@¢ˆxºÇË@¢ˆxQë…@¢ˆzáG®@¢ˆxQë…@¢ˆu$Ý@¢ˆxQë…@¢ˆtzáG®@¨ëD›¥ãTÁ.„€@¨ëD›¥ãT@¨ëDÂø7µ@¨ëD›¥ãT@¨ë@[À7@¨ëD›¥ãT@¨ëCÉîËû@¨ëD›¥ãT@¨ë<¬1'@¨ëD›¥ãT@¨ë>($ y@8^Hè§æÁ.„>¤µÜÆ@4@ Ä›¥ã@4=žƒä%®@3K"Ðå`B@3KŸU›=@2èè§æ›@2æÜ]cˆf@2èè§æ›@2é=Ùb·@2èè§æ›@2éŒ~($ @8J¨?Az;öè?”zùeߎ?º•÷ ?˜ +0˜ggk?–®UÒ.@8J¨?œÅ x[{?•Ó%Øc~?˜8wxšq?™x9ÿ¥l?–b+¡m°:@8p÷?‘ë…¸Qì?–EÑ~?>æ¿Îï?ˆT“Ÿÿ?¢—„¯l@@@@*@(?ð?ð?ð?ð?ðøøøøøøøøøøøø"@¦•%@¦0Ä»ùS@¦•%Á.„€@¦•%Á.„€@¦•%Á.„€@¦•%Á.„€@¦•%Á.„€@˜.záH@˜¦ì°9@˜.záHÁ.„€@˜.záHÁ.„€@˜.záHÁ.„€@˜.záHÁ.„€@˜.záHÁ.„€@8åöý!ÿ.@7ô?Ø\zt@6#÷ÎÙ‡Á.„M‰ûçm@5Àå`A‰7Á.„QnÙ‡@6!:’£SÁ.„NÜC,¥@6!:’£SÁ.„NÜC,¥@6!:’£SÁ.„NÜC,¥?Ç)HÞ@8#˜@8¾:@8 >+@8Iç@8Ù?Í„¡g_H@8Î÷@8i§@8Å@8S@8û—?ô€«ä\é@@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø#@ ƒ³3333@ ƒ¼64@ ƒ³3333@ ƒ°oiDh@ ƒ³3333@ ƒ¸1'ü@ ƒ³3333@ ƒ­( î@ ƒ³3333@ ƒ«™C@ ƒ³3333@ ƒ¥¸6-]@¤µhõÂ\@¤µQÑN;Í@¤µhõÂ\@¤µebKe@¤µhõÂ\@¤µhzÔ÷K@¤µhõÂ\@¤µeÀRü:@¤µhõÂ\@¤µoâÈzþ@¤µhõÂ\@¤µt’¬9¬@8Žì¿±[X@8‡4,Np´@3Ò Iº^5@3Öc%n¤?@3d¼j~ùÛ@3fµ '»@2‡ ù kº@2‹&@\@2‡ ù kº@2}ûNå@2‡ ù kº@2íé.f?|ï"<¶~~?£Ç lJ?”’âùFÁ:?¾à} Ê?”±9/<â£?•5¦«ÿ’\?…%!{‚A?“F¡ö€IÃ?”øõx²?‘/­ÿ6ïí?˜€i›"Å?˜>+W²?›8¢ìþ…^?¥…ü¬X¼?—*ñ*µ?ˆT[S+?Ž ºÕqø?¡,Éëw.@@"@(@ @:@5?ð?ð?ð?ð?ð?ð¿s/‡o€?}ے䮀??¯düª/?0N|ñk³H@ ƒ²ü@¤µa€ßúÇ?D7™‰˜ð@¡9“Î&2@¥âДÀø.?Oå°v«F?d-]]NÝ­?¨Íõ2 ´ñ?ÑWs‡D@Ÿf3ÏÎ@%@¦o!G®{@¦o!‰7KÈ@¦o!G®{@¦o&1ø @¦o!G®{@¦oDZ¬ @¦o!G®{@¦ož¸Që…@¦o!G®{@¦od¨ÁTÊ@¦o!G®{@¦oNV“@ªçÀ@ªçÀƒn™@ªçÀ@ªç§æšÔ@ªçÀ@ªç£n—@ªçÀ@ªçtã¼Ó\@ªçÀ@ªç…®æ1ù@ªçÀ@ªç‹…¸R@4T xFÜ@4SÝ—ö+k@1 Iº^5@1¼j~ùÛ@0lj~ùÛ#@0]w1Å@08DЩ*@0#¢œwš@08DЩ*@0dÂø7µ@08DЩ*@0µsê´?|öOÿÝ?£]fÊÿm?§ôÑw‹‡?Æ ¡'•½`?à t(’“?ÂÔ]GWÔ?}Ñ¿ž,?~y°޵?¢"š°j?¾È7ß™å´?ª¿Tiî©õ?±³þG·)g?‚uÞ@>N ?‚ñêã ?ˆ©CwBÅÉ?•Ïzl¼ãh?8Ï£§?§ÞF-™ü@@@@@,@*?ð?ð?ð?ð?ð?ð?{áÿŠ¿‹É^\À?x˜ª#ý?f2=9ÃC@¦o+þšÿ@ªç¸rá?…à~©?rö Ì(?ñ}²Œ¸EP?ã¢á{^œ@ŸZˆzyª‡@&@­>§ï²-@­>˜“t¼i@­>§ï²-@­>£¨ 5@­>§ï²-@­>¨±ï}V@­>§ï²-@­>¨ãtÚ3@­>§ï²-@­>§8a~@­>§ï²-@­>¦ãâ2@–žÅ¡ÊÀƒ@–žËZ¶ßÖ@–žÅ¡ÊÀƒ@–žÂÂÏT>@–žÅ¡ÊÀƒ@–žÈD5ñš@–žÅ¡ÊÀƒ@–žÄäsxø@–žÅ¡ÊÀƒ@–žÄ†QÇi@–žÅ¡ÊÀƒ@–žÀÚv¤d@6õS&Á¾@6ì~QùÜE@3.5?|í‘@3/=<$n @2PA‰7KÇ@2QaDÐWd@1‚‚@·€5@1ƒÄẄô@1‚‚@·€5@1†@>÷é@1‚‚@·€5@1„m¿ùË©?( ˜?C\Ïç-?‘§øDù¡w?Œ9CŒýµˆ?’×U5?‘?à´:(?|ò0p‰J?’RóEP?‘ˆÅn,…?hÿöžy¾?’¦ñ*_?ÅL Ø +?Šu„Ó7Gý?8ÍG§?‚äê/|?ƒ Ãgñê?ˆb’qÙ?‡n+.'5@@"@(@(@:@7?ð?ð?ð?ð?ð?ð?hËZì¿PÁ­ŽN?XÑ¡šù¿?C'3š8ã@­>£›DX/@–žÅìzaæ?uä µîÓµ?>µbðh ?í/‚nxtÏ?ƒ%OÍA@Ÿj~åV©S@'@¨TøÔýó¶@¨TøQë… @¨TøÔýó¶@¨Tø.KN²@¨TøÔýó¶@¨Tü©Kú@¨TøÔýó¶@¨Tû¤Yf@¨TøÔýó¶@¨TùÏR@¨TøÔýó¶@¨TùXg³K@˜çŽV“@˜ç¦`’S@˜çŽV“@˜ç‘uk\W@˜çŽV“@˜ç«Û Þ@˜çŽV“@˜çŽO$1@˜çŽV“@˜çŠÌ,˜x@˜çŽV“@˜ç e@7í¥œàv@7÷Òçº>@3E?|í‘h@3F§;(@2Ͳ-V@2ÎÜÛ[@2Vý!ÿ.I@2W¿…q22@2Vý!ÿ.I@2XªFÛÆM@2Vý!ÿ.I@2X’Ò±ïd?–0kÎñÉ?’¬˜«!d?“œ‘A ?¨ŽÉ‘  ?’¦ F`"?’[„ä&«?žƒ¸r2ã?“TT%ìô?“1 +ÉúÔ?‘ëÂ^´?’Î=­YÚ?‘Öœf};?›)‰xr? Pkñ?†¯Ä\1—k?‡{®j•9@?‡x–j*ö?‰‡“¤Ë®@@,@*@*@:@:?ð?ð?ð?ð?ð?ð?Uhù@¿aôW€?BŸ~?Q¨¤OyPµ@¨Tù㌵#@˜çƾ +J?]K3nà?iò r?´=bB{N ?Ë 2XËÂ@ŸnFLj@(@§r†§ï²@§r‡+ K@§r†§ï²@§r‰^ž @§r†§ï²@§r%F +¦L@§r†§ï²@§q£{J#;@§r†§ï²@§rU*™2@§r†§ï²@§rl²•éâ@¦´p Ä›¦@¦´k Iº@¦´p Ä›¦@¦´”Ö¡aå@¦´p Ä›¦@¦³U¨Xy>@¦´p Ä›¦@¦³úÔ,<Ÿ@¦´p Ä›¦@¦³ûJ#9Á@¦´p Ä›¦@¦´ÏAò@7” xFÜ@7’ò䎊@4ÇÎÙ‡+@4Îi­BÃÊ@5$¼j~ùÛ@4ê¬1'@4G ù kº@4»/ìVÖ@4G ù kº@4=¥œàv@4G ù kº@48K]Ìcò?€‚ñêã ?’3ˆq×?ÔOLï>?ϩƧ;2k?·ÆÐtµô?«óB?)3y?‚á²Olºü?••´þDê‘?ÊhýýTÈ7?Å÷îØßsÃ?Äø&‰2d?¼?þ®o´÷?’úz."?¤rI©‹×s?а7DuI‘?· Vò§?ÀÀ‰³ŒÍ?Ãô(4ÄÕž@@@@@*@*?ð?ð?ð?ð?ð?ð¿~â;¨b¿˜Pܽ§À?yûÖ:!?réÍ €I@§r¬åmÁ@¦´Z IØÐ?ˆ¾9¡˜§à?~$©Ö™¨à@,K^î!g?ÝæwÁg‚@Ÿ[~;LG@)@©záG®@©f$Ý/@©záG®@©Œq ²—@©záG®@©iDg8@©záG®@©ŠqÞi­@©záG®@©€ qv@©záG®@©b¶®}@¢Ç´9Xb@¢Ç­‘hr°@¢Ç´9Xb@¢Ç½¿HÌ@¢Ç´9Xb@¢Ç¶”Fs‚@¢Ç´9Xb@¢ÇÇÕfÏB@¢Ç´9Xb@¢ÇÔFsØ@¢Ç´9Xb@¢ÇϪ͞„@8ð4mÅÖ8@8ïåÉä@5}‘hr° @5}„M:’@5ï²-@5škP°ò@4®_oÒ @4´›¥ãSø@4®_oÒ @4¯—$tS@4®_oÒ @4ºu%F ?„F/·ÿP5?¡Ýq+qW?©¢“øÌ—>?¢Ç˃.†?¨Ô ‹ÿÑ?«DX ÍSþ?­éW«ZM›?£‚Û£0Τ?´ý³Bí?¥6r”00M?¨;çCÛ=?§ô*²]µ6?Çöµmâ‚?—n„Tºn?¢›Sný{?¦·}­2;¹?¡£‡9²þ?¦«DðL@@@@@"@$?ð?ð?ð?ð?ð?ð?Gе?}äÌí?e¹SFµëF?aGø“ @©{®ÆâÑ@¢ÇÅí\H·?‹­wQüýì?| “Å€Âs?îâP›ÈaŠ?ÄRu§]¶ê@Ÿky@rgÁ@*@ªá£× +=q@ªá¤Ý/ @ªá£× +=q@ªá›¥ãSø@ªá£× +=q@ªá™™™™›@ªá£× +=q@ªá/Ÿ½@ªá£× +=q@ªá¥¸Që@ªá£× +=q@ªá¢ Iº]@¯>éxÔýô@¯>ëC•@¯>éxÔýô@¯>èr° Å@¯>éxÔýô@¯>å¸Qì@¯>éxÔýô@¯?‡+@¯>éxÔýô@¯>êÀƒo@¯>éxÔýô@¯>ñë…¹@8L]cˆe”@8H­«ŸUœ@3µãS÷ÎÙ@3±4êJŒ@3~ùÛ"Ñ@3 ¸ºÇË@2Œ¿±[W?@2Š Þ@2Œ¿±[W?@2}ó¶E¡Ë@2Œ¿±[W?@2}¥œàv?ªÝ8Ⱥ™J?¾¢`ƒ?›£=Ñã5?š„ÅX™c?W2©D?ZF/Dç6Û?dØè‚&ì@ªá¡8‡ø@¯>ð| tM?r~扩-O?Œ~ÊGD7?Å|åFþï@˜)' –¦@ŸoÜýa@+@©oâÐå`B@©oäÝ/¡@©oâÐå`B@©oä2ÊW¨@©oâÐå`B@©oä2ÊW¨@©oâÐå`B@©o㯷é@©oâÐå`B@©oâZîc @©oâÐå`B@©oâ¶®}V@zÏß;dZ@zÒ5Áfj@zÏß;dZ@zË]Ìcñ@zÏß;dZ@zˬq ´@zÏß;dZ@zÍqu@zÏß;dZ@zÍqu@zÏß;dZ@z͸ºÇ@6°4mÅÖ8@6²×süP@1° Ä›¦@1ÃÝ—ö+k@1t¼j~ú@1ŽŠqÞj@0&YJôðØ@0'¯·é@0&YJôðØ@0'ÈK]Ìd@0&YJôðØ@0'»/ìVÖ?‚n—OߤµÜÆ@3n5?|í‘Á.„M‰ûçm@3M²-VÁ.„QnÙ‡@2øDЩ*Á.„NÜC,¥@2øDЩ*Á.„NÜC,¥@2øDЩ*Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø.@   Iº^Á.„€@   Iº^Á.„€@   Iº^Á.„€@   Iº^Á.„€@   Iº^Á.„€@   Iº^Á.„€@žÖ“uÁ.„€@žÖ“uÁ.„€@žÖ“uÁ.„€@žÖ“uÁ.„€@žÖ“uÁ.„€@žÖ“uÁ.„€@8ÖšÔ,<ŸÁ.„>¤µÜÆ@3° Ä›¦Á.„M‰ûçm@3Ðå`A‰Á.„QnÙ‡@2!:’£SÁ.„NÜC,¥@2!:’£SÁ.„NÜC,¥@2!:’£SÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø/@£ô/Ÿ¾@£ôœ¬1'@£ô/Ÿ¾@£ôžÒˆÎp@£ô/Ÿ¾@£ôž í(@£ô/Ÿ¾@£ôŸò䎊@£ô/Ÿ¾@£ô›À6ã@£ô/Ÿ¾@£ô˜†YJõ@¨IX“t¼j@¨IXÔýó¶@¨IX“t¼j@¨IYXbN@¨IX“t¼j@¨IXl"h +@¨IX“t¼j@¨IY=Ùd@¨IX“t¼j@¨IYb¶®@¨IX“t¼j@¨I`ëíúE@3Âò䎊@3¼£n@0óS÷ÎÙ@0ó{J#9À@0¶§ï²-@0·ÕfÏAò@0uµsê³h@0v1ø .@0uµsê³h@0uÂ\(ö@0uµsê³h@0q–R½<6?}Ñ¿ž,?ZÁ».œ?‘jh¨qã9?Œä%—ëš?‘@@Nßo9?“yÄö%Þî?|öOÿÝ?’)£µ“[ZÌw?ƒì%­¹Ï‘?‡Õ˜]–GÄ?‰]³ß’Ý@@@@@$@&?ð?ð?ð?ð?ð?ð¿1Ï*?PM÷Ì?F¥©:¿Ù?DˆÎôÿÖH@£ôœˆžÜ@¨IZ¦Ëþâ?f q…C$?d´”¼ËÇñ?×î$Üæ‡ª?ÔôHx¡|@Ÿfà,2í@0@ ŸÍÒñ©ü@ ŸÜj~ùÛ@ ŸÍÒñ©ü@  5?|í‘@ ŸÍÒñ©ü@  0 Ä›¥@ ŸÍÒñ©ü@  !°‰ (@ ŸÍÒñ©ü@  —ð¡¨å@ ŸÍÒñ©ü@  ÈõÂ\@œÅ["Ðå`@œÅ™³,Í@œÅ["Ðå`@œÇ“÷ÎÙ@œÅ["Ðå`@œÈÛquŽ"@œÅ["Ðå`@œÇ ù kº@œÅ["Ðå`@œÉûþE¡h@œÅ["Ðå`@œÇ“t½@5ÉÎ_oÒ@5ë vkT@2}‘hr° @1CMjO@2'KƧïž@0s@N¤¨Á@1œàu÷@/Ø­«ŸU›@1œàu÷@/Ÿ’aÅçT@1œàu÷@/²-V?ˆ°„kº?ªŽµcùX?¶ÔdÒ í?ÀMN:Ò?ξÕW¢×¡?¡]¡q;j?€C‹~?–¦ÆçŽ +?Úö´ºð“?ÖCRn™?R?Ç¥Ôéät»?¨”¯G0¤Ý?³³&°ÕÓ?®fI÷‚=C?·4³;ê$Œ?³ÓÑžoh?°ïÓVläÞ?¹$ÏFtYÜ@@@@@(@?ð?ð?ð?ð?ð?ð?¨I‹s`?¦{€Küð?bu\®¡ü?½ž 1@  ‡Ë@œÅ㫘Ô?~Vþ÷i'?£Ð)ÿ݃?èÏ)g1…@3˜­ÿ7÷@Ÿ^Ï +ÎÝ@1@¥ˆ4¼j~ú@¥ˆß;dZ@¥ˆ4¼j~úÁ.„€@¥ˆ4¼j~úÁ.„€@¥ˆ4¼j~úÁ.„€@¥ˆ4¼j~úÁ.„€@¥ˆ4¼j~úÁ.„€@ž|På`A‰@ž|$Ý.@ž|På`A‰Á.„€@ž|På`A‰Á.„€@ž|På`A‰Á.„€@ž|På`A‰Á.„€@ž|På`A‰Á.„€@8òÃÉîËû@9R½<6@5Yº^5?}Á.„M‰ûçm@4q‰7KƨÁ.„QnÙ‡@4#ÉîËûÁ.„NÜC,¥@4#ÉîËûÁ.„NÜC,¥@4#ÉîËûÁ.„NÜC,¥?´ Z è´ß@8#˜@8¾:@8 >+@8Iç@8Ù?²„× ì²x@8Î÷@8i§@8Å@8S@8û—?©'¾²[@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø2@¨ãt¼j~ú@¨ãv“u@¨ãt¼j~ú@¨ã{–Œ)%@¨ãt¼j~ú@¨ãf£bèm@¨ãt¼j~ú@¨ãh:Ië@@¨ãt¼j~ú@¨ã`º''@¨ãt¼j~ú@¨ãiÄ8B6@œ'ê~ùÛ#@œ'Ý÷@|‘@œ'ê~ùÛ#@œ(“üáé@œ'ê~ùÛ#@œ(aé Ó@œ'ê~ùÛ#@œ(”4ûa@œ'ê~ùÛ#@œ(1Œ—M?@œ'ê~ùÛ#@œ(ù’R¾@9*0U2b@9(”À8ì@4£÷ÎÙ‡@4¥Êö.@4 "Ðå`B@4*XÀis`@3Þi­BÄ@3å“|Њ@3Þi­BÄ@3ÃÕ­Ã@3Þi­BÄ@3Ko?µŸ)Ø1?”:¶a?“ô0ÿèç?,’H!Ó?‘).%@g?“`P(ee?°ÒY%îö?µYÕÎÒØ?¡"U¥\#?å²mÝ?3ç1?œËkÆa"à?¶œH„r’?›Tý”?Y?:å81?†Xh>þ*Ë?ÙAÌ+dý?•…:#ˆ€™@@&@"@@0@*?ð?ð?ð?ð?ð?ð?oØWŸ€?jÚ•³—€?‡È&:Ö-?tÿÆ3’™Î@¨ãs U±@œ(pù ?— e x—?‡£6lw@&±½°¿†N?ùÍÃ^È4@Ÿp8_v¿@3@£&âÐå`B@£&âÐå`B@£&âÐå`B@£&äÝ/ @£&âÐå`B@£&ã9Àëî@£&âÐå`B@£&ÁU@£&âÐå`B@£&ôFs×@£&âÐå`B@£&ê=p£×@¢Rk…¸R@¢Rl1&é@¢Rk…¸R@¢R^\‘ÑM@¢Rk…¸R@¢RdÂø7µ@¢Rk…¸R@¢R;ô‡ü¹@¢Rk…¸R@¢RE8ï4Ø@¢Rk…¸R@¢RC× +=q@4|ÚQ@4G®zâ@1{ Iº^@1vý!ÿ.I@1{Ƨï²@1u8ï4Ö¡@1Œ¿±[W?@1y‡+ @1Œ¿±[W?@1{'»/ì@1Œ¿±[W?@1|‹C•?|¬Çëý ?ÉGãA­÷?’ʶ‹ùs?™ÿ " ž?Òß© ÷?¡Ëê™õ£¥?|¬Çëý ?“‚Û£0Τ?“1Ú©! ?ª\(­A?ª²âëL¢?±š|9?‚yî8Á#?êzŽx?™¯Ùºà?š;UïçAE?›ÇûP|?¤²¢Òó@@@@@(@,?ð?ð?ð?ð?ð?ð?j(!Z꿆 +¥µ½À?Qþ\õtå]?e漫z @£&æÉ]üÛ@¢R_ÚÊl?j®®…ÿ?{”`î\a?Ù`V‘éÜ?æ§ò.}[@Ÿ_>aÎ6@4@­'¢MÒñª@­'£u¶Ä6@­'¢MÒñª@­'¡@N¥@­'¢MÒñª@­'/Ÿ¿@­'¢MÒñª@­'«C,¥@­'¢MÒñª@­'¨ÁTɆ@­'¢MÒñª@­'­úCþ]@œ— Ä›¥ã@œ—£× +=p@œ— Ä›¥ã@œ—´ðØDÑ@œ— Ä›¥ã@œ—§8}¿@œ— Ä›¥ã@œ—‚\(õ@œ— Ä›¥ã@œ—‹'»0@œ— Ä›¥ã@œ—„êJŒ@7½:’£@7ÄÞïl@5+¥ãS÷Ï@51ä÷eý‹@4'KƧïž@4&?¼@3Ê0U2a|@3Ê™0¾ í@3Ê0U2a|@3ÏÒòä@3Ê0U2a|@3Ƈ+ J?™I'%ö«?œ%“=ý7"?’©ßc«?i²Pƒè?šdt O?”|„¥&?ŽÕQp Î?ªåøÖ¶£­?ŽËÜ¿€?’îy†Ò‡‚?™x9ÿ¥l?ŸÙXˆ‡#?‚˜>¸?­Ú@/@õ{?Š[¦Råb?”ûÅìÆÅ?ŸHF!œ6²?–¿nè$„@@@@@*@(?ð?ð?ð?ð?ð?ð?]ü +¿oá­Ë?H¥0H^Ï?SEŸ@­'©¦d®@œ—ŽUn!#?chKqºÕ±?ušÐ/…×e?¼ÞÌ,p?áp:q¯¶¿@Ÿj…$ß2 @5@¡ž€ƒn˜@¡žš^5?}@¡ž€ƒn˜@¡ž€ƒn˜@¡ž€ƒn˜@¡ž~š@¡ž€ƒn˜@¡žTÉ…ð@¡ž€ƒn˜@¡ž¼@¡ž€ƒn˜@¡ž€A‰7M@¥ÂŒÌÌÌÍ@¥Â‡+ J@¥ÂŒÌÌÌÍ@¥ÂBÃÉð@¥ÂŒÌÌÌÍ@¥ÂŒÌÌÌÍ@¥ÂŒÌÌÌÍ@¥ÂŽ_oÒ@¥ÂŒÌÌÌÍ@¥Â5¨Xx@¥ÂŒÌÌÌÍ@¥ÂÒñ©ü@8N쿱[X@8X Ô•*@2?|í‘h@2éá°‰ @1RÐå`A‰@1R䎊qÞ@0 ¿±[W?@0 «ŸU›=@0 ¿±[W?@0 篷ê@0 ¿±[W?@0 ˜_ö”?|öOÿÝ?ÎÁ¯‰t0?‘šÕU#?ŒvHn&³?üEÙáõ{?‘¦ µÚ?´Žé`m?“?xr¢I?„¦Ô•]I?Y‡…—Ø?üÓqÔNŠ?Éöm/w²„?°vs‚¹R_?©¬‰[Ùg??¡Ó㯗Ë?–4Ê?™2ÿËtÎ?~ì“?ÕÒJ?¬ƒÁ^èî?¬“°€?Ÿ¾ä#žˆ?šô8&¨¯?“»lÂÜ`Û?±GJ¬ä ?¡¸­lq³ß?•1C'÷Ó3?’¡ ;’n?’ÖÂäÔ%?•ž}Œæ’@@*@,@*@8@6?ð?ð?ð?ð?ð?ð?yiJ?lâÆð?g "³$Uz?aÕ'¢ÙúJ@¯ X‰˜@™ ,zÕ?…ìF¥¶åæ?† I?ñy¹B +@¥xAQ](@Ÿkô‡Jé²@7@§mØbMÓ@§mØbMÓ@§mØbMÓ@§mÙrGE9@§mØbMÓ@§mÙ™™™š@§mØbMÓ@§mØÔýó¶@§mØbMÓ@§m×´¢3›@§mØbMÓ@§m×>«6y@«4fffff@«4f§ï²@«4fffff@«4g8}¿@«4fffff@«4hðŽ@«4fffff@«4fÏAò@«4fffff@«4fÜ]cˆ@«4fffff@«4g»/ìW@3Žì¿±[X@3¼@.MV“@.MBÃÉîÌ@-òn—Oß@-òGE8ï5@.½Vlô"@.½²-V@.½Vlô"@.½p£× +>@.½Vlô"@.½—ö+jé?|¬Çëý ?é¥3i£ó?‘Ûü†Nã?‹×lÇ…N9?òǹíT­?ß-tT?|öOÿÝ?’#maЀ?r¼Jsž?EÇàÔPà?Ø¥²À<(?{L Õ¢D?‚2Y0â³?Œµ3‰;šÏ?‚s@ˆaÛ?‚æÊ¬vã?†špk Y?†©b/bJö@@@@@(@*?ð?ð?ð?ð?ð?𿜖¿à?#W‹`?#éÊc¬ƒl?†e”® @§m؃ÄX@«4fòšê?CÏkÀ~½?2ÙŸu?'p?•\»JYõô?rg³¿âÁê@Ÿfñlaú@8@¡Î·ÎÙ‡@¡Î´9Xa@¡Î·ÎÙ‡@¡Î·ÎÙ‡@¡Î·ÎÙ‡@¡Î¹Àëíú@¡Î·ÎÙ‡@¡Îº^5?}@¡Î·ÎÙ‡@¡Î·éùs@¡Î·ÎÙ‡@¡Î¸y=Ù@¯»çl‹D@¯º^5?}@¯»çl‹D@¯½p£× @¯»çl‹D@¯½!ÿ.I@¯»çl‹D@¯½/Ÿ¾@¯»çl‹D@¯¼£n.@¯»çl‹D@¯¼]cˆe@6=:’£@63¢œwšl@1GÎÙ‡+@1GškP°ò@0iÛ"Ðå`@0i³Ð|„¶@0._oÒ @0/ „M;@0._oÒ @0.¾ß¤?æ@0._oÒ @0/HË’:?ˆÿÀ)T¿Æ?¥nÇx?)?‘.Ò®ó_ ?‹¦ ŸYÔ?‘; ÷^?‘<ƒÜ_õ?}Ñ¿ž,?’Dê™.x?ÏtP°*?1ð'7éÃ?çêÑHcÇ?ÐnçK/?±êH´ÿ±?lío>÷?ƒ~¨õ/¥O?ƒGϵ¨í'?ˆA0û)n?‡v>ª¸ @@@@@@ ?ð?ð?ð?ð?ð?ð?O{³ôŒ??ç~Ð?D­‡ŽÕ7P?+FF ,ø@¡Î·†6J@¯»°J?cSH:QÚ|?MYŒui+ ?Ë]_̨?£9áT­7Ì@ŸiWæÔ‘D@9@£•Ù‡+@£•ØbMÓ@£•Ù‡+@£•Ô`ªdÃ@£•Ù‡+@£•×eýŠÛ@£•Ù‡+@£•×ö+jè@£•Ù‡+@£•Ót¼j@£•Ù‡+@£•Ô•*™@«¹ãS÷ÎÙ@«¹å¸Qì@«¹ãS÷ÎÙ@«¹âh Ô•@«¹ãS÷ÎÙ@«¹ãn.±Ä@«¹ãS÷ÎÙ@«¹å®æ1ù@«¹ãS÷ÎÙ@«¹æs×Ü@«¹ãS÷ÎÙ@«¹ä xG@5í¥œàv@5ëçl‹C–@2’ Iº^5@2’n—Oß@2Z~ùÛ"Ñ@2\¿±[W?@1Ê0U2a|@1Ì/ƒ{J$@1Ê0U2a|@1Í:’£@1Ê0U2a|@1ɺ^5?}?|¬Çëý ?­hX™*?‘ojVrn7E?ƒ/‹ÍY}‘?OéáÜtx?‡»¢Øˆ‹?„E£R ÕY?гá‡}?‰®ââP\@@@@@,@(?ð?ð?ð?ð?ð?ð¿H>Gà¾ù“¹?4¸k,ËiŸ?-ï.qبÚ@£•Ö”h˜´@«¹å-´‘h?U²¦X5€?NoZ–V?³LMa›!à?¢žª%ý“@ŸfáÏ…@:@¨m8Ôýó¶@¨maÊÀƒ@¨m8Ôýó¶@¨m5*™0@¨m8Ôýó¶@¨m/4Ö¡b@¨m8Ôýó¶@¨m/ƒ{J#@¨m8Ôýó¶@¨m)îËû@¨m8Ôýó¶@¨m..±Ä3@£Ø +=p¤@£Ø3333@£Ø +=p¤@£×ýp£× +@£Ø +=p¤@£×þÿ—$@£Ø +=p¤@£×ú)Çy§@£Ø +=p¤@£Ø Ô•@£Ø +=p¤@£ØÎp:û@7 Î_oÒ@6óŽóMj@38r° Äœ@33FÜ]cˆ@2y7KƧð@2r£S&@1ó&Á½¥@1éÀëíúD@1ó&Á½¥@1é‡+ @1ó&Á½¥@1éQ‚©“ ?Àët#®ªV?qÂ' +B›?”&$#ú/ò?ö€(tUo?šÉ¨³˜+?“÷Vdà?”¼íÒh??•2ã(_Ïù?“Ú%¿»8?–r°¤»®?š+hd{ö?’›â¾Ð'µ?¼ÐÁß9&û?‚ñêã ?„A'Š_^?‡µ‚[Ö?‰/ã̽`ª?Š—à `ž@@@@@,@(?ð?ð?ð?ð?ð?ð¿_á®䀿_ [µè?g¸OØgØá?gà¤ìb-@¨m.ƒ½¨|@£Ø»Í¢?xïüS•æ?ˆTr´"?âk(ЙùÍ@)å”Ç‘i@Ÿqì°JÔ@;@®(r° Å@®(õÂ\@®(r° Å@®)ÞÒ@®(r° Å@®)*0U1@®(r° Å@®(õÂ\@®(r° Å@®'“Ý—ö@®(r° Å@®'“Ý—õ@¢¥Þ¸Që…@¢¥ß;dZ@¢¥Þ¸Që…@¢¥Þ«6z@¢¥Þ¸Që…@¢¥Þ5?|ï@¢¥Þ¸Që…@¢¥Þ¸Që…@¢¥Þ¸Që…@¢¥ÞvÈ´9@¢¥Þ¸Që…@¢¥Þš@3úqÞi­C@3úŒL˜_@/Gï²-@/Hr° Ä›@-/ß;dZ@-/ìVÕÏ«@,u¨Xy=Ú@,usê³g¡@,u¨Xy=Ú@,uéá°‰¡@,u¨Xy=Ú@,uÂ\(ö?}Ñ¿ž,?ZÁ».œ?‘$Cê¡@í?‹¦ ŸYÔ?ôê÷º»â?¼‚Ë¡K?|¬Çëý ?’#maЀ?„¦Ô•]I?-õI¸`K?ß’ºèh!?Uÿyu”#?‚Ì ÝŽ‚8?ŒÂ§dß±?‚|׿pZ?‚æÊ¬vã?†½ª»—?†£îž«î@@@@@*@&?ð?ð?ð?ð?ð?ð¿1½÷à¿+ý2À?ŽLžÛ>îKõKç@®(tŸb}@¢¥ÞÅ[Ô?=bqw©Y?ôÈœL?‡ Ü”k?(õ•¤Ý€˜@Ÿgfƒi@<@©Š ÌÌÌÍ@©Š ¤õ@©Š ÌÌÌÍ@©Š ™hi)@©Š ÌÌÌÍ@©Š ÓGqû@©Š ÌÌÌÍ@©Š »¦¢é@©Š ÌÌÌÍ@©ŠAIZ`@©Š ÌÌÌÍ@©Š(C@“&W +=p¤@“&V× @“&W +=p¤@“&R·è%w@“&W +=p¤@“&T¼eÞ)@“&W +=p¤@“&S©þù@“&W +=p¤@“&Y¨H.*@“&W +=p¤@“&Sö+ó±@6šÔ,<Ÿ@6ÜÌjJ@2B° Ä›¦@2A7¤kE@1v§ï²-@1tË)äõ@0ãÉîËû@0áÞœÏßO@0ãÉîËû@0ámÑÇíÐ@0ãÉîËû@0à%ÞsÔ ?~Ov_Ø­«?þC*«!?‘Ûùw¡|?‹¦ÿ>'‡?’) / 7ã?í…q¥Ú?e™”XWø?’8Á™N?‹^Ónu§?1sææÅ#?’ZpÉs{Ÿ?W¶žî»?‚U«£?!0Æ1?‚s9½+6d?ƒl‘pM?‡Ê¨—ÉÆt?‰e-$#…{@@@ @ @6@(?ð?ð?ð?ð?ð?ð?L=ñE°¿#5A¨?C»+0E÷?3Û)}Ÿè@©Š ¡+ð%@“&VØ¡B?c­Ÿ±Ëˆ?TLæ´]±¼?ÓŸí©?³…¾]¸‚@ŸgC@IAé@=@¢Ð²-V@¢Ð°£× +=@¢Ð²-V@¢ÐœPHñ@¢Ð²-V@¢Ð˜DЩ@¢Ð²-V@¢Ð™™™™š@¢Ð²-V@¢Ð—´¢3œ@¢Ð²-V@¢Ð‘·Xâ@®ÈŒIº^5@®ÈŒ1&é@®ÈŒIº^5@®Èž\‘ÑN@®ÈŒIº^5@®È–“u@®ÈŒIº^5@®È§E8ï5@®ÈŒIº^5@®ÈƒFÜ]e@®ÈŒIº^5@®È—>«6z@8ºqÞi­C@8ÌÌÌÌÌÍ@5ÎÙ‡+@5_ö”F@4Ë"Ðå`B@4Êû~ÿ—@4 +0U2a|@4¯·éú@4 +0U2a|@4:’£@4 +0U2a|@4u%F +¦?¨Ö_pP1?œf¨Db?›£=Ñã5?Uÿyu”#?žî üÑ)?›‹ÞV‘?¢F^ì¼Sð?©\Lž)C?¥iÕ¯‚ùŠ?ŸY`òƒë?¡f’@?¦¤Wë'?¡Âœ•Ð,Ã?˜ª"_¾­?¦—âŸ7 ?‡ÕZ›µûÜ?›€*:€R}?‘øù>3}@@@@@"@$?ð?ð?ð?ð?ð?ð¿t‹„€?6øJÔð?Z ýcû´¿?uÁYEÏ@¢Ð™[,·Ç@®È”·lÒ?oy‹£˜/?’é4‘Ï?ÉÉO7Ï—R@-9™Y²@Ÿn?»©Ú÷@>@ àNV“@ àN_oÓ@ àNV“@ àOìVÕÐ@ àNV“@ àOÅFX@ àNV“@ àLÉQ@ àNV“@ àIÓ0ÊÄ@ àNV“@ àJf:Ç}@§¼í‘hs@§¼î7„à@§¼í‘hs@§¸[ŽÁô@§¼í‘hs@§¾8\~@§¼í‘hs@§´È8ã@§¼í‘hs@§¶æx¹°@§¼í‘hs@§µ¡c@4ÖšÔ,<Ÿ@4׿šÔ,@13S÷ÎÙ@13?ä4Þ†@0¾V“u@0½ï%…©¿@0Eœàu÷@0A¥ÇÌÉ@0Eœàu÷@0>¨ºÝ”@0Eœàu÷@0@-à,ZÎ?|çµB &€?ÃUV&w$?‘'7 O|¬?Œ#™®ÂZ?’ÅÀ;éA1?‘ÂeVV¸?|¬Æ Væ?’´•£Œ? oò|?’kë»S?’Q„xy_?’.?¨p?‚oºáܺ?<œçáTJ?…,mÕ6O?†Sð.Di?‡sžöI?ˆX† ¼|î@@@"@&@6@5?ð?ð?ð?ð?ð?ð¿KBb;¸¿\®Ôp? —›:Àù??2\Û½Ùm@ àLH[Ù@§¹ +ò=è?@9¯yÜò?_ZÿüŽA?‹2KÎ ¬?ƺ?øø¡ @ŸfO×ø\ì@?@«£6È´9X@«£>vÈ´9@«£6È´9X@«¢ö“u@«£6È´9X@«¢ì<žìÀ@«£6È´9X@«¢ò-V@«£6È´9X@«©mžƒä&@«£6È´9X@«©“×Ûõ@¢d“t¼j@¢dñ©ûç@¢d“t¼j@¢dJçÕfÏ@¢d“t¼j@¢cïiDg8@¢d“t¼j@¢cï²-@¢d“t¼j@¢býó¶F@¢d“t¼j@¢bJ=p£×@7Bò䎊@7>p:û~‘@4…?|í‘h@4¶+jçÕf@4ƒt¼j~ú@4Ón.±Ä3@43&Á½¥@4’ñ©ûçm@43&Á½¥@3`:û~‘@43&Á½¥@3ZÀƒn˜?‚á²Olºü?§Bx1 ·?Àñi“Á?»¨òß>ð-?ɧ‡dD2?Î’Ü9ÖÊ?¨Ö_pP1?¨gôÏ*å¯?ÁÕ¬{TÓ?Ì•ËTY?µŽðËèúR?ÃbIÄß­?‚¸“Îè ÷?©ñºåÇÂ-?µûįJ˜?³ÀKá{~?µ‰2 ßý?»N£²›R\@@@@@ @"?ð?ð?ð?ð?ð?ð?É“ü±*¸¿¼ù4I ?ÁÄÈTÛ ?—ZkùÄ@«¤[žš#@¢cqíMÙF?Ù£¾d¼5?µô>rÅ£@jý1,%µ@"qÝh-@Ÿa'‹!¢ù@@@§Òí‘hr°@§Òã•%@§Òí‘hr°@§ÒÓ÷ÎÙ@§Òí‘hr°@§Ò×´¢3œ@§Òí‘hr°@§Ò×§†Â'@§Òí‘hr°@§ÒÓüPG@§Òí‘hr°@§ÒÖ”Fs@®îß¾vÈ´@®îçï²-@®îß¾vÈ´@®î»çl‹D@®îß¾vÈ´@®îÈð@®îß¾vÈ´@®î¡aä÷f@®îß¾vÈ´@®î‹jçÕg@®îß¾vÈ´@®î‡8}¿@8ÿ–»˜È@8ï²-V@5¦‡+ J@5¢ZîcŠ@4ä¼j~ùÛ@4ÎóMj@4–ý!ÿ.I@4pÞÒˆÎp@4–ý!ÿ.I@4‹Í5¨Xz@4–ý!ÿ.I@4…oi?|öOÿÝ?¥?áýí¯?¡.íN?ªÒè"co?¥60«‹a?§¼œ¾ó?¶™b’jk±?¨½P|÷©ß?”ÿŒÙÿIí?´ÓKÓÈÂ?³ÍÂ]%ž®?©üˆ“ª»P?ºÆF¯{ƒ³?¢ß”ÑY?™Jz¬Uf?œC‰þx%?Ÿ/Òѯ¢?¢£A=ñ®@@@@@@?ð?ð?ð?ð?ð?ð¿l6ʪ˜¿“Wü£õÀ?C ŽTUj?krv‘o|@§ÒÙ…¤d@®î¥Ð¸‹?l#ë#qÔ?ˆe7¨&?®0lÝFt8?ˮͿtƒ¹@Ÿm¢÷Ì9Í@A@¬ÂÖ“u@¬ÂÕÂ\)@¬ÂÖ“u@¬Â×eýŠÛ@¬ÂÖ“u@¬ÂÔ`ªdÃ@¬ÂÖ“u@¬ÂÖ_Ø­¬@¬ÂÖ“u@¬ÂÓŽóMj@¬ÂÖ“u@¬ÂÖ‡+ @ þ«…¸R@ þ«Æ§ïž@ þ«…¸R@ þ­5¨Xz@ þ«…¸R@ þ©xÔýô@ þ«…¸R@ þªJŒM@ þ«…¸R@ þ´ýó¶F@ þ«…¸R@ þ±ø .@5N쿱[X@5Nƒä%®æ@2©‡+ @2¨­«ŸU›@2ï²-@2Xy=Ù€@1ãÉîËû@1âÃÉîËû@1ãÉîËû@1â©“ àß@1ãÉîËû@1ã9Àëíû?|öOÿÝ?W[†?‘yß]³Õø?ŽwX/8?‘ …É¿¼?‘…Rgå.?1·†Æjñ?’,ö´´Ï#?‘8“‡«G?•GÝóuS—?’ºñS©YÖ?“IëH!w?ƒmÕ+&¬‰?c I??ƒ]€µ,Vß?„XïWÉò~?Ž .0åv?‘4hÆpÉ„@@@@@&@(?ð?ð?ð?ð?ð?ð¿ +4?Wæ-j?3zàŽÓÔ?H¤"ÓÏG(@¬ÂÕ§™ˆ¶@ þ®­¤M¶?SW +LCô?i%dl[1?³2Xºd{?ÙVoåÖÇ@Ÿf†H5JÏ@B@¤¡˜“t¼j@¤¡œ¬1'@¤¡˜“t¼j@¤¢ +Àƒo@¤¡˜“t¼j@¤¡§ÕfÏC@¤¡˜“t¼j@¤¡Éº^5@@¤¡˜“t¼jÁ.„€@¤¡˜“t¼jÁ.„€@¦GÈ´9X@¦GÅãS÷Î@¦GÈ´9X@¦G™=Ùc@¦GÈ´9X@¦GåãS÷Ï@¦GÈ´9X@¦Gý—ö+l@¦GÈ´9XÁ.„€@¦GÈ´9XÁ.„€@7–»˜È@7Åo@5‚° Ä›¦@5]Oß;dZ@4K"Ðå`B@4|²•éá°@4‚@·€5@3Óþ\‘ÑN@4‚@·€5Á.„NÜC,¥@4‚@·€5Á.„NÜC,¥?Œs¤DÅÐ?²ÔIšéö³?À*ç´ÃþÝ?´]£—´œ/@8Iç@8Ù?‡YÍ_?¢W;„zY?¸ÙàÝ ?ºúèï„@8S@8û—?„W;RS?³A@¯S~`?½µkÈç§?ž/Ç"êõâ@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøøC@ C¡ÊÀƒÁ.„€@ C¡ÊÀƒÁ.„€@ C¡ÊÀƒÁ.„€@ C¡ÊÀƒÁ.„€@ C¡ÊÀƒÁ.„€@ C¡ÊÀƒÁ.„€@™–ƒn—Á.„€@™–ƒn—Á.„€@™–ƒn—Á.„€@™–ƒn—Á.„€@™–ƒn—Á.„€@™–ƒn—Á.„€@7rÃÉîËûÁ.„>¤µÜÆ@3 Iº^5Á.„M‰ûçm@3gKƧïžÁ.„QnÙ‡@1õµsê³hÁ.„NÜC,¥@1õµsê³hÁ.„NÜC,¥@1õµsê³hÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøD@£™™™™šÁ.„€@£™™™™šÁ.„€@£™™™™šÁ.„€@£™™™™šÁ.„€@£™™™™šÁ.„€@£™™™™šÁ.„€@ž üí‘hsÁ.„€@ž üí‘hsÁ.„€@ž üí‘hsÁ.„€@ž üí‘hsÁ.„€@ž üí‘hsÁ.„€@ž üí‘hsÁ.„€@8½:’£Á.„>¤µÜÆ@4µãS÷ÎÙÁ.„M‰ûçm@3Ë"Ðå`BÁ.„QnÙ‡@3 +0U2a|Á.„NÜC,¥@3 +0U2a|Á.„NÜC,¥@3 +0U2a|Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøE@ªì¨õÂ\@ªì¦éxÔþ@ªì¨õÂ\@ªì¥8ï4Ö@ªì¨õÂ\@ªì£¢œwš@ªì¨õÂ\@ªìž5?|î@ªì¨õÂ\@ªì¥”¯O@ªì¨õÂ\@ªì¥ýŠÚº@©®—Oß@©­V@©®—Oß@©¬˜_÷@©®—Oß@©©“ àà@©®—Oß@©§ ù l@©®—Oß@©ªÀƒo@©®—Oß@©«íúCþ@6¥öý!ÿ.@6¥ðoiDh@3i‡+ @3cñA [À@2v§ï²-@2r Iº^5@2 ¿±[W?@2ñA [À@2 ¿±[W?@2 Dg8~@2 ¿±[W?@24êK?}Ñ¿ž,?•Íñ¤Ý q?“%HCâ=s?—³Q+Ùv?’<_+fjä?’ß5éõJÈ¿A.”íà?HŽD–=ñ??;õ%Â\á‹@ªì¥§›Ñ@©«Öx« ?hÒ>F¾p?[ù~žw?Úd©('¾?½uE‚ï@ŸeÅû0Úà@F@«îð£× +=@«îñ&éxÕ@«îð£× +=@«îðË)^ž@«îð£× +=@«îð¾ í*@«îð£× +=@«îñÅ@«îð£× +=@«îð-à @«îð£× +=@«îð¸»@©|¯²-@©|¯²-@©|¯²-@©|¯v_Ø®@©|¯²-@©|°¸¼@©|¯²-@©|°¸¼@©|¯²-@©|°‰ 'R@©|¯²-@©|°Hð@6¯O „M@6&Á½¤@/³t¼j~ù@/³ŽóMj@-ãn—P@-âÞÑ·@,`ªdÂù@,mÅÖ8‡@,`ªdÂù@,9XbN@,`ªdÂù@,9XbN?€‚ñêã ?é¥3i£ó?‘½ümüñ?‹ª½¨ª8v?êtÿKÑc?¶*WFÑ?}Ñ¿ž,?’›ÈÖÝ?~ËQ§?/ò×ÈZø?ÔÒ@úˆ‘?M\³Ù“@?ƒ¡É^&Ö?Œ°¶.Ä+Æ?‚‹¡8*ú?‚ð'ã:ÂÝ?†½ª»—?†–f_ÔŠŠ@@@@@,@$?ð?ð?ð?ð?ð?ð¿(…`?%ò¥À?"Õnµ#?‹¥6¤G@«îðÙI@©|°NOÆ?BµãŒ6Q?%1ÚO]Þ?‘VÔéç;?Vj0Õ¸JÅ@Ÿg MCE–@G@¯=Ƨï²@¯=Ƨï²@¯=Ƨï²@¯=Â3œ¿@¯=Ƨï²@¯=¶®}W@¯=Ƨï²@¯=ÂÞÑ·@¯=Ƨï²@¯=Õ%@¯=Ƨï²@¯=¶®}V@®"ÍOß;d@®"ËÆ§ïž@®"ÍOß;d@®"Љ 'R@®"ÍOß;d@®"Ò½<6@®"ÍOß;d@®"Ðò{²ÿ@®"ÍOß;d@®"Íà p@®"ÍOß;d@®"ÍúCþ\@5=:’£@5:îcŠ +@1sS÷ÎÙ@1hÇâ‚@·@0V”@0“{J#9Á@/á-w1Å@/Ì1&éy@/á-w1Å@/ÌÙè>BZ@/á-w1Å@/ÎóMj?‚á²Olºü?‘¸ü"ù€2?—¿ÔÌÆ?’×­“·?“¦Æ_ÌdA?’Ýå"çX?|¬Çëý ?”­ŽzF”?”p¶I”“ž?”1}…B†-?˜#ÛbŸ^?“å¡jÚ?„›‹ÖO?3I¶#i?ƒM¬Öe—_?ƒv_.^?†å·ÑfWà?mŽÃÎŽ@@@@@"@(?ð?ð?ð?ð?ð?ð¿KÒfâ¸?E~âg0?*ʆºœk?BZîb@.3t¼j~ù@.3&Á½¥@-ãn—P@-âëC,§@+¨Û‹¬q @+©Dg8~@+¨Û‹¬q @+©7KƧð@+¨Û‹¬q @+¨è§æ›?|¬Çëý ?Ï[äe(lQ ?ŽwX/8?”¶q fì?’IåŠú?„F/·ÿP5?’ ·6Öc¤?‘ïɇ}~?’‘Ç#·X?Ä —+¥A?•J佪™^?ŒR‹w#z?pù51íÒ?„³3Z\ð…?…ÇóÏ€9"?‹&¸ê±fÂ?‹ ˜1 D@@@@@@,@&?ð?ð?ð?ð?ð?ð?H7.«@?P]žDŒ?1µï\±>?M6mQl!A@§¶X+‰@£î‰Á[äØ?OZGóØP?o +Æ•i-°?›¸þÖ¡Î?×ÜDÄ !ž@ŸiE™]@O@¬Ÿ¾vÈ´@¬Ÿ¾vÈ´@¬Ÿ¾vÈ´@¬¢@·€5@¬Ÿ¾vÈ´@¬¢¶®}V@¬Ÿ¾vÈ´@¬¢&€J@¬Ÿ¾vÈ´@¬¡–R½<@¬Ÿ¾vÈ´@¬¢¶®}W@«Û§ï²@«Û$Ý/@«Û§ï²@«ÚþÑ·@«Û§ï²@«Ûƒn˜@«Û§ï²@«Úÿ.Hè§@«Û§ï²@«ÛëíúD@«Û§ï²@«ÚÿØ­«Ÿ@2Ì]cˆe”@2Ëûµsê@-½²-V@-¶¡aä÷f@+–E¡ÊÀƒ@+‘4êJŒ@*úÇË)_@*õ*™0¾@*úÇË)_@*ô¯O „L@*úÇË)_@*óê³g ù?É^òÀXæN?‘J–?-.º?‘°&޲P?Œ9‚Ù.?‘ÇöÃÞ`?’ Ù–¥£?ÐbMçê_x?“6SÇ{Ó?Ê +ä\ä?£û,Ɇ?‘†óèJL\?‘C å;Ã?€g‹)ØêÀ?þrªbT?ƒ´],m=?ƒ­=aÊw%?‡ø¢:›¸1?ˆCns¥ @@@@@,@*?ð?ð?ð?ð?ð?ð?'d°¢?4;”½p?2àNHíþU?@Ÿ ÃÙQ@¬¢&ƒ@«Úÿíýéî?B¯×7 ?O|#D/Ù?|úŠÚ!Ü?” `ÜWÀ@ŸrâY¶Y:@P@§*ˆ´9X@§*†éxÔÿ@§*ˆ´9X@§*ŒIº^5@§*ˆ´9X@§*”!-v@§*ˆ´9X@§*ŠqÞi­@§*ˆ´9X@§*•Â\)@§*ˆ´9X@§*–R½<5@¢ 7Kƨ@¢ +Àƒp@¢ 7Kƨ@¢®zá@¢ 7Kƨ@¢üí‘hs@¢ 7Kƨ@¢–R½<@¢ 7Kƨ@¢:’£@¢ 7Kƨ@¢Zîc @7wâ‚@·€@7xâe+Ô@3®5?|í‘@3£ê³g ù@2Ãt¼j~ú@2¸ºÇË*@2TmÅÖ8†@2O4Ö¡aæ@2TmÅÖ8†@2>ÿ—$t@2TmÅÖ8†@2@IQ‚ª?˜ž^ƒÿ*ˆ?—hÄ”V?ž1ï3Î??’èÞ㬱_?§|Qæý S?¥[ÖàÇй?‘â%ì˜ ä?”zòžÕÿ? :-%šÀ?’"Š6›Wz?­VA®o?­uð!#©ç?–-¤]î§É?îÑšˆHÉ?ŒÊ­#г_?‡ÕZ›µûÜ?¡ÏX¼ãs~?¢qM¾,ð@@@@@,@(?ð?ð?ð?ð?ð?ð?g*Í^¿f f?RÜn#Oæ±?GÂ?„ƒ´@§*‹¸ƒJj@¢öRRª?m ÐE ?c¡š¾Ã'Å?ó»^Ê?±d²ó$’@Ÿg•° +o@Q@¯¬1'@¯!µŒ—@¯¬1'@¯\¬1'@¯¬1'@¯„µÜÆ@¯¬1'@¯#× +=q@¯¬1'@¯¯O „@¯¬1'@¯>ƒä%¯@•¬Iº^5?@•¬&ffff@•¬Iº^5?@•­=¿HÌ@•¬Iº^5?@•®—Xâe@•¬Iº^5?@•­öz—@•¬Iº^5?@•¬±&éxÕ@•¬Iº^5?@•¬–»˜È@8¥öý!ÿ.@8¦qãî9Â@4 í‘hr°@3¼žì¿±\@3‹"Ðå`B@31-w1Å@2¨è§æ›@2_4Ö¡aå@2¨è§æ›@2]ó¶E¡Ë@2¨è§æ›@2XK]Ìcò?|ò0p‰J?ÍŽÏö­#?Û¸F>±î8?×ÅÂôGe?Ù ÏqsU?ÒlT%ÊuÂ?¹9µ§òó?ÓÿïJ/p?ζa'~©?ËϬÑl×”?Ô¹dë-@Q?ÒN„)‰O·?‚ìÞ[N„Ú?¢ëµ~Ô™ï?«ÓÎôy…z?7<ï 4?°’ãMX¥ç?¥È©¾ó‚ž@@@@@,@&?ð?ð?ð?ð?ð?ð¿¬Ûa“ðà?œòç.8€?ˆKyFÆ4?›%ãÂì@¯ÊÊ#@•¬—@!$?¢TåÅâ?·»§±×Ä?Þn"ãeïf@•Ó#&¥@ŸaÿEb4ž@R@¥¼¥`A‰7@¥¼¥_›lÊ@¥¼¥`A‰7@¥¼¦ +¦L0@¥¼¥`A‰7@¥¼ª~ùÛ#@¥¼¥`A‰7@¥¼ª=p£Ø@¥¼¥`A‰7@¥¼¦µ (@¥¼¥`A‰7@¥¼¤›¥ãU@9aG®{@9bMÒñª@9aG®{@9|žì¿°@9aG®{@9°ò{³@9aG®{@9ˆè§ç@9aG®{@9xÔýó¶@9aG®{@9«ŸU›<@3=:’£@3<篷é@1}‘hr° @1zdÂø7´@297KƧð@2-<64@1zÔ,<ží@1sþ\‘ÑN@1zÔ,<ží@1sMjP@1zÔ,<ží@1kjçÕfÐ?|¬Æ Væ?äm°û0Ž?•=ÛtQ¾F?’(æ„+Zk?•³™»7…?–öfsPa?|¬h2:“?’j%ÓRa?¢Àì#Ì*0?•õ°­¿Èì?–›·†ø?£Ä=à?‚ofî@Ú?Œ¾»•lŽ?™{Tä=û?ŠÒ(>—œ ?°4\ɵ?›8~à,ã™@@@@@,@*?ð?ð?ð?ð?ð?ð?7­ûYp?t«›Ü*?D°»a?\ôœAS@@¥¼¦D.«³@9tDF–?bL…d³ö?yu‰¥Æg2?Í/MW­?ôˆ—¶ü±@Ÿc¯M½1é@S@«á–‡+ Á.„€@«á–‡+ @«á¡–R½<@«á–‡+ @«á4Ö¡a@«á–‡+ @«á™‡+@«á–‡+ @«á™‡+@«á–‡+ @«á”9Xb@œ²;dZ¬Á.„€@œ²;dZ¬@œ²@ëíúD@œ²;dZ¬@œ²>«6z@œ²;dZ¬@œ²@IQƒ@œ²;dZ¬@œ²DµÜÆ?@œ²;dZ¬@œ²=ó¶E¢@9Bò䎊Á.„>¤µÜÆ@4Iº^5?@4!‚©“ à@4“t¼@4SŽóMj@2p–»˜Çã@2pØDЪ@2p–»˜Çã@2pÞÒˆÎp@2p–»˜Çã@2pƒn—Ž@8J¨?›¹·þq§?’ +·>á ?‘ÔþÆvI‡?‘à2F0µÔ?‘Û.Yrî@8J¨?ž%Œ@&—?”p¶I”“ž?’:u.ý ?’aÔæ +/ ?“ <°·Ê@8p÷?™Ø7&½ x?¢AQˆ³3?ˆÝíá‰?Š|)-}í(?ŠÐ+`È“@@@@(@(?ð?ð?ð?ð?ðøøøøøøøøøøøøT@£ø« Iº@£øÊ/®Yÿ@£ø« IºÁ.„€@£ø« IºÁ.„€@£ø« IºÁ.„€@£ø« IºÁ.„€@£ø« IºÁ.„€@—?|í‘h@—Eìéµí@—?|í‘hÁ.„€@—?|í‘hÁ.„€@—?|í‘hÁ.„€@—?|í‘hÁ.„€@—?|í‘hÁ.„€@8¨†YJôñ@8˜5øµ¡@5k¥ãS÷ÏÁ.„M‰ûçm@5)Û"Ðå`Á.„QnÙ‡@4&YJôðØÁ.„NÜC,¥@4&YJôðØÁ.„NÜC,¥@4&YJôðØÁ.„NÜC,¥?œR¦FØR@8#˜@8¾:@8 >+@8Iç@8Ù?¦ˆIùºþ‚@8Î÷@8i§@8Å@8S@8û—?©üþÀUC @8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøU@¡ÎS÷ÎÙ@¡Î¾vȵ@¡ÎS÷ÎÙ@¡ÎcÉîËû@¡ÎS÷ÎÙ@¡Îbu%F @¡ÎS÷ÎÙ@¡Î[šu@¡ÎS÷ÎÙ@¡ÎS©*0U@¡ÎS÷ÎÙ@¡ÎT,<ží@£îPå`A‰@£î¤“t¼@£îPå`A‰@£îy0¾ í@£îPå`A‰@£îl"h Õ@£îPå`A‰@£î]ó¶E¡@£îPå`A‰@£îY#¢œx@£îPå`A‰@£îZ¹õY´@8wâ‚@·€@8)‡+ @2Œí‘hr°@2usê³g @1A‰7KÇ@1ªÍžƒä@0ÚQÎ@0mÅÖ8†@0ÚQÎ@0Ëûµt@0ÚQÎ@0Åo?–ªÎ­¡?òb[±?’÷˜–Èä?Œ^:Òf?’»–j˜ú?‘À?ÙÂ#’?¢F^ì¼Sð?“Öæ…0Âû?ÀpMºÅ?wàËxR?—¿îÁ˜Ë¬?—+Áèlç?®Mìi,†¢?ŽátÖÁ»‡?„ü›ðÓ?ƒƒQçÐ(?‘ ê$4 ?•*†*Zû@@@@@,@,?ð?ð?ð?ð?ð?ð¿)Ew@¿ˆÈRñ ?eðÈ>cž*?zññùò?Ã@¡Î]X!Žå@£îd5±¯Ñ?rËRàˆ?’Lâ[bv?ýó8Þv@oàuG@Ÿn 2@V@¤˜ˆ1&éy@¤˜ˆ´9X@¤˜ˆ1&éy@¤˜‰Çy¦µ@¤˜ˆ1&éy@¤˜‰Ô•,@¤˜ˆ1&éy@¤˜ˆŒç°@¤˜ˆ1&éy@¤˜†¸ºÇ@¤˜ˆ1&éy@¤˜‡ü¹#£@¬ITzáG®@¬ITzáG®@¬ITzáG®@¬IT,<ží@¬ITzáG®@¬IVE¡ÊÁ@¬ITzáG®@¬IT¢3œ@¬ITzáG®@¬IU2a|@¬ITzáG®@¬IU$Ü@5” xFÜ@5”ohÜ@1Ìí‘hr°@1ËÀ6âë@0çKƧïž@0çy¦µ @0°–»˜Çã@0°·€4mÆ@0°–»˜Çã@0±A [À@0°–»˜Çã@0°Ë)^ž?|¬Çëý ?*£|3Né?‘1f_¨Ï÷?Œ ßõIyû?‘u×íËÄî?ÍàÊaùX?€‚ñêã ?’pP‡È»?³2ºŽ'?íu…XÚ?‘q1ýAt?e¾DQ„Q?ƒ]€µ,VÞ?u/®Xã?„‘Za¹Q?ƒ ?ÿ½?‡<û¡71?†ùadô|@@@@@*@&?ð?ð?ð?ð?ð?ð¿0^à2Ð?(<±b@?&ª«/Ñ'?úÉxD4P@¤˜ˆ*Z%@¬ITÛí A?FØ8?ª¥?(‚LJ3„?›jüºÏl?[ÈÈh!Q@ŸgaÒsN@W@®J´9X@®J Iº^@®J´9X@®JŒç°@®J´9X@®J +Àƒp@®J´9X@®J w1Å@®J´9X@®J ÓÃa@®J´9X@®J ‘hr°@®/õ?|í‘@®/æfffg@®/õ?|í‘@®/öý!ÿ.@®/õ?|í‘@®/õŽ!–S@®/õ?|í‘@®/ôýó¶G@®/õ?|í‘@®/ô•*™@®/õ?|í‘@®/ñë…¸@7„¯O „M@7~Ëûµt@33S÷ÎÙ@33MjO@2A‰7KÇ@24mÅÖ8@2QÞi­BÄ@2QuŽ!–S@2QÞi­BÄ@2Q×Ûô‡ý@2QÞi­BÄ@2Q$Ý/?}Ñ¿ž,?’ÕOäª9ô?“‡ƒ×¤?Œ9‚Ù.?’FL{öó?‘äÿ̉ߚ?¥Ìõ}êáþ?”n‹rÕ|?”ïZºœ·?‘l™šU?’$) ‘?”V.·H?‡š¿]bœ?3XMÊV?†ž5ðqë?†k3`E`-?‰_uñšó?ˆk! ¨l@@@@@"@$?ð?ð?ð?ð?ð?ð?f +úq?Q¬ÄŠ?FœêxDê«?\Ày+€1²@®J ›ú@®/òæ}Äà?l•F§ ?r0‚ªZ?ØÆ:žÕÆh?×Qá Ù@Ÿn½­ôJi@X@¥ãáÊÀƒ@¥ãâ Iº^@¥ãáÊÀƒ@¥ãÞxfg@¥ãáÊÀƒ@¥ãÜJÃ@¥ãáÊÀƒ@¥ãÛQ`g™@¥ãáÊÀƒ@¥ãÚ0Kµ@¥ãáÊÀƒ@¥ãÚë8?=@˜}ó¶E¢@˜}ó¶E¢@˜}ó¶E¢@˜‚jÃÙ‡@˜}ó¶E¢@˜ !Hˆ@˜}ó¶E¢@˜uÂÎW¶@˜}ó¶E¢@˜†Ü€,‹@˜}ó¶E¢@˜‡°Èî@1Hè§æ@1Hè±Úœ@.ö“t¼@.ð Ëæÿ@.íOß;dZ@.áTÉ…ðp@-ÑÑN;Í6@-Â:lˆ4Z@-ÑÑN;Í6@-¿”ŸÌí@-ÑÑN;Í6@-½æ]¦¼¤?É^¨¯Âj?$Ê›:kf?“aHÆÎc ?Œ¼åž.4"?’ŸK¶ÖAü?’7gÎ]]?ÐbMÝn½?’~¥ÚBÛX?“]¸ò4q?-õI{Væ?‘V¬#œ?‘#ajÿ?€bMÕgô?Œ×2@,^Ç?‚}{Ifm?‚é­9œ«?‡>xA ´V?†ØÞÅð,Ÿ@@$@"@"@6@7?ð?ð?ð?ð?ð?ð¿3Ɇó?p]ÕÖ€?6Ô+iíÐ?T.ÒTHD½@¥ãÚæzQ@˜€-åV™?F"<å1e?c!8v±°Ä?…™äOsÜ?¾£ã–›l@ŸrØH^˜Ù@Y@«è÷KƧð@«èýߌ =@«è÷KƧð@«èöõ¿/@«è÷KƧð@«èózD€–@«è÷KƧð@«èóÀHL>@«è÷KƧð@«èõÿG +¹@«è÷KƧð@«èôò¶8j@™{q©ûçm@™{€=ÿ\@™{q©ûçm@™{l/Kñ@™{q©ûçm@™{h—™»H@™{q©ûçm@™{q‰ù½@™{q©ûçm@™{q¨(aÕ@™{q©ûçm@™{u×åB@7òÃÉîËû@7ðçìwZ0@3|í‘hr@3§·©å<@2çKƧïž@2èµù­„õ@2(è§æ›@2,$g¢/}@2(è§æ›@2,Ÿ©å@2(è§æ›@2,gPÄ)?}x—™¤µÜÆ@4; Iº^@3Ò¶®}Vm@2çKƧïž@2¬C,¥zx@2«xFÜ^@2^Ù‡+@2«xFÜ^@2hy=Ùc@2«xFÜ^@2l‹C•@8J¨?εŒŸ(C?»˜èèay?¾¼¬9»?·_¦ò” +Ÿ?Ƀ…*8@8J¨?ÆBÖ›¹?ÁÿýLAÌ?σº&ï¯a?Ä[­“Ÿö ?ÊÇ;|hˆ@8p÷?¡š5w?‘!´ö‚?£yD¼· ?™¼òQh@?»HíÕöU@@@@$@*?ð?ð?ð?ð?ðøøøøøøøøøøøø\@®NÐbMÒò@®NÅ`A‰8@®NÐbMÒò@®NÎ ÚÖ@®NÐbMÒò@®NÑ‘ËvÇ@®NÐbMÒò@®NГë¬:@®NÐbMÒò@®NÊt¿Ù»@®NÐbMÒò@®NÈÄ@¼+@“På`A‰@“ì‹C•@“På`A‰@“G­¼1S@“På`A‰@“BÖÙú#@“På`A‰@“9Ùq:µ@“På`A‰@“A·¸M–@“På`A‰@“IÈy¾‚@8úqÞi­C@8µBZî@2ö§ï²-@1“t¼j~ú@2kxFÜ^@0½Vlô"@2kxFÜ^@0¾¤¨ÁTÊ@2kxFÜ^@0¿|í‘hs?˜ž^ƒÿ*ˆ?Ðf¶ÓH¬?ÄÎȵs¥?‘sNX„êÒ?ºÎ(Q!ƒK?¬È7…‚9?‘â%ì˜ ä?ä©^ú?Îê¤/ù?¦)©`%;?ÉGZ> +º?ÀXEMˆä?¼Ã±0âŠh? Ï§¥7?–Ϥ?–¥ Ý})\?“6‰møŸã?”Ò +.Ô•@@@@@,@&?ð?ð?ð?ð?ð?ð¿Èø2vp?ÞÖ,€<<?«ztÝi?»³v0B¶d@¬­êwF˜@§…|o†È?Ã¸Š¨ðFÿ?ÕèH÷b²(@or“ò>O›@z¾Véãt¬@ŸbÎ|tó7@^@¡²Ã•%@¡²†éxÔþ@¡²Ã•%@¡²š¹õYµ@¡²Ã•%@¡²¦1ø @¡²Ã•%@¡²¥`A‰7@¡²Ã•%@¡²“ŽóMj@¡²Ã•%@¡²‘hr°!@¥žÛ¥ãSø@¥žÊÀƒ@¥žÛ¥ãSø@¥ž¯Ÿ¾w@¥žÛ¥ãSø@¥ž¹Œ~($@¥žÛ¥ãSø@¥ž­í(Œç@¥žÛ¥ãSø@¥žžß¤?æ@¥žÛ¥ãSø@¥žŸ¤?åÉ@5ëµsê´@5<Æ?@1ÜIº^5?@1£ÉîËû@1`A‰7L@0馵 (@0𖻘Çã@0¸ÁTÉ…ñ@0𖻘Çã@0¹ùrGF@0𖻘Çã@0¹e+ÓÃa?1·†Æjñ?•ò‘éÃ!?˜²éÃ_ÓÔ?ŒR‹w#z?•2q±ÏºÜ?—‡XE%:?žˆ2}?“—-´œc?’F^ì¼Sï?Ò–‚h±n? dÈr”K?¡ìøV?‚á²Olºü?Cx}¹x%?‚ÂÌ]æ?ƒR¨º“JÞ?‰]³ß’Ý?‡Ä­‹›Ü@@@@@(@*?ð?ð?ð?ð?ð?ð?sgèçÇ?§xáÕ`?l°ö{¼¶?‰%bðŒÆ@¡²‘é@¥ž^÷Œõ?Šhî¶d?¦Rç÷!ˆ@OPs/±8@Jî4rïì@Ÿd½.E«Ÿ@_@ ¯\(õÃ@ ¯ çù„à@ ¯\(õÃ@ ®ßEP2ì@ ¯\(õÃ@ ®w5õÄi@ ¯\(õÃ@ ®Èí!u@ ¯\(õÃ@ ®£æÚAH@ ¯\(õÃ@ ®…Ñq'@­~MOß;d@­~9Û"Ðæ@­~MOß;d@­~]#çGr@­~MOß;d@­~']ûD@­~MOß;d@­~4Àüú@­~MOß;d@­~ +PÔa¿@­~MOß;d@­~ØŠ&@8h†YJôñ@8j˜Vs¸@5E?|í‘h@5^î$@4Ct¼j~ú@4c—v¨+«@4mÅÖ8†@4 Þ(Óqµ@4mÅÖ8†@4‹Þq@4mÅÖ8†@4œžÒ &?¥ÕÍWh¿?ªáA‡¤ó?—H¬¯ñnk?™¿-3’0c?­w )qà?½”œÀ/NT?Ÿó%d(¤?±*Tòhg?“Ч©ÿHg?Ÿ„Yªp4q?§Œ%A`Q?°3È +¡¾?ˆlÌOAx°?² +™y$¦?À&XýØÐ?£ˆÂbZ ®?°Ã´f–Ø?¬øñ§æ”@@(@@&@9@6?ð?ð?ð?ð?ð?ð¿šÓòœ˜@¿Ã×i±?L«Y®ß"ç?rÜÃÅäðË@ ®ÍÒþÛ@­~)ˆÍuW?b·ˆDà¾?GÐ’ptß?š“NçÆh?õ÷~C³u@ŸhÓ>ÿçî@`@¬céûçl‹@¬céûçl‹@¬céûçl‹@¬cíV@¬céûçl‹@¬côFsØ@¬céûçl‹@¬cõÜÆ?@¬céûçl‹@¬cÿ|í‘h@¬céûçl‹@¬cø -à@ $Ý/@ ‰7KÇ@ $Ý/@  Ä›¦@ $Ý/@ Xâe@ $Ý/@ Z…‡”@ $Ý/@ JôðØ@ $Ý/@ ð¹@2ãg ù l@2ãˆe”¯O@1#÷ÎÙ‡@1—Oß;@0þV“u@0ôzáG®@0:Ô,<ží@01A [À@0:Ô,<ží@00ØDЪ@0:Ô,<ží@01$Ý/?ðO­W¬ÃÆ?Qdöÿô¼?™8ŠAWdm?“ׂa†Üü? £× +=p¤?4Üûõ¯?ð„ƒ;0?’ ŠŠ¤Hì?¥-hm7ªµ? vùv“?¤ Á lŸŸ?¢cšŠ5W?ð!̃?ŒöOÿÝ?…I‘ÒÁ/À?†O.ce?‡”_Õ­çW?>LR_5?ð@@@@,@*?ð?ð?ð?ð?ð?ð?_üz°º?]_þ{#?b9ûÐvµ?TbÚ„ ô@¬cøæÇ f@  ¢„?ró€Î Æ?c‡bŠKÆ?Æç»WXÈ"?›t-bPÖ¾@ŸsæÃf@a@¨Ä‡+ J@¨Ä‡®zá@¨Ä‡+ J@¨Ä‡+ J@¨Ä‡+ J@¨Ä‡®zà@¨Ä‡+ J@¨Ä†§ï²@¨Ä‡+ J@¨Ä†Ü]cˆ@¨Ä‡+ J@¨Ä†§ï²@¦Ä(õÂ\@¦Ä)7Kƨ@¦Ä(õÂ\@¦Ä(ÁTɆ@¦Ä(õÂ\@¦Ä(ÁTɆ@¦Ä(õÂ\@¦Ä(ÁTɆ@¦Ä(õÂ\@¦Ä)7Kƨ@¦Ä(õÂ\@¦Ä)ùrF@0ºqÞi­C@0ºqÞi­C@/.V“t@/.Hè§ç@.Ýó¶E¡Ë@.ÝÙb¶®@-u¨Xy=Ú@-u¨Xy=Ú@-u¨Xy=Ú@-u$Ý0@-u¨Xy=Ú@-uÂ\(ö?Éa—Ã(Ê?äm°û0Ž?‘@˜¯³¸?‹¦ ŸYÔ?ùª¨?¾ƒìÈÁ?ÐbV‡,?’&u÷E»@?ŽËÜ¿€?/ò×ÈZø?Ó%y*£=?oÌ‘'ýT?€b¡´ñ@?Œ­·Ž~('?‚2Y0âµ?ƒE 8?†–f_ÔŠŠ?†žóB» “@@@@@&@*?ð?ð?ð?ð?ð?ð>â €€?"{ˆŠx?Ì b?4öb@¨Ä†·Zsî@¦Ä(ýš28?"Z‹ ?(ij›/¨?@†Ö¿9õ?JÒswÅ`{@Ÿs÷E@b@ ‹¢MÒñª@ ‹¢MÒñª@ ‹¢MÒñª@ ‹š>/Í}@ ‹¢MÒñª@ ‹¦ËÖ•@ ‹¢MÒñª@ ‹˜wzÒ‘@ ‹¢MÒñª@ ‹³µÒŽ¢@ ‹¢MÒñª@ ‹·¿¸@ŸÜ™™™š@ŸÜ™™™š@ŸÜ™™™š@ŸÛÛIøL”@ŸÜ™™™š@ŸÜ5ãñ…@ŸÜ™™™š@ŸÜkãe@ŸÜ™™™š@ŸÜ –ð€Ã@ŸÜ™™™š@ŸÜSÑ Þ@2Y*0U2b@2Y&éxÔþ@.Çï²-@.¦Õ +Wç@- ƒn—@-–,7‰.4@-™b¶®~@-< +!°G?@-™b¶®~@-e…x âb@-™b¶®~@-~‚l¤e?çÞ–L I?‘óýÔ+B?“®(¬ 'õ?Žóä”r2?š•ñù#h…?¢uülP“ç?èŽìr¡-?’†jö¼»²?‘M¡¥?š6ͧzÞ÷?ýˆ‘aE?¤§º~Ó€?æ ýM¹<Ç?Œ°°½oª?ƒ”‡åÌ2?‡à[JÅé?‘‘w¹d4?Œ!‰ør;@@"@"@$@,@0?ð?ð?ð?ð?ð?ð?:%Ì&À¿š)Xæ`?i=ˆbCƒ?{1Þ‘¨Á@ ‹¨":0_@ŸÜ3¬"ÕÌ?v4uÏq™?ˆ¦ók¿³?Ô³´'xo?í<Þјóú@Ÿq僥´@c@ O?|í‘h@ O7§N÷š@ O?|í‘h@ OVbIKo@ O?|í‘h@ OF(Â%@ O?|í‘h@ ORÀ?@ O?|í‘h@ OEî*8@ O?|í‘h@ OAiñ@¢b¼í‘hs@¢b«èn˜ @¢b¼í‘hs@¢bi,SG@¢b¼í‘hs@¢b‚j[@¢b¼í‘hs@¢bã×9@¢b¼í‘hs@¢bŒK,Ó@¢b¼í‘hs@¢bžájrV@8·â‚@·€@8ã’?îµê@4{ Iº^@4aˆ +—Á@3²-V@3‚¾šÃÌH@2ÔmÅÖ8†@2Âûg3 9@2ÔmÅÖ8†@2ª Ô?yÊ@2ÔmÅÖ8†@2”vФž?‰døëŽìÃ?Ÿ ‰àü;O?—œy;4å?ò'ìûLä? Ëæ}ßw?©"j­ñª÷?±»àd„˜?¨“äÝýìÀ?”øŠIpì"?˜«¨ƒ'ùŠ?±,?³›çÈ0s?ÊXN;0q‹?ž?µO7Ø?—½}´²|?–gƒ»¹›’?™º‘ò‰È? ´ÁäÒ‹@@,@$@&@8@8?ð?ð?ð?ð?ð?ð?xirl€¿o§+«–?jetÏÂßð?td’¿@c@ OI®Ÿ§„@¢b“B_ÿä?‹X² +Â?…Ã{æz9Ó@Ç) H#¦?àä¥ÛG‚@Ÿk:è«xÚ@d@¢³ËC•@¢³Ë Iº@¢³ËC•@¢³³Mj@¢³ËC•@¢³®Ëûµ@¢³ËC•@¢³¿¤?åÊ@¢³ËC•@¢³¿¼@¢³ËC•@¢³¹ k¹Œ@¨®÷ÎÙ@¨®° Ä@¨®÷ÎÙ@¨­æ +¦L0@¨®÷ÎÙ@¨­ßU›=@¨®÷ÎÙ@¨­ïŸ¾w@¨®÷ÎÙ@¨­óMj@¨®÷ÎÙ@¨­ë…¸R@5›¹Œ~($@5šCþ\‘Ò@2”›¥ãSø@2ƒn—P@2;Ƨï²@2$!-w2@2œàu÷@1å*™0¾@2œàu÷@1ï¾vÈ´:@2œàu÷@1öOv_Ù?1·†Æjñ? 5)ZS?­Y)Þ=’?¡sâ½ë?£¬3¥ê©©?¡ÀX É ö?|öOÿÝ?¯!ÍMHß?¦¢´‰åR?©º1ø°`?²Õ™ý?«ÊµøÍC?‚á²Olºü?”~ªd•?’‡ïõ+üB?Ž‚1(w?›ÇûP|?¢áÄïÃõ@@@@@,@,?ð?ð?ð?ð?ð?ð¿m'“wÔ¿‚cGÑ?4‰éÛš‚?Yà…ý\Ù@¢³Æ± ž@¨®ÄÂjd?Mæ0œÁ`?p™9³cÍ?™#sýb?ЕXŒ¶êÆ@Ÿ_ZÎØNz@e@¥r&éxÔþ@¥pL1&é@¥r&éxÔþ@¥p]ŠÚ¹õ@¥r&éxÔþ@¥pdµÜÆ?@¥r&éxÔþ@¥p[=ÈK@¥r&éxÔþ@¥p>ùÛ"Ò@¥r&éxÔþ@¥pK’:)Ç@¡‹bMÒò@¡ˆRñ©ûç@¡‹bMÒò@¡ˆyXbN@¡‹bMÒò@¡ˆm(Œç@¡‹bMÒò@¡ˆs¶E¡Ë@¡‹bMÒò@¡ˆxï4Ö¡@¡‹bMÒò@¡ˆ£n.²@9}:’£@6%?|í‘h@50Ä›¥ãT@1{ÓÃa@@4‹"Ðå`B@0ˬq ²–@3Ê0U2a|@0Aä÷eý‹@3Ê0U2a|@0>žš@3Ê0U2a|@0;xFÜ^?óA[ØïF?ZÁ».œ?“ºo½Ô€?”½±·CåV? ÅÃsaS?›ô”G5v?•²»UbB2?’Òc§—Ûí?¢‘âÇZÓT?“Ôð,äÁ?£¾Lך7?ž…–½´Ö?ŒArUã@?“A ç’?Œ¢yëjk±?ŠÒ(>—œ ?Ä;Ãkr>?‹¼`’ i2@@@@@*@&?ð?ð?ð?ð?ð?ð¿ ¼œ…À?„´Œ@?j¦6d(R ?W³aÍ0@¥pNè>&q@¡ˆmïhãâ?‰ÙMæ«`†?uþ-nÚ@æÚRm½¶?Ö‡½W•œ±@Ÿi˜áq?ï@f@¯ÉèõÂ\@¯É÷KƧð@¯ÉèõÂ\@¯Éí¸ºÇ@¯ÉèõÂ\@¯Éèr° Å@¯ÉèõÂ\@¯ÉìcñA @¯ÉèõÂ\@¯Éç“Ý—õ@¯ÉèõÂ\@¯Éç“Ý—ö@ž…¸Qì@ž²-V@ž…¸Qì@ž…¸Qí@ž…¸Qì@žz’£R@ž…¸Qì@ž…¸Qì@ž…¸Qì@ž‡Ë)_@ž…¸Qì@žŒ~($ @8²ÃÉîËû@8¯ìVÕϪ@3žÙ‡+@3 N¤¨ÁT@3@å`A‰7@3Aaä÷eþ@2\ÚQÎ@2\¬1&ê@2\ÚQÎ@2\ÌÌÌÌÍ@2\ÚQÎ@2\64ê?îŠõ ?Žd±Ìº?”&$#ú/ò?’×­“·?“Œ4f(Rú?’IåŠú?•²»UbB2?“?xr¢I?“?T¾¹µ ?”±¤ëµu]?•nW*Ø„?‘êey°úà?»!°ÏŸÛº?Žrø·óæ?aäŽ +Ù?ˆš5|Gå?‹ì3åý?ˆk! ¨l@@@@@,@*?ð?ð?ð?ð?ð?ð¿iº]sy¿nóþdø?EQå¡Ç“N?`P™‘wö+@¯ÉëÑFñü@ž‘§É/R?`]—Œ¶³d?}Z:[ýÔ?³Á¡Á$–Î?ðÍÔq•”ÿ@Ÿn2MÒx<@g@¥eýó¶E¢@¥eþvÈ´9@¥eýó¶E¢Á.„€@¥eýó¶E¢Á.„€@¥eýó¶E¢Á.„€@¥eýó¶E¢Á.„€@¥eýó¶E¢Á.„€@¨%6E¡ÊÁ@¨%6E¡ÊÁ@¨%6E¡ÊÁÁ.„€@¨%6E¡ÊÁÁ.„€@¨%6E¡ÊÁÁ.„€@¨%6E¡ÊÁÁ.„€@¨%6E¡ÊÁÁ.„€@7¹Œ~($@7xÔýó¶@4}‘hr° Á.„M‰ûçm@3þV“uÁ.„QnÙ‡@3úÔ,<žíÁ.„NÜC,¥@3úÔ,<žíÁ.„NÜC,¥@3úÔ,<žíÁ.„NÜC,¥?3ßa=„@8#˜@8¾:@8 >+@8Iç@8Ù?3ßa=„@8Î÷@8i§@8Å@8S@8û—?…ÑTë0Ó@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøh@ªíV@ªíV@ªíV@ªíúCþ^@ªíV@ªð¸»@ªíV@ªì<žì¿@ªíV@ªê0U2a@ªíV@ªó¶E¡Ì@¢!ß;dZ@¢! Ä›¦@¢!ß;dZ@¢!V@¢!ß;dZ@¢!Œ²•éâ@¢!ß;dZ@¢!‘·Xá@¢!ß;dZ@¢!“÷ÎÙ@¢!ß;dZ@¢!…ðoiC@4[¹Œ~($@4[¥ãS÷Ï@2° Ä›¦@2-à @1§KƧïž@1§KƧïž@1:Ô,<ží@19Dg8~@1:Ô,<ží@1;~ÿ—%@1:Ô,<ží@1/Åo?|¬Çëý ?Žd±Ìº?—¿ÔÌÆ?ØTnçE?”?õ±oW?‘äÿ̉ߚ?|öOÿÝ?’“ºƒ;Nû?•ACžO?®>)ž!­?™x9ÿ¥l?‘êey°úà?‚‘´…=Ca?Ž>ž¬ˆ?‡9Â@0wç?’4i+Ëè?’ymícw\?屘Úã@@@@@(@ ?ð?ð?ð?ð?ð?ð?BC9…(¿T€C ?JWÜ,JB7?Qš+†±@ªíàÅøõ@¢!æ3¹?iÞ´hjOü?r¦l<ì?à)6ç°KP?èÙÃ×Þý:@Ÿe…õ•aÂ@i@ Sˆ1&éy@ S†¨•º @ Sˆ1&éy@ SŽÀ±tÁ@ Sˆ1&éy@ S‡ t @ Sˆ1&éy@ S‹{Þ+þ@ Sˆ1&éy@ S‹ã%j¡@ Sˆ1&éy@ SÑNÀì@­5n—Oß@­5n˜3lM@­5n—Oß@­5pÛc-@­5n—Oß@­5|ã½.@­5n—Oß@­5yCŸ¹@­5n—Oß@­5|š;c”@­5n—Oß@­57¨i£@3¥öý!ÿ.@3¤Z¬1@1×+ Iº@1Û”ƒ¤½4@1Ct¼j~ú@1F›!J”ð@1œàu÷@1¾‡N0@1œàu÷@1.ÓL½T@1œàu÷@1íí|cš?|¬Æ Væ?-ubÞô*?’X»Öb8?Œh«IÿRÙ?’o°ÉÏó½?’ë'QŒ?|¬Æ Væ?’S!Æ8Î?‘nG¢7?‘œø>ŽÿO?‘£€´Ë@?’S +ûÚ"j?‹t& +rº$?Žbæ«^åå?ƒ9Á„£f?…3Z#m_?‹oWâ´e?ŠTÐ(~@@$@(@&@8@6?ð?ð?ð?ð?ð?ð?X0±Èl?n}x¨2?%u í(8?"ê›[α@ S‰ÒW:³@­5vgì¯Î?Doj+FÊ?B õ[ÏŽ?•„N\ ¬?BÈ×?˜,@ŸfB˜¸s§@j@¯·!ÊÀƒ@¯·" Iº^@¯·!ÊÀƒ@¯·‰9?¶@¯·!ÊÀƒ@¯·8?mE@¯·!ÊÀƒ@¯·$\{B®@¯·!ÊÀƒ@¯¶÷z’% @¯·!ÊÀƒ@¯¶òD·Â@’Èj~ùÛ#@’Èq©ûçn@’Èj~ùÛ#@’ÈŠãò@’Èj~ùÛ#@’ÈbjvxF@’Èj~ùÛ#@’ÈÇ«Õl@’Èj~ùÛ#@’ÈÂçgG«@’Èj~ùÛ#@’ÈŒKk@4Ì]cˆe”@4Ñ}Œ"3@1ahr° Ä@1FÇSöP»@0Ͳ-V@0¹Ÿ÷T@0®_oÒ @0Qé,3®@0®_oÒ @0ƒÐ¹Ý@0®_oÒ @0…5"uµ\?€‘gQÚÃ?§ÛÂPîÙ½?—€¤6ÖS\?hÎѺ³?¥ª%/_ä[?¿FvÅS?~ì“?ÕÒJ?§3@$;?¦„‚Ÿ¢?¦ uºri¦?­Ú/\Ø?œ»Žšš?‚qnÌ鼿?äØ2ѧ7?„lþmUA?‡!ýe? =CQ»”Þ?™g`ž¾O±@@&@"@"@4@,?ð?ð?ð?ð?ð?ð¿uèw¬?sp’µ¼?rèòâ™7?jŸd¯†@¯·¦Dë@’ÈKõ>%?Œß‹s?®>?†ˆ|h[å@û¢ (U@æôVŠ’@Ÿb¹Îh@k@¬©ïŸ¾w@¬©ðbMÒó@¬©ïŸ¾w@¬©ïÅp@¬©ïŸ¾w@¬©ñN;Í6@¬©ïŸ¾w@¬©ñ‚©“ @¬©ïŸ¾w@¬©ïªÍž„@¬©ïŸ¾w@¬©ë¹Œ~'@¬Îœ(õÂ@¬Î›"Ðå`@¬Îœ(õÂ@¬Îó¶E¢@¬Îœ(õÂ@¬Îœžì¿±@¬Îœ(õÂ@¬Î Ä›¥ã@¬Îœ(õÂ@¬ÎžÅm\ü@¬Îœ(õÂ@¬Îžÿ—#@6VšÔ,<Ÿ@6X_ö”F@1û Iº^@1ú#9Àëî@1È“t¼j@1Èe”¯O@15µsê³h@14‡ü¹#£@15µsê³h@15Â\(ö@15µsê³h@15`A‰7L?|öOÿÝ?àIü'?’Z¡*CÂ?Œä%—ëš?‘úy«ôÊ%?‘_ Ýß?€‚ñêã ?“ÈÂ`?’˜l%F…Z?Níú¾?‘¦‘=W?× ³¸ÑZ?ƒÆ×q„nï?3I¶#i?„A'Š_^?ƒ¼9XNÄu?‡ã ËÄž?‡…¤$Ó@@@@@*@$?ð?ð?ð?ð?ð?ð¿@ŒÑOx?Mó£ò0?>öS­þ ?=”8M‹Ú<@¬©ïŽ«‰r@¬Î} y¹?_ð0¨5D?^j„7Ǫ?Èg˜¶@̨?Ä¡™’Ÿ@Ÿg>ÿœs@l@§?bMÒñª@§?_¾vȳ@§?bMÒñª@§?a-w1‘@§?bMÒñª@§?^ߤ?æ@§?bMÒñª@§?R×s@§?bMÒñª@§?]ŠÚ¹õ@§?bMÒñª@§?XºÇË@ ËY‡+@ ËY‡+@ ËY‡+@ ËWÁ½¥@ ËY‡+@ ËRñ©ûç@ ËY‡+@ ËYrGE9@ ËY‡+@ ËUÂ\)@ ËY‡+@ ËTzáG­@7 ØDЩ@7œô!-w@2ë¥ãS÷Ï@2éb¶®}@1ûƧï²@1øÎp:û~@1‘Þi­BÄ@1‹quŽ!–@1‘Þi­BÄ@1ŠçÕfÏB@1‘Þi­BÄ@1Žžš?¤ÊŽaÈ]Ó?”·'‚5â–?“%HCâ=s?’gh·T°? `F§C:?–À¬‡$?›’qvš°•?”n‹rÕ|?•0›ˆÄØû?øQñĨó?™=M÷‹¸?”µìSõüS?”l´~ðJ?ŽátÖÁ»‡?…àú^Á?†3_¾ˆ?K·‘d\?Žrø·óæ@@@@@,@(?ð?ð?ð?ð?ð?ð?%;†T€¿R(’?d.ÎÃůÌ?BÓϼ®@§?W bn@ ËWcPwÈ?|©D+3`å?] ±“?äyÞÃmq?®ZÝ5Z¼J@Ÿn/Tös,@m@¨ßÒñ©ûç@¨ßÓ3333@¨ßÒñ©ûç@¨ßÔ#Ý)@¨ßÒñ©ûç@¨ßÔ6ö/_@¨ßÒñ©ûç@¨ßÔ!~Šƒ@¨ßÒñ©ûç@¨ßщ7KÇ@¨ßÒñ©ûç@¨ßÒ(”é@šç¾vÈ´9@šç¾vÈ´9@šç¾vÈ´9@šç¼òÏ•Õ@šç¾vÈ´9@šç¿Ë’:)@šç¾vÈ´9@šçÀVPÒ2@šç¾vÈ´9@šç½É]›ÿ@šç¾vÈ´9@šç¾Ö¥t +@1[¹Œ~($@1[Ƨī®@0}‘hr° @0}ÅáØ@²@/†éxÔýô@/‡AbÚ|”@/úÇË)_@/ûFø.”@/úÇË)_@/û‰ Z[—@/úÇË)_@/û¿²øQ„?É^ýTïŽ?áq«yÈÊ?‘8R¡~Äx?‹Ôo«$Í ?þ!!.Æ?¼nh&Í?ÐbMÝn½?’½ò?«1©;ýà?5' *x?êê-4éB?bRu£PL?€bMÕ]f?Œ¾ŸY¤?‚ˆT.g?ƒv¡s{Ô?†¸_æ=DÃ?†¤2ËU@@*@,@(@4@2?ð?ð?ð?ð?ð?ð¿OQF–¿6ð*??w”½É(?3+ú‚£í@¨ßÒÇ#¤@šç¿ñó?N^k ¹Ä?B(t–Žž[?–=æ`…¡?|ÂË‹¶‚@Ÿs„•Fü@n@¤ƒ%`A‰7@¤‚Ö“u@¤ƒ%`A‰7@¤ƒ*W§†Â@¤ƒ%`A‰7@¤ƒ%¡ÊÀ‚@¤ƒ%`A‰7@¤ƒ$Z¬@¤ƒ%`A‰7@¤ƒ&µ (@¤ƒ%`A‰7@¤ƒ$?åÉ@¯IzáG®@¯Ie`A‰7@¯IzáG®@¯I{À6ã@¯IzáG®@¯Iz¬2@¯IzáG®@¯IxQë…@¯IzáG®@¯I}p£× +@¯IzáG®@¯I{²þÅm@7” xFÜ@7Iã¼Ô@2—+ Iº@2˜FÜ]c@2Ðå`A‰@2,<žìÀ@1\ÚQÎ@1^p:û~‘@1\ÚQÎ@1]ÈK]Í@1\ÚQÎ@1\]cˆe•?Ô[_ÇgÂ?‘ ·èe?‘=?ùKh?‹ËØ|*(?‘ŠR%¨(0?‘uu‡éÚÇ?°ý¢¾Ýb?—b…ªH=?€s8rÅ?-õI¸`K?‘¶|+üÎ~?Éöm/wˆ?=d­úå?ƒúʳ_Ä?†¤c·Ó—1?‡&üòI?ˆA0û)n@@@@@@?ð?ð?ð?ð?ð?ð?:½}h8?e"2ñ™€?]JvT£Ì?YB=åéH@¤ƒ$ïèmÚ@¯Iz}ü=x?kÅCï=˜ë?k^6YV?Ҭ˷g +?ÏoÆF¹>7@Ÿrç-’“b@o@¢à["Ðå`@¢à[çl‹E@¢à["Ðå`@¢àZŸ¾vÉ@¢à["Ðå`@¢àTÉ…ðo@¢à["Ðå`@¢àWéùr@¢à["Ðå`@¢àXQë…@¢à["Ðå`@¢àW1Å@­¡°£× +=@­¡°å`Aˆ@­¡°£× +=@­¡®±Ä2É@­¡°£× +=@­¡³Ý—ö,@­¡°£× +=@­¡²-V@­¡°£× +=@­¡¬<žìÀ@­¡°£× +=@­¡°-à @5Hè§æ@5!–R½<@2õãS÷ÎÙ@2ö?¼@2â-V@2äFs×Ü@2(è§æ›@2*dÂø7µ@2(è§æ›@2-w1Å@2(è§æ›@2+µsê´?|öOÿÝ?µ‡:úÎ ?” +Ÿ”îtI?‹ÑqÔ@vÿ?“¦Æ_ÌdA?“DŽèw–?1·†Æjñ?“$i «%h?’$ûJw"Ú?’GÎ>GÅ?•’nî …?‘yÃúCŠ?‚Ö˜>µDà?ŽOv_Ø­«?ˆïhƒEõ§?ƒ­=aÊw%?ŒC ãSG?‰w¿˜Í¶ª@@@@@*@&?ð?ð?ð?ð?ð?ð¿Q2ÀŸn¿4¬<¨`?+ìARG*T??íŽdY.V@¢àY’¡…(@­¡°WP]Š?Kèz[/?`¡“°ž?¡Ã—ö:P?ÆÀ[Kêl@Ÿff[ðâ˜@p@ªº&ffff@ªºLíÆ«!@ªº&ffff@ªº;ö„»@ªº&ffff@ªº3„fO@ªº&ffff@ªº0ÀÃåç@ªº&ffff@ªºxŒ½É@ªº&ffff@ªºV¥ø‡#@–ÃNÙ‡+@–ÃÌv N@–ÃNÙ‡+@–©E¥rÛ@–ÃNÙ‡+@–´{»€ò@–ÃNÙ‡+@–ÂWWO]<@–ÃNÙ‡+@–†û]ô@–ÃNÙ‡+@–š¦ƒ´@7+µsê´@7(¸ò @4«¥ãS÷Ï@4ŠZ΢PU@4†“t¼@4\"8Âlä@3ýcˆe”°@3ÒÈÒÙã@3ýcˆe”°@3ÈL|¾U@3ýcˆe”°@3Ù¸íÍ?¼þUÜÆ?œ¦ú—k'?©_ ¿ê4°?£ª˸ŸM?±ªaÔE=?¦8ò3@À?Æ¢¾üÒ?¢1ÞF#†ÿ?±ÜGŠ}¸?±W¸ýöL*?´¡À8J?¸z wv?ÎÄhÜ<žƒ?ÕdÞÄX?‘¾§ðc"?‰éê?"‚ÿ?”4N³e6Ú?™Sák€@@$@,@*@9@:?ð?ð?ð?ð?ð?ð?…°½­U¿-OCo ?‡&:¡?–Óe˜ Í%@ªºFÔ…Ð@–Â)Þ â?ž¤2¿ùðÎ?¬Frûm@§ì4h«Â@â<Ö•§ú@Ÿo((°(ø@q@ ‰ÍÒñ©ü@ ‰ÎV“@ ‰ÍÒñ©ü@ ‰Ï;À®Ø@ ‰ÍÒñ©ü@ ‰ÐÜI%…@ ‰ÍÒñ©ü@ ‰Ñ¿^Wv@ ‰ÍÒñ©ü@ ‰ÐoeêØ@ ‰ÍÒñ©ü@ ‰Ï^‰Oô@¤‹Æ§ïž@¤‹ÇN @¤‹Æ§ïž@¤‰ßõ]©@¤‹Æ§ïž@¤‰v¹Â¼@¤‹Æ§ïž@¤ˆ]·k<@¤‹Æ§ïž@¤‰G§²ï@¤‹Æ§ïž@¤ˆ‘2ˆ¿@3IÎ_oÒ@3IîËû¶@/…`A‰7K@/ƒ¿ø¨ó©@/ÊÀƒn@.þ¸Që…@.…oi@.€²XmúÍ@.…oi@.€e«yZ3@.…oi@.€yãë"?|¬h2:“?ÔˆN³ +U?‘NUŸ˜–?‹îJ×ûú?‘ƒê­ñ?Ö³L_™v?|¬Æ Væ?’ŽcLä±?ùc1ut?W%æ29?‘8¬è_ u?þ¦9™#?‚nÓ3î‰?Œµ»Ò]?‚ƒ„b%£u?‚ò¸ÞÚu^?†²!”,ª8?†´%ü:Ã@@(@*@$@8@6?ð?ð?ð?ð?ð?ð?>¢TõÀ¿G“b*Œ?7J]÷92‹?*‘}&S“@ ‰Ï•G.A@¤Š¢Ñ¡?W)†mû?Jê­_ç!?½$h7\ç”?¢fÕ° +@ô@ŸfÎa®±u@r@¬V„“t¼@¬V†$Ý/@¬V„“t¼@¬V—ö+l@¬V„“t¼@¬VªÚ¹õY@¬V„“t¼@¬VÓ àÞÓ@¬V„“t¼@¬VÝÈK_@¬V„“t¼@¬VÄM:“@¨uâMÒñª@¨uâMÒñª@¨uâMÒñª@¨uÿb¶®}@¨uâMÒñª@¨v +ôðØE@¨uâMÒñª@¨vóMj@¨uâMÒñª@¨v(´9X@¨uâMÒñª@¨v:)Çz@5²ÃÉîËû@5²¶®}Vm@1ã÷ÎÙ‡@1Ò¼£n@1PA‰7KÇ@17eýŠÚº@1 +0U2a|@0ã9Àëíú@1 +0U2a|@0â×sü@1 +0U2a|@0ãÉîËû?|¬Çëý ?ŸB¦Áe‡?©ÖÌC³1?¹§—~ÃL?½ë;V?²¹DrÜþ¸?€‚ñêã ?ŸNÀH?®SiÙ܃ú?©%™¬ÅW?¾ +ÁHQÏj?°ˆÑªC¬#?‹?ü}(´2?\{ÏïŽ?‹f°ùr[ƒ?“äÐå÷à?“ )D)?§^ÐÜ_žr@@@@@,@&?ð?ð?ð?ð?ð?ð?f†pÀ?‰ùó=1?pÝÝ ÊK¨?e´OäýAÍ@¬V“yÛ@¨uìñ«?~Í!¿|_?u?@†0ù?êňR\?àD‚–c¼Ú@Ÿ\e_Íþ@s@žÿZ¬1@žÿ_¾vÈ´@žÿZ¬1@žÿTÉ…ðp@žÿZ¬1@žÿz–¼@žÿZ¬1@žÿžƒä%°@žÿZ¬1@žÿ<žý[ï@žÿZ¬1@žÿCa@N@«ª¨õÂ\@«ª®¹)æ\@«ª¨õÂ\@«ªªJŒM@«ª¨õÂ\@«ªíúCþ^@«ª¨õÂ\@«ªâ¶®}V@«ª¨õÂ\@«ª°›+ñê@«ª¨õÂ\@«ª©îËû@8Ç>«6z@8Æ•e.Í@4+ Iº@4êJŒL@397KƧð@3&»˜Çâ‚@3QÞi­BÄ@33t¼j~ú@3QÞi­BÄ@3BT=¹¦à@3QÞi­BÄ@3>±Ä2ÊX?•w«ogŸl?­gžóÉ?¦¶÷w¿û?°8 ÆYÍ?›šØõ×Ü¡?¢ÀÂêVAg?µ(ÖÐl_‚?§,•4,ô`?½Çýë/?¸èÛ”ýY?™T=ö®ÝU?¤2R2'Ö•?³{ÐQ×y?ª=Xçý?¡©LÒü¬?ª¢×¿l?˜d7õ—?²¥WÁÞú¬@@@@@3@&?ð?ð?ð?ð?ð?ð¿k¤oK*€¿jœ¯BÐ?j/-Ñ:ð?z˜‚°;A@žÿK¯^pB@«ª²¶+Ô?}[ÍŠÑL?:T²?ú_Z%ES?ïêýËz@Ÿp2«Ú@t@ ³õ?|í‘Á.„€@ ³õ?|í‘@ ´!|4bé@ ³õ?|í‘@ ³þ¼‹Î@ ³õ?|í‘@ ³ý îû¬@ ³õ?|í‘@ ³ÑËÓøE@ ³õ?|í‘@ ³Ú^0AJ@¡rr-VÁ.„€@¡rr-V@¡r~ûX P@¡rr-V@¡r^€ÿ#S@¡rr-V@¡re m@¡rr-V@¡rFx @¡rr-V@¡r8‘ôSM@8è†YJôñÁ.„>¤µÜÆ@4^Ù‡+@45@¶ã³ƒ@3»Æ§ï²@3ŠBÕ´në@2ó&Á½¥@2Ö [­ú@2ó&Á½¥@2ÈšÔ«ª@2ó&Á½¥@2ÊÕé 7û@8J¨?š /¹|?‘y2ÈãÁž?‘ÌÑîšóÉ?©Vï2ª¥?¤|Û·t¼@8J¨?’\pe³ +? 7ê OW?•!ZÁó“ ?°möC¤?¬¬Ñ½­4@8p÷?£ÉleÏž$?¥”§puÏ?„¢GyÜt¡?›Ëm\•è‘? 4ÃîŸ@@@@4@3?ð?ð?ð?ð?ðøøøøøøøøøøøøu@¨TOß;d@¨TˆõÂ\@¨TOß;d@¨TÅÖ8†@¨TOß;d@¨TŽV“@¨TOß;d@¨TÒñ©ü@¨TOß;d@¨T‹'»0@¨TOß;d@¨T‰“ àß@¤úß;dZ@¤úäÝ/ @¤úß;dZ@¤úß¼@¤úß;dZ@¤úßU›=@¤úß;dZ@¤úßb¶®}@¤úß;dZ@¤úßåÉ@¤úß;dZ@¤úܹ#¢œ@7}:’£@7z)Çy¦µ@0J^5?|î@0J6âëC@.N—Oß;@.NŠqÞi­@,Vð¸»@,V®}Vlö@,Vð¸»@,Usê³g¡@,Vð¸»@,UY³Ð|…?1·†Æjñ?êÚÏ$?‘ÌË>¯f?‹¦ ŸYÔ?’š'†­`í?‘PÊÑ<Ýl?‚á²Olºü?’7Îf¬ps?~ËQ§?0ÜN :s?’£ôùÎ8ï?Éöm/wN ?ƒ ?ÿ½?†©b/bJö?†Óß +tõ@@@@@(@$?ð?ð?ð?ð?ð?ð?@¢_{¿YÝ;r?Cͳ;h%?0“ŽCÜC…@¨TŠ’§\Î@¤úák•P?cªBçš)?PÏ×"Ì?B?ÒHax´2Ð?¦îïNÜñ+@ŸgðjE’ù@v@¥4öÈ´9X@¥5ì‹C•@¥4öÈ´9X@¥5y=Ù@¥4öÈ´9X@¥4ï²-@¥4öÈ´9X@¥5‰ 'R@¥4öÈ´9X@¥5¯O „@¥4öÈ´9X@¥5 +#9Àë@¦Ä Òñ©ü@¦ÃE`A‰8@¦Ä Òñ©ü@¦Ä1[W>«@¦Ä Òñ©ü@¦Ä8Që…@¦Ä Òñ©ü@¦Ä*W§†Â@¦Ä Òñ©ü@¦ÃöÈ´9X@¦Ä Òñ©ü@¦Äu%F @7Ç>«6z@7–E¡ÊÀƒ@3\Iº^5?@3PHðŽ@2gKƧïž@26lô!.@1æYJôðØ@1ù^žš@1æYJôðØ@2[À6ã@1æYJôðØ@2tSŽóN?î5uê[EÙ?¤5‚O}Ó?¨bY¶®å?¤C: +?® ÍÓâš?¢©LÚTk?è9›ïŸ“?U +£?00?Ÿ}M ¾ñ?§7&Öcè?³‡Täþ¦Ï?¯ áñ M?Ö°\“Wôg?©(p@òvù?±A\ÿŸ#?¡ÖÖk³R?¨4¨æž?ª\»Oå :@@@@@,@*?ð?ð?ð?ð?ð?ð¿jg-C€¿’ ¨ @?qy´Ò×?†ÏÔb‹ðº@¥5+*þŠ@¦Äc¼[»?Ï…¤ã—%?—ešª?Ï%ZŒ"Y†?íÌ +RRC@ŸrÄ;X¿@w@¦mŠÀƒoÁ.„€@¦mŠÀƒo@¦bÌ¥zxl@¦mŠÀƒoÁ.„€@¦mŠÀƒo@¦iþùÛ"Ò@¦mŠÀƒoÁ.„€@¦mŠÀƒo@¦ihÛ‹@šOY‡+Á.„€@šOY‡+@šR° Ä›§@šOY‡+Á.„€@šOY‡+@šG\(õÂŽ@šOY‡+Á.„€@šOY‡+@šI-(Œç@8ãg ù lÁ.„>¤µÜÆ@4Ô›¥ãSø@1™Çy¦µ +@3¶§ï²-Á.„QnÙ‡@3°–»˜Çã@11ë…¸R@3°–»˜ÇãÁ.„NÜC,¥@3°–»˜Çã@1 ¾ß¤@@8J¨?ÄÛ.¯qÊ@8¾:?Áu86@8Iç?ÐUŠ¢’zW@8J¨?¼ž‰´7*@8i§?´Ù¹£—N›@8S?Ô|pU½w@8p÷?”܉a^±‚@8p÷?‹µ¼a@8 Ø?ªé¦ªC¨@@@*?ð?ð?ðøøøøøøøøøøøøx@©Â"Ðå`@©Â^5?~@©Â"Ðå`@©Â¸Që…@©Â"Ðå`@©ÂÇâ‚A@©Â"Ðå`@©Âýó¶E@©Â"Ðå`@©Âe+ÓÃ@©Â"Ðå`@©ÂE¡ÊÁ@¬";dZ@¬"áG®@¬";dZ@¬"ÈK^@¬";dZ@¬"×Ûôˆ@¬";dZ@¬"ÊW§‡@¬";dZ@¬"Z¬ @¬";dZ@¬"$ x@8(†YJôñ@8,¹#¢œx@3ý‘hr° @3õŽ!–R½@3¾V“u@3´Ö¡aä÷@3n_oÒ @3g_oÒó@3n_oÒ @3iÔ•*™@3n_oÒ @3kW>«6z?¥K¶{Oÿ?àIü'?›Ì~” #?–àa¦vfVŠ?“ŸºõÒ‡©?’Oûh´6c?°4\ɵ@@@@@*@*?ð?ð?ð?ð?ð?ð¿)›§ïp¿p·ÿ,?Qp€ŒÍm‚?I»¸g}'÷@©Âke A@¬"Ʋ~b?i¿øÝõ¨­?oÆ[XhŠË?¹yš?¾ÉÖ×÷°@Ÿk^„Œ>Î@y@Ÿ­F§ï²@Ÿ­'l‹C–@Ÿ­F§ï²Á.„€@Ÿ­F§ï²Á.„€@Ÿ­F§ï²Á.„€@Ÿ­F§ï²Á.„€@Ÿ­F§ï²Á.„€@Ÿã +=p£×@Ÿã 7Kƨ@Ÿã +=p£×Á.„€@Ÿã +=p£×Á.„€@Ÿã +=p£×Á.„€@Ÿã +=p£×Á.„€@Ÿã +=p£×Á.„€@7›¹Œ~($@7lµÜÆ?@3=‘hr° Á.„M‰ûçm@2y7KƧðÁ.„QnÙ‡@1ÙŒ~($ Á.„NÜC,¥@1ÙŒ~($ Á.„NÜC,¥@1ÙŒ~($ Á.„NÜC,¥?æ ç«Z–@8#˜@8¾:@8 >+@8Iç@8Ù?æ ç«Z–@8Î÷@8i§@8Å@8S@8û—?æ¡‚á¾A@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøz@ ü¸Ôýó¶@ ü¹‡+@ ü¸Ôýó¶@ üºZP”ê@ ü¸Ôýó¶@ üºÐÔõ@ ü¸Ôýó¶@ üº[–(Ì@ ü¸Ôýó¶@ ü·Ó¹«Ü@ ü¸Ôýó¶@ ü·ñë¤@¤`A‰7L@¤`A‰7L@¤`A‰7L@¤_;ÌH@¤`A‰7L@¤^Kmî+@¤`A‰7L@¤^5½*â@¤`A‰7L@¤ate‹@¤`A‰7L@¤_¯2­ø@2Î쿱[X@2Ï(½LWØ@/{"Ðå`A@/x -à @.&éxÔþ@.¨agš@-³üPH@-°ØÏ˰@-³üPH@-°f},GT@-³üPH@-°ÕàÓú?É^ž6õP?¾¡¦£–?‘(u‹¹HØ?‹½ö’˜©?‘7p‰?³U@Zþ?ÐbMÝn½?’Îü¥ó ?‡š?-õF|îè?ò wÿ!H?Jê©Ùãu?€—7݉‡?ŒµœÛ»~r?‚„UAÕ|?‚èLV#7?†ªÀÜ?†ØÄ|°ˆ@@@ @"@4@(?ð?ð?ð?ð?ð?ð¿R,1µ(?Gf1»?9¦‰ÜñƆ?JéXg9é,@ ü¸ãh°^@¤_§}5?H³X¦^ø·?YˆTþºÕ?ß³š ´?¬‡±3w‰@Ÿs‰ é‚@{@§`Rn—P@§`BÐå`C@§`Rn—P@§`$tS@§`Rn—P@§_þ5?|ï@§`Rn—P@§`W>«6@§`Rn—P@§`p£× +>@§`Rn—P@§`1&éxÕ@¦KéxÔýô@¦KÒn—P@¦KéxÔýô@¦KÛšu@¦KéxÔýô@¦K£× +=@¦KéxÔýô@¦L“t½@¦KéxÔýô@¦Kãä%®æ@¦KéxÔýô@¦Lˆe”®@9 Î_oÒ@9IQ‚©@4®5?|í‘@4° Ä›¦@4¢-V@4ÅãS÷ÎÙ@3µµsê³h@3¨1&éxÕ@3µµsê³h@38bMÒò@3µµsê³h@31N;Í5¨?óA[ØïF?¥d`ÿwªÁ?·ÖËÂ~?º ÞÑ·?Ê«[‰â?Õã$q¬ à?º,eª ™?•wi¢‚*?¤å ù%£a?§ãcé(&ò?Ó’âºÚ ?Ó¾x´ÁF?ɦÇvY¸?¥k2ïm?’÷ ¬n±?’Oûh´6c@@@@@*@(?ð?ð?ð?ð?ð?ð¿o!u‡Ñ¿—a{K½À?c8ž¤¯9?tÿr€ïÞ@¯Ç.zY@¤˜e†þ>??}/§KÄÒ?”2*váb?Þ"Ó±ª@m‰UæwÓ@Ÿk™9×@¼@}@Ÿ¢1&éyÁ.„€@Ÿ¢1&éy@Ÿ¢×G @Ÿ¢1&éy@Ÿ¢8992@Ÿ¢1&éy@Ÿ¢E"yÙ@Ÿ¢1&éy@Ÿ¢\S@Ÿ¢1&éy@Ÿ£å{@¤|¢Ðå`BÁ.„€@¤|¢Ðå`B@¤|ZêlH@¤|¢Ðå`B@¤|¦t±ò@¤|¢Ðå`B@¤|‹°eñÒ@¤|¢Ðå`B@¤|‘2•Ç@¤|¢Ðå`B@¤‚¸Ï&b@9p4mÅÖ8Á.„>¤µÜÆ@3Ê^5?|í@3´vƆë&@2´“t¼j@2¦$6þ¶@2ÚQÎ@1þö”Fs‚@2ÚQÎ@2ã¡ ò@2ÚQÎ@3)¾xê@8J¨?cÞ~¬Vî?£Tªÿó¨?œv«S }?¢âQ×Wb(?°î6ÀäÌ@8J¨?“•>u N—?¨Õ Ýu}?§þØÕª¿Q?¡h["ÒÎÝ?«WìuFY@8p÷?Œ÷8Ï)sü?•¬[†ƒ?ÖYÉdz?Œ9ûÃO­ì?šSLé´ˆ½@"@*@$@8@1?ð?ð?ð?ð?ðøøøøøøøøøøøø~@©4¼j~ú@©]p£× @©4¼j~ú@©— +=p¤@©4¼j~ú@©¬L˜_@©4¼j~ú@©GE8ï6@©4¼j~úÁ.„€@©4¼j~úÁ.„€@ üËC•@ ý 1&é@ üËC•@ üû=ÈK@ üËC•@ üÈ´9X@ üËC•@ ü£S÷ÎÙ@ üËC•Á.„€@ üËC•Á.„€@8Žì¿±[X@8%$Ý/@5ë¥ãS÷Ï@5ÚCþ\‘Ñ@5’Ðå`A‰@5-w1Å@50–»˜Çã@5F§ï²-@50–»˜ÇãÁ.„NÜC,¥@50–»˜ÇãÁ.„NÜC,¥?¸å…þW&l?” ©›’?È„ 2 Ë?°X}vÕé@8Iç@8Ù?ÀÊ»d9\?¾¤¸ß¤ +B?À­ŸÇ¿?¾ÀI å @8S@8û—?èóºWßu€?­#Çò¯½?³fgÁ˜?¼å…¯Öé©@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøø@«[…¡ÊÀƒ@«[o\(õÃ@«[…¡ÊÀƒÁ.„€@«[…¡ÊÀƒÁ.„€@«[…¡ÊÀƒÁ.„€@«[…¡ÊÀƒÁ.„€@«[…¡ÊÀƒÁ.„€@ª1º^5?}@ª1·ÎÙ†@ª1º^5?}Á.„€@ª1º^5?}Á.„€@ª1º^5?}Á.„€@ª1º^5?}Á.„€@ª1º^5?}Á.„€@92ÃÉîËû@92ÞÑ·@5° Ä›¦Á.„M‰ûçm@4K"Ðå`BÁ.„QnÙ‡@3𖻘ÇãÁ.„NÜC,¥@3𖻘ÇãÁ.„NÜC,¥@3𖻘ÇãÁ.„NÜC,¥?­g;+³ût@8#˜@8¾:@8 >+@8Iç@8Ù?3ßa=„@8Î÷@8i§@8Å@8S@8û—?²yMa‘€@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø€@¬Ç?|í‘h@¬Çc× +=r@¬Ç?|í‘h@¬ÇL~($ +@¬Ç?|í‘h@¬ÇB\(ö@¬Ç?|í‘h@¬ÇQÅ@¬Ç?|í‘h@¬Ç<àuöü@¬Ç?|í‘hÁ.„€@¤Í÷KƧð@¤Î Iº^@¤Í÷KƧð@¤Î›¥ãT@¤Í÷KƧð@¤Î¯·é@¤Í÷KƧð@¤Î Iº^5@¤Í÷KƧð@¤ÎÁTɇ@¤Í÷KƧðÁ.„€@9zqÞi­C@9SFÜ]cˆ@4uãS÷ÎÙ@4lÌÌÌÌÌ@3ƒt¼j~ú@3~Ov_Ø®@3&YJôðØ@3ÕfÏAò@3&YJôðØ@3~ÿ—%@3&YJôðØÁ.„NÜC,¥?‘â%ì˜ ä?žK›æ¶'B?˜ëàÕÁc0?ŒôƒA˜c ?•RC}Ëq@8Ù?3ßa=„? (úSú±5?—ˆ”„òõ¤?‘²)ò@a,?•¯ÃþƒR@8û—?ÅÔ-~QvG?‘­b š=?‰6~„æAÕ?‹µ¼a?·♊N@8 Ø@@@@@&?ð?ð?ð?ð?ðøøøøøøøøøøøø@§ö¤b^@§öLχ @§ö+@8Iç@8Ù?®k|j“ʨ@8Î÷@8i§@8Å@8S@8û—?¡7‡V/Žr@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøƒ@ª?]²-V@ª?]ó¶E£@ª?]²-V@ª?[J#9Á@ª?]²-V@ª?]Vlô@ª?]²-V@ª?a£n.²@ª?]²-V@ª?cñA ]@ª?]²-V@ª?`Ä›¥ã@¥8Ôýó¶@¥8Ôýó¶@¥8Ôýó¶@¥8Që…@¥8Ôýó¶@¥:^5?}@¥8Ôýó¶@¥=ÌcñA@¥8Ôýó¶@¥:áG®@¥8Ôýó¶@¥8 -à@5úqÞi­C@5û‹¬q ²@3Yº^5?}@3]cˆe”¯@34“t¼j@3;jçÕfÏ@2‚@·€5@2Ç1Å‚@2‚@·€5@2Åzxl"h@2‚@·€5@2ÆšÔ,< ?|öOÿÝ?Qdöÿô¼?™¬þ.OÀ…?{¾“úy6?“K–ºé…/?–"ûe”M?€‚ñêã ?’ùÎ {?˜€OìØ¯i?•è­¸‡?‘êë·áþA?™›,4rÕ9?‚Ì ÝŽ‚8?šÑ~¿²Ô?ˆÌ7^|Â?Ž«]O8èº?ŒXk-¯‚7?“6‰møŸã@@@@@$@(?ð?ð?ð?ð?ð?ð?Q„WÂ?=£ßa?8`È“„±?A™]ëÓ@ª?`=€ò@¥9üB…¦?Wøö¿z?`©ÎçÝá¶?¸^s@Æqu?ô_Øvü@ŸeµÑŽ5ó@„@Ÿµ-V@Ÿµ0£× +=@Ÿµ-V@Ÿ¶ Ä^©@Ÿµ-V@Ÿ¶'nA¯@Ÿµ-V@Ÿ¶íšž@Ÿµ-V@Ÿ¶¨E÷A†@Ÿµ-V@Ÿ¶;J#9Â@¨AzáG®@¨AE¡ÊÂ@¨AzáG®@¨A;ô‡üº@¨AzáG®@¨ARõLA@¨AzáG®@¨A†aŽÄP@¨AzáG®@¨A9D8 @¨AzáG®@¨A:)Çy§@2–šÔ,<Ÿ@2”›¥ãSø@.½²-V@.èÿ׫Ž@.dZ¬@-º0×ZÄ…@,ܾߤ@@,m‘ámH@,ܾߤ@@,k*µ …@,ܾߤ@@,m¸ºÇÌ?É^¨¯Âj?’mëc^½Í?‘Ÿ«®m+?Ž‘dÞEã?b~e +/?¸Ó¨Qt¦®?ÐbQë„›¦?“R³‹ ·2?»¼yL,{?ïªj?BÑ?£Zc÷Lc? |uO¦'?€üç«»(?ŒöRèa +A?‚xÌLâƒþ?„cI`àTv?‡VÆ“(pü?‰/ã̽`ª@@$@"@"@4@(?ð?ð?ð?ð?ð?ð?( õ¿¢ºÙ2`@?ŽÁ¾Vwq?ŠJ~½U¶@Ÿ¶–W(¯æ@¨Al}Ãô³?“æ­Z& +‡?—‚_ä@B[\ž@g‹à,ùý@Ÿo:RiØ@…@¬-.záH@¬-.záH@¬-.záH@¬-/Åo@¬-.záH@¬-.;Í5§@¬-.záH@¬-.ŠqÞi@¬-.záH@¬-,Ùè>B@¬-.záH@¬--quŽ@ JÀƒo@ JÀƒo@ JÀƒo@ IQ‚©“@ JÀƒo@ J™0¾@ JÀƒo@ IDg8@ JÀƒo@ K Iº@ JÀƒo@ JJŒM@3T xFÜ@3T2ÊW§‡@0\Iº^5@@0\64ê@/¥¡ÊÀƒ@/¤¨ÁTɆ@.åÉä@.Š Þ@.åÉä@.¾vÈ´:@.åÉä@.åÉä?ð°–Ž]?%¼ÇÆÃ±?‘7[ä­?Œݶ\ñr?‘ §‡g¾?æöæ×t?ð°–Ž]?’CòO…? Dñ£P?e”[|ú(?üÓqÔNŠ?wN —z_?ð*wjs—?Œ¸†‡ÄÅ?‚˜YªüÏF?ƒ ?ÿ½?†’Õaì+’?†špk Y?ð@@@@,@*?ð?ð?ð?ð?ð?ð¿F©6Û¸??÷d>R?2±6*×&?::õ–¨g-@¬--‘Á¼v@ J$÷?AÎÄ ÞÍ{?Hu¬ÑVçž?~'ö0È6ƒ?‰òŒªE1 @Ÿs[ PM@†@¡‡+ @¡=á\@¡‡+ @¡Ä“„Û@¡‡+ @¡ yÔ‘@¡‡+ @¡ É¿§Î@¡‡+ @¡ 7N8‰@¡‡+ @¡Æ žä@¢bfffff@¢bFFK=Õ@¢bfffff@¢bn¹’â@¢bfffff@¢bw±ÃÁÑ@¢bfffff@¢bn—s‡@¢bfffff@¢bo¦Ö²¡@¢bfffff@¢bs3*¦/@8ÞHè§ç@8ߌâ´ý@4¦‡+ J@4ž”¨³õf@3©Û"Ðå`@3¦¨Çže@3Eœàu÷@3@Z8Ü@3Eœàu÷@390µN@3Eœàu÷@3C‘ã*?µ…7YuÍì?“nËšž@õ?˜ÎçUÛ³õ?‹ËÃù‹áã?‘ÉIõß?˜µHœÛ‚ð?¢EénÐ)v?“ãg(±[Q?›8à>¨Ü?-õIS¦?’p"ñ.?H, +kc?«¥ ÷Qж?”¼Ð!«›?š+®þÆÃ?‚ìgÒ¤Ç?‘‘^à Îr?”5„Žõå¾@@"@"@ @.@.?ð?ð?ð?ð?ð?ð?3ø_?z·É+€?^[f–ás+?joéÈ'~9@¡ [a‚‚@¢bl©®ù™?l‘wÁ@lb?{5 F?Ð~^éÓ>?û-“®,) +@ŸpŸ”`²á@‡@ŸÌ$Ý/@ŸÌƒÎW- @ŸÌ$Ý/@ŸÌ—ZnŽÆ@ŸÌ$Ý/@ŸÌ†„‘WQ@ŸÌ$Ý/@ŸÌ„ˆµ|@ŸÌ$Ý/@ŸÌ„WY ƒ@ŸÌ$Ý/@ŸÌ„kGih@®9‡®zá@®9ŠŒLš@®9‡®zá@®9„¬û¡Ø@®9‡®zá@®9‰£&u@®9‡®zá@®9ˆÎp:ý@®9‡®zá@®9v½Ó,@®9‡®zá@®9{ÕGKr@67â‚@·€@661ø .@1T›¥ãSø@1Riù«@0Ú~ùÛ"Ñ@0Ú›íµQr@0^«6z‘@0]®|Yô@0^«6z‘@0Zº„e…Ô@0^«6z‘@0Y¬yp.f?ñ3<' ?^-' +˜p?‘Jv­–³‘?ŒpüCza¹?‘sÞ¼‰Mß?‘QÁÝÿ^ ?|çµB &€?’M6G-\ü?„œµ'µ•??gÌ$Î%?‘†Å)·÷¢?öâXõ?‚pëí’ŸÏ?Œá‹J8Ž?ƒâ1u•‚?ƒ®Ú À?‡}­b38/?‡*ïêÙ%@@"@ @$@4@6?ð?ð?ð?ð?ð?ð?Twg ¿k¨÷p>Ø6Fq )?Um£ë™=@ŸÌ„š·@®9ƒF?¬ú>÷Ý?)ðŠÖ?v&¬aq¢>ùµèÒP¤µÜÆ@4sS÷ÎÙÁ.„M‰ûçm@3b-VÁ.„QnÙ‡@2𖻘ÇãÁ.„NÜC,¥@2𖻘ÇãÁ.„NÜC,¥@2𖻘ÇãÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø‹@ªä'ï²-@ªä'j@@ªä'ï²-@ªä7”D2Œ@ªä'ï²-@ªä3féÂc@ªä'ï²-@ªä7ù/Ú@ªä'ï²-@ªä2³Â=E@ªä'ï²-@ªä4‰•CÜ@–‡+ @– @`E@–‡+ @–ìs½.Š@–‡+ @–Í™bÄ@–‡+ @–÷¼û¬@–‡+ @–ý Ü5Ü@–‡+ @–úy5@6^Hè§æ@6]YŸ€Ìr@2õãS÷ÎÙ@2ê + ñŸ@1†“t¼@1÷H±{m@1«6z‘@1uÙ’@1«6z‘@1ÎID¡!@1«6z‘@1L7ÌÂÞ?~Ov_Ø­«?–@HÔMÁ?’…­¦Z È?‘ibª?‘· ¿§U¶?‘ó;›Xd?ñ3<' ?•Nnçu“>?’Á³iI?‘NsC)f"?‘³;°5L?’î %žO)?‘kOvó ?ŒòLΰ‚ë?ƒ4 K ?ƒhŠaý6?‡Ÿò-|£Q?‡®_€Û&@@*@*@,@8@9?ð?ð?ð?ð?ð?ð?jf½"Ø¿ccC J?Rs5¹ìÝ?H÷Ä6@ªä.çŸ`/@–{®?réf–~?h+=ß“–?ð–y‡ˆ?×/r=2æ®@Ÿg\¹hËM@Œ@¥¼9XbN@¥¼1ë…¸@¥¼9XbN@¥¼=Ùb·@¥¼9XbN@¥¼8y=Ù@¥¼9XbN@¥¼:’£S@¥¼9XbN@¥¼5sê³h@¥¼9XbN@¥¼2T`ªe@¬ï}p£× +@¬ï}²-V@¬ï}p£× +@¬ï|¬1'@¬ï}p£× +@¬ï}ÌcñA@¬ï}p£× +@¬ï‚ÃÉîÌ@¬ï}p£× +@¬ï~ƒä%¯@¬ï}p£× +@¬ï~ߤ?å@7í¥œàv@7è§æšÔ@3Œí‘hr°@3ŽBZîc@3Wï²-@3YÔ•*™@2hè§æ›@2k Iº^@2hè§æ›@2t•*™1@2hè§æ›@2rø7´¢4?”¼íÒh??“gU·q#?’´ýBI{?=]. ?™NÆÁÝãÔ?›Ê—Am¡?„F/·ÿP5?” Á lŸž?”Bœ<\ v?˜Õ¼2®?™Çk}Xã??O:bõ@?ž6Øìhâ?’"0÷ú?0ÜN :s?…<ò N ?Žrø·óæ?’£ÂÛ‚@@@@@,@*?ð?ð?ð?ð?ð?ð?A=üÒ?>šÜL?ZuÌe_?A¡€W¦ö@¥¼6^Ø@¬ïÚ‘±?u|xG{"?cCóÓ‘˜?á Šçò](?º¹<<™@ŸiOûîrï@@¯bMÒñª@¯_|í‘h@¯bMÒñª@¯gE8ï4@¯bMÒñª@¯mjN@¯bMÒñª@¯kP°ò|@¯bMÒñª@¯a½¥@¯bMÒñª@¯cˆe”°@ª¤° Ä›¦@ª¤®záH@ª¤° Ä›¦@ª¤¯'»/ì@ª¤° Ä›¦@ª¤©Q‚©“@ª¤° Ä›¦@ª¤¬<žì¿@ª¤° Ä›¦@ª¤®æ1ø¡@ª¤° Ä›¦@ª¤¬"h Õ@72ÃÉîËû@76+jçÕg@3E?|í‘h@3DohÛ@3å`A‰7@3ØDЩ@20–»˜Çã@2..±Ä2Ê@20–»˜Çã@20:û~‘@20–»˜Çã@2/Š Þ?|öOÿÝ?‘ ·èe?‘K]Ã4?€l ×Û?‘|†³„¸?’€ú¤ˆ4 ?|¬Çëý ?“£PuòN?üÓqÔN‰?’ž²¢# Y?‘žˆ2}?’EÈ€›º? H6¤„?Ž*JŠË?„„OW°ó?„ìsMQ(Œ?æšÔ,<ž?Š—à `ž@@@@@(@*?ð?ð?ð?ð?ð?ð?Sââÿ¿,´šG@?SÎ'øeÄm?2wn5 œÏ@¯b¤÷‰Ñ@ª¤­—›0?s²C¯yÕÀ?R¡¥áðö:?òÕß•­ ?°Tñ©RcB@ŸfW‡š@Ž@¦-V@¦,1&é@¦-V@¦-:’£@¦-V@¦ÜÆ?@¦-V@¦*çÕfÏ@¦-V@¦,Iº^5@¦-V@¦/iDg8@©ÎåãS÷Ï@©Îè1&éy@©ÎåãS÷Ï@©ÎâÐå`B@©ÎåãS÷Ï@©ÎÑÄ2ÊX@©ÎåãS÷Ï@©ÎÏAò×@©ÎåãS÷Ï@©ÎÈõÂ]@©ÎåãS÷Ï@©ÎÍ:’£@6µS&Á¾@6­w1Å@3ør° Äœ@3ôã¼ÓZ…@3ìj~ùÛ#@3ã×Ûôˆ@3n_oÒ @3gškP°ó@3n_oÒ @3iè>BZî@3n_oÒ @3cÃa@O?ˆÿÀ)T¿Æ?—µ”öŒqÒ?‘\H{gX ?™zbž61?›À‰¥xsÎ?—uæË}üI?|öOÿÝ?”ºu(†¼¦?˜û9]t`?—Š¢ +Ç—ê?¤¸µ†ê©ö?”Æ*%>g?’-BR1Ä?‘ÛÖæÒk~?ŠÌ÷7Õ}?=2Væð?’:™/ʼn?–{=rƒ™K@@@@@*@"?ð?ð?ð?ð?ð?ð?;Â]?˜¿yàWÉ?8Y‡ÝÌ—?SlTy( {@¦,¥í¡˜@©ÎÚ²zd?X´ž$!(™?sçFG¼øs?©ÃóBëé?çˆu™Œ@ŸfAù¤ëZ@@¡Ð¶È´9X@¡Ð· +=p¤@¡Ð¶È´9X@¡Ð·ö+jè@¡Ð¶È´9X@¡Ð¸†YJõ@¡Ð¶È´9X@¡Ð»çl‹D@¡Ð¶È´9X@¡Ð¸ºÇË@¡Ð¶È´9X@¡Ð¸Çâ‚A@žÐå`A‰@žÐå`A‰@žÐå`A‰@žÏ\(õÃ@žÐå`A‰@žÎ!–R¾@žÐå`A‰@žÇ_oÒ @žÐå`A‰@žÏ'»/ì@žÐå`A‰@žÏªÍž…@2%öý!ÿ.@2&1ø .@-3t¼j~ù@-2ˆÎp:û@,wOß;d@,u¨Xy=Ú@,=Vlô"@,7ö+jçÖ@,=Vlô"@,8ºÇË*@,=Vlô"@,8âe+Ô?É^³Dw'?Ï[äevÈ´9@9cg ù lÁ.„>¤µÜÆ@3° Ä›¦Á.„M‰ûçm@3Ðå`A‰Á.„QnÙ‡@2½cˆe”°Á.„NÜC,¥@2½cˆe”°Á.„NÜC,¥@2½cˆe”°@2‚ZîcŠ@8J¨@8#˜@8¾:@8 >+@8Iç?»G!rÌŸY@8J¨@8Î÷@8i§@8Å@8S?ÂÉ(/æ°œ@8p÷@8 * @8p÷@8¶@8 Ø?«v³Û‹7@$?ðøøøøøøøøøøøø‘@®Z›¥ãSøÁ.„€@®Z›¥ãSø@®Z  qw@®Z›¥ãSø@®ZŠÚ¹ô@®Z›¥ãSø@®ZŠÚ¹õ@®Z›¥ãSø@®Z›~ÿ—@®Z›¥ãSø@®Z›J#9Á@¨øÔýó¶Á.„€@¨øÔýó¶@¨e+Ô@¨øÔýó¶@¨üPHñ@¨øÔýó¶@¨ûçl‹D@¨øÔýó¶@¨uöý"@¨øÔýó¶@¨ü‘ÑN<@9šÔ,<ŸÁ.„>¤µÜÆ@2f‡+ J@2bÐå`A‰@0çKƧïž@0äýó¶E¢@/ÑÑN;Í6@/Î_oÒ @/ÑÑN;Í6@/Î;Í5¨Y@/ÑÑN;Í6@/Τ¨ÁTÊ@8J¨?’&Á¯»?‘yß]³Õø?Œ‚èõЊ?‘¿ÐÅu?Êëüâi{@8J¨?“Öæ…0Âû?»Þ‹"è?‘²)ò@a,?‘ØèOÍ ì?Éöm/w<@8p÷?c I??‚á²Olºý?ƒ†+ Å?†¼Š˜L¥÷?†£îž«î@@@@&@*?ð?ð?ð?ð?ðøøøøøøøøøøøø’@¤°ò-V@¤°ð£× +=@¤°ò-V@¤±RT`ª@¤°ò-V@¤°¥o@¤°ò-V@¤±(õÂ\@¤°ò-VÁ.„€@¤°ò-VÁ.„€@ 3NV“@ 3A‰7KÇ@ 3NV“@ 2u›=È@ 3NV“@ 1»À6ã@ 3NV“@ 2–ð¹@ 3NV“Á.„€@ 3NV“Á.„€@8 ]cˆe”@8–»™@5›¥ãSø@4•ÜÆ?@5~ùÛ"Ñ@4S¢œwšk@4\ÚQÎ@4 ]cˆe•@4\ÚQÎÁ.„NÜC,¥@4\ÚQÎÁ.„NÜC,¥?ð°–Ž]?±ˆLŸ0?±G¤®t Š?ÅN.!b@8Iç@8Ù?ð°–Ž]?•¤-'Ä,?½™°ÅC=?«{ÿÀT@8S@8û—?ð*wjs—?¼I²çÝ·?Æ~WCû #?À8á|7@8 Ø@8 Ø?ð@@@?ð?ð?ð?ðøøøøøøøøøøøø“@¤x›¥ãSø@¤xšáG®@¤x›¥ãSø@¤x¢MÒñª@¤x›¥ãSø@¤x¡£n.²@¤x›¥ãSø@¤x¤Âø7µ@¤x›¥ãSø@¤x§RT`ª@¤x›¥ãSø@¤x£þ\‘Ñ@¡¦ž¸Që…@¡¦£S÷ÎÙ@¡¦ž¸Që…@¡¦hÛŒ@¡¦ž¸Që…@¡¦£{J#;@¡¦ž¸Që…@¡¦šu%F@¡¦ž¸Që…@¡¦‘ÑN;Í@¡¦ž¸Që…@¡¦ŠÚ¹õ@8 Î_oÒ@8 xÔýó·@4…?|í‘h@4† +¦L/ƒ@3ù7KƧð@3ûquŽ!–@3ÜÚQÎ@3Ýà qv@3ÜÚQÎ@3âñ©ûçm@3ÜÚQÎ@3èÇâ‚@¸?‡YÍ_?‘¡çL¤?œÇY#W]?{¾“úy6? (E•¦ðç?¡o’ü:Â?ˆÿÀ)T¿Æ?“—-´œc?š_x¾¶2?š¿Tiî©ó? {QBãï?¡ùŠÀs›?ˆT“Ÿÿ?˜ÔÞÑ—æJ?§r20¡î/?’èïÅ42ô?šz"+;‚á?²ó6õ··@@@@@*@,?ð?ð?ð?ð?ð?ð?g «Û@¿f›Y¦?H€ú+4Ö?Teoî-/Î@¤x¡Hb¥@¡¦u@Æ…?eú·ª,á?s¬r®=À?ÅÇËL kg?×Äá¼@ŸeàHl°%@”@¡#”ýó¶F@¡#‹§¹Y@¡#”ýó¶F@¡#ƒë2ší@¡#”ýó¶F@¡#Bã¹ZÌ@¡#”ýó¶F@¡#)ºßZ@¡#”ýó¶F@¡#Xgr @¡#”ýó¶F@¡#LÄ]-@¦¬cS÷ÎÙ@¦¬_çq@¦¬cS÷ÎÙ@¦¬råÙÅ@¦¬cS÷ÎÙ@¦¬lEnü,@¦¬cS÷ÎÙ@¦¬mtƒ „@¦¬cS÷ÎÙ@¦¬3ˆLÙ@¦¬cS÷ÎÙ@¦¬'=©ª/@7zqÞi­C@7jh’ÄŹ@4«¥ãS÷Ï@4£ñ±á\â@4§KƧïž@4„FPÀžô@4«6z‘@4¬êU³@4«6z‘@4â®Á@4«6z‘@4¯Cŧ?£¬è3Û?”mg´þ{ß?û™˜4ô?›€²:€ÓG?¡ø€±ç—?“0¾;W;À?‡ D¥…ô?“h éãbê?¢ìâ?xÂP?–ê=ëNBé?¢ÜÈz=ˆ?Ö|‡(™?©A6PP 4?ÃͶÿÙ?«¶’$Ec?¨¨ž,»¹Œ?¤0WÀ}Á ?¡Ô`P@@@@@0@&?ð?ð?ð?ð?ð?ð¿{Ó£*ö¿…N0—¼€?†ÉAk¯’?tÏÿ¤½^@¡#Q/®L+@¦¬CÏïà˜?£8ƒ£7t?˜‰Y‡g×_@,ÞÍp~‹@(ž»Qc¦æ@Ÿn/[É‚t@•@§‘¸Që…@§‘¸Që…@§‘¸Që…@§‘¸Që…@§‘¸Që…@§‘¸ºÇË@§‘¸Që…@§‘¶È´9X@§‘¸Që…@§‘³&Á¿@§‘¸Që…@§‘³t¼j@¨‘È´9X@¨‘ÉxÔýô@¨‘È´9X@¨‘ÈõÂ\@¨‘È´9X@¨‘Ék¹Œ@¨‘È´9X@¨‘Æfffg@¨‘È´9X@¨‘ÌÌÌÌÍ@¨‘È´9X@¨‘Ïv_Ø®@1ãg ù l@1âÞÑ·@-R-V@-MúCþ\‘@-÷Oß;d@-ñø -á@,­úCþ\’@,¢ÞÑ·@,­úCþ\’@,—ö+jç@,­úCþ\’@,Ùb¶¯?É^žQ5P‚?¾¢`ƒ?‘jh¨qã9?Žëâÿ1¥?“K–ºé…/?˜£µ³ÿ)?Ðb—Œ©þÒ?’ aÒ¹zï?’TÖ©E?’ äÅ?™ïIÄè?˜p®0=-#?‚:)Çy¦µ?ŒÂ§dß±?ƒ{¬ÉW?Šˆ€!B®?‡ã ËÄž?ŽÜÂÎÛÖa@@@@@(@&?ð?ð?ð?ð?ð?ð¿\4®Ø?p#ŸT§?CG~ä‹0?Ca5((2@§‘´Û›rí@¨‘ÊkzÐ?Q‹xm‚A¨?RÛÀh#õ?•V€j ì?‘Äñ _Ï/@ŸqìÀýÿ¸@–@¢­‘hr°@¢­V@¢­‘hr°@¢°£× +=@¢­‘hr°@¢´`ªdÃ@¢­‘hr°@¢³ àÞÓ@¢­‘hr°@¢±Þi­C@¢­‘hr°@¢²ˆÎp;@©cþvÈ´9@©cþ¸Që…@©cþvÈ´9@©d×Ûô‰@©cþvÈ´9@©d°‰ '@©cþvÈ´9@©dn—@©cþvÈ´9@©dA‰7L@©cþvÈ´9@©d¶®}V@5IÎ_oÒ@5IÛ"Ðå`@1#÷ÎÙ‡@1 ·€4mÆ@0¢-V@0žËûµt@/­úCþ\’@/¦¸ºÇ@/­úCþ\’@/ @/­úCþ\’@/¢&€IS?}Ñ¿ž,?ß‹’bÏ?‘,fŸCô6?‹¬àÌ’Ç?“2{Áw¸?”|„¥&?1·†Æjñ?’,ö´´Ï#?‘kþE<%?Níú¾?”¤¦ð¹e?˜6@(/ÇÝ?‚2Y0â³?ŒÛÏ·+?‚Ÿ JŠÆ?ƒ^ ›¨¬a?‡L8õASÎ?‹¼`’ i2@@@@@*@*?ð?ð?ð?ð?ð?ð?V§üò?JäôšX?;›áÖå?:Ÿ„RLÌ­@¢°  ’@©d +?Z,É:J»™?Yhúñ ±?Àv×—Mó?¹Kgbt@ŸeÜ•¦€z@—@¥…¸QìÁ.„€@¥…¸Qì@¥¿ál-@¥…¸Qì@¥ˆªœO@¥…¸Qì@¥† ?É©@¥…¸Qì@¥¶ŒÓÖ@¥…¸Qì@¥®@RBM@–Oß;dZÁ.„€@–Oß;dZ@–µdi@–Oß;dZ@–‘h¡Ä8@–Oß;dZ@–x¥¹U@–Oß;dZ@–tYÿ-@–Oß;dZ@–k–Ü@5Ç>«6zÁ.„>¤µÜÆ@/€A‰7KÆ@/@†6õñ@-è1&éxÕ@-¬j½L]@+á-w1Å@+»v¢Ôˆ@+á-w1Å@+½M‘a»í@+á-w1Å@+¾†å+àé@8J¨?°óˆi[ÈË?“% +sÜ?ÝV&sÀ?°mwHË+?®‡Hžˆyì@8J¨?±dJî™ÑH?—q ­,êª?‘y­ïp£?§ÿTþV”(? ³w ¹x@8p÷?“¤¤‡'M?‚ŸP +ÈgN?ƒJjë?‰½Ü*ˆl?Šõ.V‘¥@*@$@@;@8?ð?ð?ð?ð?ðøøøøøøøøøøøø˜@¤l‹C•@¤lÌÌÌÍ@¤l‹C•@¤jÚ¹õZ@¤l‹C•@¤gÈK]Ì@¤l‹C•@¤cˆe”¯@¤l‹C•@¤eÒ©?@¤l‹C•@¤^=/¬@œúµ?|í‘@œúµÂ\)@œúµ?|í‘@œú¨§æ›@œúµ?|í‘@œú©Çy¦µ@œúµ?|í‘@œúÛ"Ðå_@œúµ?|í‘@œú‚Ah@œúµ?|í‘@œú˜]`UH@4£g ù l@4Ÿ#äi´¯@2Yº^5?}@2Uöý!ÿ.@1ù7KƧð@1óÉîËû@1£ÉîËû@1©#¢œw›@1£ÉîËû@1 ›€#p¬@1£ÉîËû@1^gÆ’?ƒ_ÿKt˜à?¾‰máÚ?—U’¹DÆü?”7lyÎ\?‘üTºFEQ?”€ÿ' e?|Ñb×¶@?’uß¿çÒ?£BÕx™„?š¿Tiî©ó?’ò@°Ø0ñ?–àÙÐÖ¾?ƒR¨éŠÛ™?ÉGãA­ø?›û…†_?’»•e¨ò?‰YfÓ¶ +Ô?Фz{‚@@@@@.@.?ð?ð?ð?ð?ð?ð¿ewjHS¿n1F?AtA‰EH?i„¡À>Áw@¤g ,5¼@œú§G-ö_?a=_ŒÌg?Š7ÈRúºÎ?ÄxuqÀ·…@è«Ú«@Ÿf˜p]@™@­ª™™™™š@­ª¥¸Qí@­ª™™™™š@­ªžÒˆÎo@­ª™™™™š@­ª›Í5¨X@­ª™™™™š@­ª˜“t¼j@­ª™™™™š@­ªŸŠ Þ@­ª™™™™š@­ªžÅm\û@Ÿñ Oß;d@ŸòX“t¼j@Ÿñ Oß;d@Ÿñ›¥ãT@Ÿñ Oß;d@Ÿñòä@Ÿñ Oß;d@ŸñÅm@Ÿñ Oß;d@Ÿðó×Ûö@Ÿñ Oß;d@ŸñêJŒ@8ÞHè§ç@8ŸhÛ‹¬@4» Iº^@4»À6âë@497KƧð@4;Ƨï²@3Åœàu÷@3Å›=ÈL@3Åœàu÷@3ÈõÂ\)@3Åœàu÷@3ÈÇâ‚@¸?£G± *Ç‚?˜ß!Á}Pé?›tZ'Ð?–.¨ÿ[?–(Ži´™^?Ÿ@*Få?çµÚNö®?“Ëÿ.¬Hp? Ü]^ß¿?“¶Ì¶Öj”?—÷Ë5D«ç?›7Î&Tß+?æoâh56â?“~tÒZE?›˜tgië?‹µ¼a?¾Á{þÆ%?– ¼µ(0Q@@@@@*@(?ð?ð?ð?ð?ð?ð¿?ß¡¨¿p˜zò?`_üO©\»?qv\-Âù2@­ªoÁ'!@Ÿñüóüš?xnªîy­?€ TÕål¹?س…dŸs?çi D£@Ÿr¡£Á² @š@¦×c× +=q@¦×c6"@V@¦×c× +=q@¦×MeÓÒO@¦×c× +=q@¦×\IH™‰@¦×c× +=q@¦×Vý8Ü@¦×c× +=q@¦×HtïLß@¦×c× +=q@¦×N[àñÍ@“Ð$Ý/@“Ðt~k~@“Ð$Ý/@“Ðflàâö@“Ð$Ý/@“ÐOÈØ@“Ð$Ý/@“ÐkÚ^”@“Ð$Ý/@“Ðn¼Ð ¹@“Ð$Ý/@“Ðk?Ú¯ü@8è†YJôñ@8¹ä²t W@4!hr° Ä@4*¼¶e@3)Û"Ðå`@3*WE?;@2ÔmÅÖ8†@2Þù¼±âº@2ÔmÅÖ8†@2Ò +‚@2ÔmÅÖ8†@2׆n5æ?™I'%ö«?áÊ7ƒÀ?‘<ü³î?/ J3?™¤Fº_ØW?”<°1 ”v?Ž\Õl6Ò?’J®?|™e°?1ìqúH:?•@€I?^d?“¶|3Çî?”ªñw43?’ûŽ<‚y?ŽƒPVÍðý?•rð„"Æ–?—æ×N?•eÀl@@"@"@@5@4?ð?ð?ð?ð?ð?ð¿sc®Ì¿M÷„QX?X‚ñœÜ´;?< ¾,lPÈ@¦×U;héÿ@“Ðn–¥?rã¶u õ?ZܳCàiÐ?Üý`€C?±ÐÕÉ8ª@ŸlEÂtž@›@«™ŒIº^5@«™Œ1&é@«™ŒIº^5@«™:’£@«™ŒIº^5@«™Œ<žìÀ@«™ŒIº^5@«™ŒVÕÏ«@«™ŒIº^5@«™‹àÞÒ‰@«™ŒIº^5@«™‹]Ìcñ@8'ï²-@8'ï²-@8'ï²-@8&€IQ@8'ï²-@8%ýŠÚº@8'ï²-@8%zxl"@8'ï²-@8$Âø7µ@8'ï²-@8$%®æ2@1úqÞi­C@1ú~ùÛ"Ñ@0=‘hr° @0=²-V@//ß;dZ@/0‰ 'RT@.p‰ 'RU@.p Ä›¥ä@.p‰ 'RU@.p–»˜Çã@.p‰ 'RU@.p£× +=q?É^¨¯Âj?ï1ïºÅ?‘\H{gX ?Œ ßõIyû?‘#6‰¥_?×°ë*–w?ÐbMÝn½?’&u÷E»@?»Þ‹"è?UÕh;·Å?‘<¸ö}½?¦QÎð\ã?€bœÅÏÑ+?2ô]7?‚‘´…=Cb?ƒ!Ë *(?‡ã ËÄž?†ùadô|@@@@@,@*?ð?ð?ð?ð?ð?ð¿:…Hÿè¿3ø+:? Ó6ÊÁ>ìú¹áê`Õ@«™‹èln;@8$Þ¤z!?ؾ¡>ûpÖäÜ)?1™=–VÃä>ð£êA@ŸsQ @œ@­K²° Äœ@­K³‡ W@­K²° Äœ@­Kµ «´½@­K²° Äœ@­K´²ÛDî@­K²° Äœ@­K±Ø·ªó@­K²° Äœ@­K±ÛÌïÄ@­K²° Äœ@­K³^°É@š[§ï²-@š[¥`A‰6@š[§ï²-@š[¥¿M»/@š[§ï²-@š[¥’Sª@š[§ï²-@š[¥+ÓÃb@š[§ï²-@š[¨ÌÊ@š[§ï²-@š[ª³y‰¢@6åöý!ÿ.@6æ½Ì­dJ@2áhr° Ä@2ãC(a³Ï@2Wï²-@2X˵aõg@1zÔ,<ží@1|TÉ©@1zÔ,<ží@1|Û¹›L@1zÔ,<ží@1|çHµ?a÷nñ?DàÓôæ?‘ûø›a¤?ŒÃå%9bg?‘VQòhFa?‘/k™`î¯?…nDyB Ã?’ß‹óšû?ú:d&‰?Ù:Qˆ²?‘M³Ñsy?ÆyÉ[üš?…9Ž2j¸Ó?Žžÿå¡ ?…D¤W—4L?„Ò²æƒúÉ?†ìÌ´¼N?‡ÂÇ÷Û%@@&@*@,@5@5?ð?ð?ð?ð?ð?ð¿-ÃX‰@?<÷fQp?-ý’ýÓA¦?)°çKZã@­K²ÊûfC@š[§òâú?Nƒ”¾Ç?Ió»i8ý?¤eeÅ=Ã?™æ1ü´ô@ŸhñL²öÿ@@§éûçl‹@§ÙXbN@§éûçl‹@§p|„µÞ@§éûçl‹@§²GE8ï@§éûçl‹@§ÙXbN@§éûçl‹@§Àëíú@§éûçl‹@§q4êJ@§ ]/Ÿ¾@§ Z¬1@§ ]/Ÿ¾@§ H$ x@§ ]/Ÿ¾@§ s àÞÓ@§ ]/Ÿ¾@§ ^\‘ÑN@§ ]/Ÿ¾@§ mžƒä&@§ ]/Ÿ¾@§ …+ÓÃ`@7£g ù l@7ž}Vlô@45ãS÷ÎÙ@41 [À7@3gKƧïž@3!aä÷eþ@2Ì¿±[W?@2~záG®@2Ì¿±[W?@2nŠqÞi­@2Ì¿±[W?@2ЦL/ƒ|?гá‡}?¾ó'@¡Ÿ/?½¿º&Õ/Ì?Âå*‰ã6?¼íÓ¯ì?´yzž|wù?}Ñ¿ž,?°ŒbU'V…?Áìu^]?³‹Ù6ˆ‘—?´j‹G ²?¶ª„!–4?™Ý2÷‚Ë?¤(µ”4è?±ÉÊB\ÞT?´ŠØÉf±{@–MJÀƒo@–M?§¦j†@–MJÀƒo@–MMÆÀ£@–MJÀƒo@–MR«ó4@–MJÀƒo@–MV/ +@–MJÀƒo@–MRÈæŸû@8įO „M@8­.maù»@3GÎÙ‡+@3:Ov`@2Ú~ùÛ"Ñ@2Ì: +ÖmÐ@1ÿò䎊r@1õ«T E@1ÿò䎊r@1ùlõƒ%@1ÿò䎊r@1ú™ÄMµ?¹}ïJÎh~9ZÁ? ¯ã4?„¯ö¼æú?ŒjÉ:‰‰?ŽKwš~u=@@$@*@$@<@;?ð?ð?ð?ð?ð?ð?Nã7ñ°?^²àiÉ?P{™²mÿ?PmÒ垸ê@¥¹$ä ¬@–MQÛ瀛?`˜â 3u?hºÓ2E?°—âÆèbp?Ã= 3µh,@Ÿp5R¿¤h@Ÿ@¬Ú…¸Qì@¬Ú„“t»@¬Ú…¸Qì@¬Ú†ÏAò@¬Ú…¸Qì@¬Úƒ¼ÓZ†@¬Ú…¸Qì@¬Ú†Â&€ž@¬Ú…¸Qì@¬Ú~š@¬Ú…¸Qì@¬Ú€ù kº@¤n½ó¶E¢@¤nº¬1@¤n½ó¶E¢@¤nÂëC-@¤n½ó¶E¢@¤n¼Æ?@¤n½ó¶E¢@¤n¹Œ~($@¤n½ó¶E¢@¤n¼¹#¢œ@¤n½ó¶E¢@¤n»Í5¨X@7p4mÅÖ8@7pË)^ž@3û Iº^@3ûÍ5¨Xy@3Ct¼j~ú@3D÷eýŠÛ@2µµsê³h@2·€4mÅÖ@2µµsê³h@2µ›=ÈL@2µµsê³h@2¶µ '¼?Œs¤DÅÐ?ÖÈ ¼?”^RžpX?Ô@R’?”z|œèç™?“¾§²~Î?œä%—ëš?’áÄïÃõ?”ïZºœ·?‘’â·ýÅ?”‚ÍÊL¾l?’¨¢†¼ ¼?ŒArUã@?‘¼Åâ<{?Šó¿á§E?…âC£½¾Ý?¢—„¯l?Œx[‡:©@@@@@,@(?ð?ð?ð?ð?ð?ð¿J;¹P?BB¨Žä?O}E t?=2æ5Ué@¬Ú‚¾¢N@¤nºàm°?o çÔv?V²°PrJ?جfÞ7?£"p·ZwA@Ÿm32ZQ;@ @¬çl‹C–@¬ç+ K@¬çl‹C–@¬çï².@¬çl‹C–@¬éDg8@¬çl‹C–@¬è Ô•@¬çl‹C–@¬æffff@¬çl‹C–@¬æÂ&€@­B¶È´9X@­B¶‡+ @­B¶È´9X@­B·§†Â'@­B¶È´9X@­B·$tS@­B¶È´9X@­Bµ$Ý@­B¶È´9X@­B·1Å@­B¶È´9X@­B¶»˜Çä@3í¥œàv@3í¸ºÇË@0#÷ÎÙ‡@0#¶E¡ÊÀ@/´ýó¶E¢@/´¼¤@/b¶®~@/üPHð@/b¶®~@/ k¹Œ€@/b¶®~@/Ôýó¶F?|öOÿÝ??ÖCã ?‘Š©Nà¶?‹û…†_?‘Dj?ø·-/ge?|öOÿÝ?’)£µ“[µDá?ƒ*|š\/´?†Ü‘ °Ô?†–f_ÔŠŠ@@@@@,@,?ð?ð?ð?ð?ð?ð¿ |Ó³?¡|?%½»•&–?$c§)ië‡@¬ç#Hr?@­B¶‡\§¦?EžœuAn?DÉ7Z‹B?™!¾%tc?–=DX`¾@ŸfòšÅõ3@¡@¤Wð Ä›¦@¤Wå¡ÊÀƒ@¤Wð Ä›¦@¤WðHð@¤Wð Ä›¦@¤WðU2a|@¤Wð Ä›¦@¤Wñø .@¤Wð Ä›¦@¤Wñhr°!@¤Wð Ä›¦@¤Wï\(õÃ@¬ö× +=p¤@¬öÛ¥ãSù@¬ö× +=p¤@¬öÙÛ"Ðå@¬ö× +=p¤@¬ö×1Å@¬ö× +=p¤@¬öÝ¥œá@¬ö× +=p¤@¬öÚÔ,<Ÿ@¬ö× +=p¤@¬öÙ‡+@8›¹Œ~($@8™Q‚©“ @28r° Äœ@25ÜÆ?@1U`A‰7L@1P–»˜Çâ@0fYJôðØ@0a$Ý/@0fYJôðØ@0a [À6@0fYJôðØ@0a·Xâ?©W»¥ÿ$B?‡åƒêM?’à©GMõ?ºgk\0?”‰Wïÿ·?‘f]£àG?€‚ñêã ?•¤-'Ä,?”ÿŒÙÿIí?–= £6Ï?—÷Ë5D«ç?›ªU3Îp?±¯Ì:¦å%?u/®Xã?ƒíÈm½!¿?„Ö©Ú0?†Óß +tõ?Š|)-}í(@@@@@,@$?ð?ð?ð?ð?ð?ð?7[€Eп7mø… ?Vÿ縆]?5ÈgD´@¤Wðd†P6@¬öÚ¦þö??l=I ºË6?]®5ä«è?Î+e‡ ™^?´øÖ r@ŸoÅÌÀ=‰@¢@­(õÂ\@­(õÂ\@­(õÂ\@­)Ô•,@­(õÂ\@­*qÞi­@­(õÂ\@­)*0U2@­(õÂ\@­'_oÒ@­(õÂ\@­($ x@£+ò-V@£+ò-V@£+ò-V@£+ò-V@£+ò-V@£+ò{²þÅ@£+ò-V@£+ðØDÐ@£+ò-V@£+ñ‚©“ @£+ò-V@£+ñ©ûçn@3ÖšÔ,<Ÿ@3ÖšÔ,< @1›¥ãSø@1Ö¡aä÷@06§ï²-@06‡+ J@.æL/ƒ{K@.åzxl"g@.æL/ƒ{K@.åÖ8†YK@.æL/ƒ{K@.åÖ8†YJ?|¬Çëý ?Kb½™×?‘t‘ócjë?‹×lÇ…N9?‘ä~|+?æöæ×t?|¬Çëý ?’Q_Ú¸FN?»Þ‹"è?@§[*^?‘ ^Íü?ÿ?sxÙ/T?‚Ÿ JŠÅ?Œáò¯ž¼ù?‚† SFò?‚þ——³§ø?†£îž«î?†µ°jÆÃ@@@@@*@*?ð?ð?ð?ð?ð?ð¿*fˆS ¿&€ÔÐ?#}É9À2®?0®ü¯¦6@­(“Ñ‹ò@£+ñ½BùÙ?C]Ý·ù??¹8ê!ß?”`Ë>;/¬?Š/HWóŸ@Ÿfâ%tùµ@£@¢ª)xÔýô@¢ª-V@¢ª)xÔýô@¢ªáG®@¢ª)xÔýô@¢ª®zâ@¢ª)xÔýô@¢©öE¡ÊÁ@¢ª)xÔýô@¢ª¯·é@¢ª)xÔýô@¢©àÄ›¥ã@¨»Â Iº^@¨»ÁG®{@¨»Â Iº^@¨»z^5?~@¨»Â Iº^@¨»<¾ß¤@¨»Â Iº^@¨»$Ý/@¨»Â Iº^@¨».Ëûµ@¨»Â Iº^@¨»HË’:@6„¯O „M@6†ö”Fs‚@4k¥ãS÷Ï@4?Ó™~$“?„W Ä™\?ð,’Ú|‚?ÃAöź®?™ Êû®‡@@@?ð@0@(?ð?ð?ð?ð?ð?ð¿’ßÕœë@¿v‘=»?]ÚºÌj?4­-¸"4m@ –þ¤îÒ@§äFUz´‡?sã¨vO?K·.œÕ,?á)B“Ðaú?”•AŒbyö@Ÿ^^¯Ÿ8@¥@©®=ó¶E¢@©®<¬1'@©®=ó¶E¢@©®BZîc @©®=ó¶E¢@©®>žš@©®=ó¶E¢@©®<ÚQ@©®=ó¶E¢@©®A°‰ '@©®=ó¶E¢@©®Enÿ@ªIdZ¬@ªIfffff@ªIdZ¬@ªIbu%F @ªIdZ¬@ªI^¸Që…@ªIdZ¬@ªIe”¯O@ªIdZ¬@ªIa [À@ªIdZ¬@ªI`hÛ‹¬@5eöý!ÿ.@5bÞÑ·@2€ Ä›¥ã@2Ÿ¾vÈ@2¾V“u@2ÀHðŽ@2B‚@·€5@2H“t¼j@2B‚@·€5@2Cn—P@2B‚@·€5@2@[À6ä?žˆ2}?‘j`cq?•Ìüb¢? Ìç,Z?•bJÖµæÿ?—>æV¡¶$?‚á²Olºü?“oÆ †ä?‘}7ˆ.Ñ?‘.}áµ$?”‚ÍÊL¾l?™^ªÍ€@!?˜¸DU#L†?Ž.]L ¼?•ýÿLîO?ŒísOÅ>?qÂ' +Bœ?ŒXk-¯‚7@@@@@,@*?ð?ð?ð?ð?ð?ð?RºSf`¿R‘Vì?FÏp7?7r®{ý3Ú@©®>¢ù@ªId@ܼ?e¹Ïnµh–?V¬ç*»>W?ÑS6¤?°@³pM(Í@Ÿfœ:èp@¦@ ˜Iº^5?@ ˜Nøf~6@ ˜Iº^5?@ ˜JV|P@ ˜Iº^5?@ ˜JgD]2@ ˜Iº^5?@ ˜JÊ£È%@ ˜Iº^5?@ ˜HVà +@ ˜Iº^5?@ ˜H‹}¨²@¤I@@¤I8³>þZ@¤I@@¤I;Äg–Û@¤I@@¤I=¯÷¥@¤I@@¤I?²qÍ@¤I@@¤I?^i¶e@¤I@@¤I>íž3Ê@4úqÞi­C@4óÃoÔ¢N@1+ Iº@1”ê4@04“t¼j@03F´§É&@0&YJôðØ@0%ȓ쿊@0&YJôðØ@0&º=žHk@0&YJôðØ@0&¸Që…?‘ɱb)Q?ÎÝ;D?‘lȼÛê?ŒJˆ_÷?‘±ãTÈ?»;G 1œ?™I'%ö«?’bâƒR˜?‹%¥¿f[?L½o2ã?‘—t« ð?lÈCYÞ?¥As Ý$?ŒÑ׫}F•?‚Ð׳SÎ\?ƒŒhïú„?†Ì’=Æý?†¶¢œ¸’*@@ @ @*@8@2?ð?ð?ð?ð?ð?ð¿VÇ&‹$?Q)DYN?.pâ€PÇn?Fp 2j@ ˜Jh#ÎP@¤I>/A8R?IÛú­(‰Å?aU^%Áïd?”*/Ñs¼?¼ì±þñÞ@ŸmÏ»k@§@¬5¯²-@¬5±hr° @¬5¯²-@¬5µsê³h@¬5¯²-@¬5¸*™0¾@¬5¯²-@¬5ŸØ­«ž@¬5¯²-@¬5¤?åÉ@¬5¯²-@¬5ŸåÉ@¤Îå`A‰@¤Î²-@¤Îå`A‰@¤Î -à @¤Îå`A‰@¤Ît¼j@¤Îå`A‰@¤ÎÙ‡+@¤Îå`A‰@¤ÎHË‘@¤Îå`A‰@¤Îû~ÿ@6#g ù l@6#33333@40Ä›¥ãT@4+²þÅm]@3Ÿ²-V@3•`A‰7L@33&Á½¥@3 Ô•+@33&Á½¥@3HË’:@33&Á½¥@3!ø -à?„F/·ÿP5?–âFpë3?‘=?ùKh?šniÙÊ¢Ð?£óV·s?ž¥‚±hÕ%?‡YÍ_?–*1€ V?“ |ɽ‡?™9½œÔ.?¤è®Áp™c?œâ™:;{ˆ?„ËD(ºo?“¢ ßÌF2?†aÞàI*•?¤÷™ïy\,?£,ãR¯o?¡£‡9²þ@@@@@*@&?ð?ð?ð?ð?ð?ð¿p®O¸?aˆäÍF?Qæaܪc?Rå¶ 8a^@¬5©ÅtÄ@¤ÎK¿z?pPÅ*¸\,?r3U—vø?Ó¥=¡ Ë×?×Ó»6»Ý£@Ÿeözê¹@¨@¡)`A‰7L@¡)a'ë…ž@¡)`A‰7LÁ.„€@¡)`A‰7LÁ.„€@¡)`A‰7LÁ.„€@¡)`A‰7LÁ.„€@¡)`A‰7LÁ.„€@¤wß¾vÈ´@¤wß;œ6È@¤wß¾vÈ´Á.„€@¤wß¾vÈ´Á.„€@¤wß¾vÈ´Á.„€@¤wß¾vÈ´Á.„€@¤wß¾vÈ´Á.„€@7«µsê´@7¬<žì¿²@3£÷ÎÙ‡Á.„M‰ûçm@2©Û"Ðå`Á.„QnÙ‡@1ýcˆe”°Á.„NÜC,¥@1ýcˆe”°Á.„NÜC,¥@1ýcˆe”°Á.„NÜC,¥?˜—"ÝÚá@8#˜@8¾:@8 >+@8Iç@8Ù?|¬Çµƒç9@8Î÷@8i§@8Å@8S@8û—?“z&FÉ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø©@­NÙ‡+@­0å`A‰@­NÙ‡+@­R•éá²@­NÙ‡+@­K¬q ´@­NÙ‡+@­Mw1Å@­NÙ‡+@­K¹Œ~(@­NÙ‡+@­Lq ²–@¦B–“u@¦BµÂ\*@¦B–“u@¦Bšxl"h@¦B–“u@¦B“œ¾à@¦B–“u@¦B uöý!@¦B–“u@¦B’½<6@¦B–“u@¦B¥¡ÊÀ„@9#g ù l@9 ²þÅm]@3{ Iº^@3|Iº^5?@2{Ƨï²@2yûçl‹D@1¦YJôðØ@1 'RT`ª@1¦YJôðØ@1­:’£@1¦YJôðØ@1¡TÉ…ðp?’Óusÿ\Ã?‘Ü„ Þ(£?’5 µ¿$„?‘S;²~?’Þäi]i?–VòFNLG?É\ OôZ?’Ȳõa®?”p¶I”“ž?¡Š €ùª?”Ï#:d ?œ¡Åë¶TÞ?²“P(?nÂ?–®UÒ.?†úŒz_–È?“¶º Yæ¸?ˆ‹”âó?“vuØcʲ@@@@@,@(?ð?ð?ð?ð?ð?ð?x[ß×®€?YZHu+?bè»yZ?~~Á»Pjž@­K1xDÑ@¦BšSº4?‚¾²Nxâb?‰þL'ÝÌ?÷ìÝz\ôÔ?õ‘68^¬@Ÿr°—wüé@ª@ŸÎÔýó¶F@ŸÎÎÚbÀ@ŸÎÔýó¶F@ŸÎ×d¬uE@ŸÎÔýó¶F@ŸÎÕ-#N¹@ŸÎÔýó¶F@ŸÎÔ–9@0@ŸÎÔýó¶F@ŸÎД™Ó@ŸÎÔýó¶F@ŸÎÏ”àœ@¨nõÂ\)@¨n÷Oß;@¨nõÂ\)@¨nó ±(r@¨nõÂ\)@¨nõeòë>@¨nõÂ\)@¨nòˆêƒ@¨nõÂ\)@¨nõ¸š¬l@¨nõÂ\)@¨nôÅœ}@5÷â‚@·€@5ñüP™(@1sS÷ÎÙ@1n©+èd@0_²-V@0^ k+®Á@/æL/ƒ{K@/æìW<Ü@/æL/ƒ{K@/äG£(²@/æL/ƒ{K@/ãªy»­Á?|¬Æ Væ?2x™¶?‘ +HžOœ?‹û T!×?‘/+‡I?÷…»fq\?ƒ_ÿKt˜à?’5‰]¶g?‘„w9L?]»Æ]?‘ïM£?Ÿ,ã´?…wç{„²?ŒØîë?‚Ì8Kç6?ƒJ™½a7?‡¥ËŒ£?†ë'º£ Z@@"@@(@:@8?ð?ð?ð?ð?ð?ð?0xýHX¿Dæš0Ô?6ws??#%Æ>3@ŸÎÐvÇø@¨nõªX?W—6hz?_yƒ—1Y?ºüp°ê€Þ?Ä|–Žb|@ŸhwuÑ@«@©gOß;dZ@©gP£× +=@©gOß;dZ@©gP—y‡ @©gOß;dZ@©gP—)'@©gOß;dZ@©gPŠï²«@©gOß;dZ@©gO.°Ö§@©gOß;dZ@©gOÂzc@–=hr°!@–=ë…¸@–=hr°!@–=$ÏÜ @–=hr°!@–=‹[SJ@–=hr°!@–=]öU\@–=hr°!@–=G3Qä@–=hr°!@–=„„®q@3úqÞi­C@3úhaã:z@+€A‰7KÆ@+€0Ð"¹@)¥¡ÊÀƒ@)¥žµöÀŽKXP­@©gP ÈY:@–=ž·u1?=ÞRÚj§O?¢eZª·?…>„°R”»?<+5á£9F@ŸgÇØ÷ü@¬@¤cƒn˜@¤cÄ›¥ã@¤cƒn˜@¤c[À7@¤cƒn˜@¤chÛ‹«@¤cƒn˜@¤c©“ á@¤cƒn˜@¤bþ«6z@¤cƒn˜@¤c[À6@¢î¾vÈ´@¢î5?|ï@¢î¾vÈ´@¢î¼@¢î¾vÈ´@¢îƒä%¯@¢î¾vÈ´@¢îã¼Ó@¢î¾vÈ´@¢î«6z@¢î¾vÈ´@¢îU›=@4 ]cˆe”@4 +’£S&@0|í‘hr@0v_Ø­¬@0²-V@0ªÍžƒä@/žžš@/ž\‘ÑN<@/žžš@/Ÿ.Hè§@/žžš@/žvÈ´9W?žˆ2}?Čۨ1A?‘$Cê¡@í?‹Æ úJ-M?‘5ø gµÒ?ÔCXsñ?}Ñ¿ž,?’uß¿çÒ?–ÐO(·Š?Hª¦ºón?‘77…Âç?‘¡ë Þf?†úŒz_–È?Œ¾»•lŽ?ƒÆ×q„nð?ƒ!Ë *(?‡gϵ’õ?†å·ÑfWà@@@@@*@*?ð?ð?ð?ð?ð?ð¿G;z€?¼Qö?;‚àBk?)ÕóY¢ F@¤cÂwƒ<@¢î\„?Z³Õ¶Í»†?JÄâö¹M?À¶rwÿ9q?¡R¸ø*†@ŸgÊ0`å½@­@«šÄ“t¼Á.„€@«šÄ“t¼Á.„€@«šÄ“t¼Á.„€@«šÄ“t¼Á.„€@«šÄ“t¼Á.„€@«šÄ“t¼Á.„€@–ð£× +=Á.„€@–ð£× +=Á.„€@–ð£× +=Á.„€@–ð£× +=Á.„€@–ð£× +=Á.„€@–ð£× +=Á.„€@8Žì¿±[XÁ.„>¤µÜÆ@4Iº^5?Á.„M‰ûçm@3"-VÁ.„QnÙ‡@3Œ~($ Á.„NÜC,¥@3Œ~($ Á.„NÜC,¥@3Œ~($ Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø®@ª“ùÛ"Ðå@ª“ùÛ"Ðå@ª“ùÛ"Ðå@ª“þÒˆÎp@ª“ùÛ"Ðå@ª“ü]cˆg@ª“ùÛ"Ðå@ª“ü64@ª“ùÛ"Ðå@ª“üàuöü@ª“ùÛ"Ðå@ª“üú¬Ùç@¥åV“u@¥åVE¡ÊÀ@¥åV“u@¥åR×s@¥åV“u@¥åSê³g¡@¥åV“u@¥åV®}Vm@¥åV“u@¥åS¶E¡Ë@¥åV“u@¥åOAò×@4}:’£@4|ÓZ…‡”@1óS÷ÎÙ@1òa|ÚQ@1ï²-@1éùrH@0ÏO „M@0ÏhÛ‹­@0ÏO „M@0Í\ú¬Ùè@0ÏO „M@0ËÚQÎ?|¬Çëý ?ÖÈ ¼?“zkrØ-å?5~pY5?‘ÏX¼ãs~?‘#†»{׈?1·†Æjñ?’4 "ëžØ?‘c–…•#$?Ä…à6 +æ?’ºñS©YÖ?‘ éñ^?ƒÚ@êA²?Œ¾»•lŽ?‚ù…žÄ`x?ƒÈGó?‡Ä­‹›Ü?ˆ©{2¡Î@@@@@,@(?ð?ð?ð?ð?ð?ð?G;S»x¿Paë+4?ÒìMÄ\?@¢×5£qå@ª“ûq@Mè@¥åTl[}@2´“t¼j@2²:6¹Ùþ@1ÿò䎊r@1ÿKŽV¼@1ÿò䎊r@1ÿÂ+/iƒ@1ÿò䎊r@1ÿÔ<'??|¬Æ Væ?œe×å›Å?’ŸËÅî]R?‘TêÞ'€?’$åcCy¿?’¤w¼ê +Þ?}õ¬#„­?’hS°áÀ?‘83Ë_K?Ž[l7ˆé?‘Æüú øT?“sŠã;?ƒ+ÖÏZËã?ˆÉ‘øš6?‡c¡: +{?„TJ¿‚úÛ?‹ VZßà¹?‰¹§´ü“}@@$@ @$@1@4?ð?ð?ð?ð?ð?ð?)ÓÒ8ð¿G6s?Q€½^#A?*éBœ«®@žµØŸb€¼@£ÂÌ­ón?q}«M'Mq?J–fp|µ?ìºßü»? ?õsäèŸ@ŸfL¥e¥þ@°@®¤yÛ"Ðå@®¤y™™™š@®¤yÛ"Ðå@®¤{ÂÜ:@®¤yÛ"Ðå@®¤xw´P@®¤yÛ"Ðå@®¤m˜Ê&@®¤yÛ"Ðå@®¤þDk@®¤yÛ"Ðå@®¤}Ùb·@•'ï²-@•'RT`«@•'ï²-@•;IÁ@•'ï²-@•3´GO_@•'ï²-@•/Hû@•'ï²-@•+¾‘ø@•'ï²-@•,î^ —@5òÃÉîËû@5ô.h"@2» Iº^@2ÃÊ{ZÀ@2)Û"Ðå`@2,,R¢Z|@1a:’£S@1fAó+ª˜@1a:’£S@1d[ªžHh@1a:’£S@1dS9Ãñ=?~ì“?ÕÒJ?’ù¾3ü8o?‘<ºOõ`Ž?³±Qje?‘½{`?‘ØÐ{5J?|çµB &€?”µžÃ«hš?Ù¨à‰Ù?‘¤£§‰á&?‘Oõ9o?‘.OJ;@?‡½Ÿ_ y?ŒáÆ_„žœ?†Í¿ÄF?ƒTA¨8¬d?‡˜Þ•+åç?‡=`Ã-Ÿ@@(@$@*@:@5?ð?ð?ð?ð?ð?ð?T؆x?E¾4QÀ?>ƒ>ÒqÆ?2M7Ø@®¤|±Ëíþ@•*ðs?^z€3$Y?RÅ„Èôgÿ?ÇEÆÕ{Éj?±œÀ å@Ÿgí{l@±@©Õ+…¸R@©Õ/²-@©Õ+…¸R@©Õaÿ.Hé@©Õ+…¸R@©ÕQ4êK@©Õ+…¸R@©ÕHõÂ\@©Õ+…¸R@©Õ90¾ ì@©Õ+…¸R@©Õ> í(@­úÚ¬1@­ú×Oß;@­úÚ¬1@­ùÒÊW§‡@­úÚ¬1@­ú}¥œà@­úÚ¬1@­ú°¾ í(@­úÚ¬1@­úÓ©*0V@­úÚ¬1@­úÍ\ú¬Ú@3`ØDЩ@3Zu%F +@0O|í‘hr@03œ¾à@/¯ß;dZ@/!×Ûô‡ý@.-úCþ\’@-¯ùrGE9@.-úCþ\’@. á°‰ (@.-úCþ\’@.ÞÑ·?|¬Çëý ?·Èo|Z[?´ÕÞ@ò?³4ÏÚÓõ?’dÓÙiº?“ d?|¬Çëý ?Ý{æ6ï?Ä’ŽªÛ‡?²%i[¿>?’.<ù?“®°ýYè@?‚ÂÌ]å?°¡Ùir¯?¶ͰöÐ{?²a ä‰ ù?‡ã ËÄž?‰ö±«tï@@@@@,@*?ð?ð?ð?ð?ð?ð?fÊnæÚ¿\‹Oò?Cbk¼QkL?Sæìßsë@©Õ5vÄÚ@­úÔ+‚?cÌmo™Ðî?t>ì¨Ö12?ϵЛ.ká?ðWEn_Kö@Ÿe6à,¿Œ@²@¡cS÷ÎÙ@¡cS÷ÎÙ@¡cS÷ÎÙ@¡cÑä<@¡cS÷ÎÙ@¡c7LG›@¡cS÷ÎÙ@¡d¤¸ã@¡cS÷ÎÙ@¡a¾"è@¡cS÷ÎÙ@¡aßP:w@®ñ©ûçm@®ñ©ûçm@®ñ©ûçm@®ñÿxø@®ñ©ûçm@®ò ?ü2@®ñ©ûçm@®ò\@®ñ©ûçm@®ñ$$é@®ñ©ûçm@®ð<Ý0z@4¹Œ~($@4ë¯$@1T›¥ãSø@1Ucé_û:@0þV“u@0ÿAîH@0‚‚@·€4@0ƒqÛ|@0‚‚@·€4@0ƒEŒÒ +ú@0‚‚@·€4@0ƒ˜pJ¥Á?}@T˜ÁÎ¥?ö¦¿ˆ19?‘);`·Ž¤?‹òæý¾.?‘Cju÷³Œ?‘0_Ä•x?|¬h2:“?’ÝÍ£Ã?‹‚n‡Jd?;4 ïš‘?‘2r¤tŠf?z(-½Ÿ%?‚nÓ3î‰?Œæ»!½œË?‚õ’ºè?ƒV,‚?†¬jG¢Ñr?†Ý~Ã3F@@(@ @&@3@3?ð?ð?ð?ð?ð?ð¿+#;„€¿)*á~@?3ŒDÂM@Ò? æ”å0úV@¡cä¾@®ñS9t +?S`f¡äÕ?A1g7Ÿml?³ÛpQZ+è?Žš \{|’@Ÿfä`Š^@³@£€J=p£×@£€#n—@£€J=p£×@£€êçÕfÏ@£€J=p£×@£÷ +=p¤@£€J=p£×@£€#{J#:@£€J=p£×@£ÿ;dZ@£€J=p£×@£€¸ºÇ@¦›/²-@¦›33333@¦›/²-@¦œË)^ž@¦›/²-@¦œÂ\)@¦›/²-@¦ž ’:)Ç@¦›/²-@¦›ÿ.Hê@¦›/²-@¦›[W>«@8àØDЩ@8ËC•%@4Iº^5?@5u%F +@3A‰7KÇ@4Wâ‚@·€@2O „M@3X1&éxÕ@2O „M@2lô!.@2O „M@2 wškP²?§Q,Äš¤?Øç(Äx~•?ÅazLÑ&{?ºùlmÄŽA?¡ãÑWÐö?ª>Ô›„ïª?¾B×Õrµà?Ë=úÊ„¤?ÔXšŽ4†3}? ¦å_¹@@@@@,@*?ð?ð?ð?ð?ð?ð¿~*É ¿‰£l•€?fEz tg?¥#¹œ'@£€åäü@¦›¬?…‚ÝVïÏ?½ìœ8Äû?×’¦uȧ&@6 ùzͯ@ŸqF=r ö@´@®¢ú^5?}@®£ cg×@®¢ú^5?}Á.„€@®¢ú^5?}Á.„€@®¢ú^5?}Á.„€@®¢ú^5?}Á.„€@®¢ú^5?}Á.„€@˜ÉV“@˜Èì‹C•‚@˜ÉV“Á.„€@˜ÉV“Á.„€@˜ÉV“Á.„€@˜ÉV“Á.„€@˜ÉV“Á.„€@804mÅÖ8@80 + !°@5…?|í‘hÁ.„M‰ûçm@4ù7KƧðÁ.„QnÙ‡@4…œàu÷Á.„NÜC,¥@4…œàu÷Á.„NÜC,¥@4…œàu÷Á.„NÜC,¥?™û-™,Èß@8#˜@8¾:@8 >+@8Iç@8Ù?ŠÊuq•ú@8Î÷@8i§@8Å@8S@8û—?©ÀÛNáN@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøµ@®B\(ö@®L1&é@®B\(ö@®=¥œá@®B\(ö@®A|ÚP@®B\(ö@®OiDg8@®B\(ö@®CFÜ]d@®B\(ö@®H´9X@ª€\(õÃ@ª€…`A‰7@ª€\(õÃ@ª€˜_ö“@ª€\(õÃ@ª€·éú@ª€\(õÃ@ª€ŠçÕfÎ@ª€\(õÃ@ª€Ë)^ž@ª€\(õÃ@ª€y³Ð|†@9Y*0U2b@9OåÉä@5Ùº^5?}@5â3œ¾ß@5M²-V@5TµÜÆ?@5mÅÖ8†@5%›=ÈL@5mÅÖ8†@5eýŠÚº@5mÅÖ8†@5þ\‘ÑN?±>ÏÅósN?›äÄö/>?««ì'Qt?·ñšä~ä?¬„µÜÆ??¤ãn±µ««?¦NIÉ®š?–øÐ°€l?³üë5˜U?´’ö­‡½?£_™QÛÊ +?¤†k ßð? mÖ¿tE?nçO™å?¢ÿÐ4Ây€?§DÛ–£?²Ì7r_?¦ 24 +¾Š@@@@@&@"?ð?ð?ð?ð?ð?ð¿P(áX¿N ÀÉ”?Už–”¯?kj¼–.Ž@®I@UÙ@ª€†&‘O?s ¹5Ó°D?Š>•ý|?ªVœ&Sn?åb?ݽb@Ÿn…\CÚõ@¶@ª¢¬1@ª¡ìæËå*@ª¢¬1@ª¢1g$×@ª¢¬1@ª¢(úŒ@ª¢¬1@ª¢»#ØM@ª¢¬1@ª¢A·ø@ª¢¬1@ª¢—ŽÔŽ@—Ê 7Kƨ@—É㘳€@—Ê 7Kƨ@—Éÿ§ëð@—Ê 7Kƨ@—É÷h•ä*@—Ê 7Kƨ@—Éû +[á@—Ê 7Kƨ@—Éÿ«Û°#@—Ê 7Kƨ@—ÉøjÓP0@8 ØDЩ@8‡>«6z@3R Iº^5@3R*¹ƒŒ2@2ô“t¼j@2÷H§:+h@2fYJôðØ@2c–ÇrÖ¾@2fYJôðØ@2bÕ°ß»¼@2fYJôðØ@2c$š‹Æ?‰døëŽìÃ?‘Cä7j÷?‘Ûür8‡?ŽËú%µ é?’»µ$Qé§?“úïR¸Ø?«é:Ƶ§?’á‡bz½2?‘Jz*(`A?“$Ê H*?“cP×{ï(?‘ä`ÃÃÎ ?ˆ,`´èI?Ž¢f‚ÀàË?‰[eòdWR?|B¡6g?1‹xˆkÔ?‹RR–ó@@*@$@,@<@6?ð?ð?ð?ð?ð?ð?†˜Ë»Í€?KˆÓ/?b™¥iLR‰?XK“_™›@ª¢z–pÊ@—Éùéï@¢?„%~”-M;?n ²Esþ@b2G ?Ëù»»Õb[@ŸoÖb†(@·@§Ô-V@§Ô(õÂ[@§Ô-V@§Ô,/ƒ{J@§Ô-V@§Ô0Ë)^@§Ô-V@§Ô*W§†Â@§Ô-V@§Ô+ Iº@§Ô-V@§Ô-:’£@¬ã¼í‘hs@¬ã»çl‹D@¬ã¼í‘hs@¬ãºCþ\“@¬ã¼í‘hs@¬ã¹Î_p@¬ã¼í‘hs@¬ã³3333@¬ã¼í‘hs@¬ã¸*™0¿@¬ã¼í‘hs@¬ã·KƧñ@7}:’£@7‚u%F +¦@3n5?|í‘@3nHè§æ@2’Ðå`A‰@2•®æ1ø @2™Œ~($ @2›¬q ²–@2™Œ~($ @2›˜Çâ‚A@2™Œ~($ @2›ÓÃa@?ˆÿÀ)T¿Æ?“vuØcʲ?•œ‘æ¦M?‘ƒZ)Àˆ?’Þäi]i?“”üU§<­?Œs¤DÅÐ?’Òc§—Ûí?”_й@’?•Œ ;qí?–žóB» ”?“êXÔ #{?œ¨…2Œ?ލf†)"?„ËD(ºp?‡•ó¨–ˆ?‰/ã̽`ª?$Ìj½BÙ@@@@@(@&?ð?ð?ð?ð?ð?ð?FàxÍ<¿Q%KFÀ?#ïh#€‘¿?K xaq¹@§Ô*ž…äb@¬ã¸N»28?CÉMcc±ù?k¡41I?†²Æ <=?Ñ<€ëšÏe@Ÿi÷;úB@¸@«³É7Kƨ@«³Èr° Å@«³É7Kƨ@«³ÊôðØF@«³É7Kƨ@«³Ê=p£×@«³É7Kƨ@«³È Ô•@«³É7Kƨ@«³ÇæšÔ@«³É7Kƨ@«³Ç“Ý—õ@ªH¥ãSø@ªHQë…@ªH¥ãSø@ªHW>«6@ªH¥ãSø@ªH¬1'@ªH¥ãSø@ªHPHð@ªH¥ãSø@ªH¬1'@ªH¥ãSø@ªHp£× +@6½:’£@6½Òñ©ûè@2&‡+ J@2'süPH@1Õ`A‰7L@1ÖšÔ,<Ÿ@0ÏO „M@0Ð Ä›¥ä@0ÏO „M@0αÄ2ÊX@0ÏO „M@0Î;Í5¨Y?1·†Æjñ??ÖCã ?‘ñê&ètä?$¿ÀºÍ?‘b©b<]ô?‘Iãd©ì?ŒÅð´¯=Í?‚ã<ظÜ??ƒʾÏê?†¨›Z‡–X?†¶Ûã-†@@*@*@*@9@3?ð?ð?ð?ð?ð?ð¿'Ú¶ô@¿”þ€?È]îñ(?YØ@ +&×@©^­b¿×Í@”¶[’½ô?3²KOØ­??ó®¨1s?u%Øà¸õ?Š”}ƒ_%ª@Ÿfí/›M@º@­*~ùÛ#@­*~ùÛ$@­*~ùÛ#@­,1&ê@­*~ùÛ#@­+’:)Ç@­*~ùÛ#@­+íúCý@­*~ùÛ#@­)ÞÑ@­*~ùÛ#@­)7Kƨ@¦ë²-V@¦ë²n—P@¦ë²-V@¦ë³¶E¡Ë@¦ë²-V@¦ë²T`ªe@¦ë²-V@¦ë³Z…‡•@¦ë²-V@¦ë²£S&@¦ë²-V@¦ë²½<6@1cg ù l@1cg ù l@0ÎÙ‡+@0§†Â&€@.ü¬1&ê@.üÚQÎ@/Öð¸»@/ÖOv_Ù@/Öð¸»@/Õ$Ý1@/Öð¸»@/Ö_Ø­« ?É^òÀXæN?Æ¿5›7÷?‘WßÈDö@?Œݶ\ñr?‘EÉ@Ú?ë+ʦÜ_?ÐbV‡,?’NÛˆV(?§^ ÿo˜?Y‡…—Ø?üÓqÔNŠ?wN —z_?€b¡´ñ@?ŒË›Í‡Çq?ƒmÕ+&¬Š?ƒ!Ë *(?†©b/bJö?†¼Š˜L¥÷@@@@@,@*?ð?ð?ð?ð?ð?ð¿T€ûŽ0¿1Û$y¤?>DÊ,ž¤?!W"™2œ@­*Bj.„@¦ë²ò…zš?M-K±\Ó@?0j­KØÙ'?”K3Ó óá?W5…-ï©¶@Ÿs~ùR@»@­hI7Kƨ@­hHõÂ\@­hI7Kƨ@­hOO „M@­hI7Kƨ@­hO4Ö¡b@­hI7Kƨ@­hM«ŸU›@­hI7Kƨ@­hJçÕfÏ@­hI7Kƨ@­hK]Ìcñ@¥«ZŸ¾vÉ@¥«ZáG®@¥«ZŸ¾vÉ@¥«X7´¢4@¥«ZŸ¾vÉ@¥«X*™0¾@¥«ZŸ¾vÉ@¥«Zxl"h@¥«ZŸ¾vÉ@¥«WXâf@¥«ZŸ¾vÉ@¥«X}¿H@4›¹Œ~($@4›)^ž@0ã÷ÎÙ‡@0á×Ûô‡ü@0Wï²-@0VE¡ÊÀƒ@/Š#9Àëî@/†ÏAòØ@/Š#9Àëî@/ˆÎp:û@/Š#9Àëî@/‡â‚@·?|öOÿÝ?š¾ßÍZ?‘Ëü²ü ?‹¬àÌ’Ç?òǹíT­?ÛF»0?|öOÿÝ?’4 "ëžØ?ÀpMºÅ?@§[*^?ÚÌA B{?«àÓ RÆ?ƒ>ZÌw~?vùv“?‰6~„æAÕ?ŠŒµIÍ?ˆ0&YÊEd?‡…¤$Ó@@@@@@(?ð?ð?ð?ð?ð?ð?FM1ùX¿DT†Ï<?=Ý_ Ô?+ßõ‡ƒ@­hJ¼Ø¨@¥«Y—çv?]«°‰ˆ|?LViSÐö?Çä¦\Æï?¤¢w7z@ŸfõØÅp¢@¼@©qZ¬1@©qY™™™›@©qZ¬1@©q^ÒˆÎp@©qZ¬1@©q]Vlô@©qZ¬1@©q`@©qZ¬1@©q]¥œà@©qZ¬1@©qcn.±Ä@§ì1&é@§ï\(õÂ@§ì1&é@§ëjçÕg@§ì1&é@§ñë…¸@§ì1&é@§ª~ùÛ"@§ì1&é@§Ó÷ÎÙ@§ì1&é@§ÑÎ_@6÷â‚@·€@6ø§æšÔ@3¸r° Äœ@3º³g ù @3>V“u@3D,<žìÀ@3OO „M@3DÂø7´¢@3OO „M@3S9Àëíú@3OO „M@3MæšÔ,ëéPå€?)ÿÊõïÈé>ý³PJ‰®@¤"ÙÔà@™€6ÙG ö?8ÿü†÷? -––A?n¼îø ¹€?Xi6S@Ÿs Or’@¾@£õ?|í‘@£ñ©ûçm@£õ?|í‘@£ø}¿H@£õ?|í‘@£ò•éá±@£õ?|í‘@£÷ö+jè@£õ?|í‘@£øâe-@£õ?|í‘@£÷€4mÆ@©ovÈ´9X@©os÷ÎÙ@©ovÈ´9X@©ov”Fs‚@©ovÈ´9X@©o|í‘hs@©ovÈ´9X@©o~Ov_Ù@©ovÈ´9X@©ow€4mÇ@©ovÈ´9X@©oz¬1@7D¯O „M@7Ib¶®~@3‡ÎÙ‡+@3ŠOv`@2ä¼j~ùÛ@2ä¼j~ùÛ@2n_oÒ @2mÌcñA @2n_oÒ @2p¸ºÇ@2n_oÒ @2pØDЩ?3ßa=„?“:„aGS?‘ùé éµ??Œ:Z2‚b?•Äí¥×?”OPlðó[?¥K¶{Oÿ?—·f;m?’€fç½Î?‘~¬Àm?ó?”‚ÍÊL¾l?” ™¾,?…/‡ÙX·²?†¡HŸÊç?Š[¦Råb?†3_¾ˆ?‰6‰õË?ùDâΊ@@@@@,@,?ð?ð?ð?ð?ð?ð?W+¤ ª¿'<ìº?B¶š Où†?\çäÄ-û=@£÷xÔI@©oz¦Xò?abè«éaÉ?sÊ,ÊÂÔ?¼û®-Œ~L?×™&¯Zw@ŸnnG>´|@¿@ d¸Që…@ dµ¢¨y@ d¸Që…@ d”u"ŒH@ d¸Që…@ d¬ËqŸQ@ d¸Që…@ dµ ßý@ d¸Që…@ d«]6Èß@ d¸Që…@ d³ÑvL*@¢r-V@¢{žÂƒõ@¢r-V@¢gø ^@¢r-V@¢q¿+@¢r-V@¢vqXû@¢r-V@¢r¡4Y@¢r-V@¢pLÎ@9ò䎊@9j~ùÛ#@3¸r° Äœ@3»fßì¸@2Ÿ²-V@2§Xžý†©@1n_oÒ @1q¿W @1n_oÒ @1p{å¾f!@1n_oÒ @1qß•XÄñ?´Ÿƒ|…9‰?“húÑø[?”Ь ÷Ô!?cnvmÌ?‘”\‹•¯,?éî¼6-"?¤%„Ä]è?•Sq‹ãú?”hAůö>?Ñt‚U?’0 (ê‚`?k$zø^s?´0Wøî–n?•‘%’›Š?ð{*ÄŒ?„.P3­öc?ˆPBÃc,w?ˆÉZžúÏÒ@@@@$@2@,?ð?ð?ð?ð?ð?ð¿RˆDæÌ¿dÎâ­õ€?e׋%u?+’ÙvFVŽ@ d²'0«@¢s¡f?v¶ÌúL—!?Aˆ8»?çvå§ODß?z† ´ý“A@ŸqnÖ~Ö@À@­Z{dZ¬@­Z{dZ¬@­Z{dZ¬@­Z|‘ÑN=@­Z{dZ¬@­Z|Æ?@­Z{dZ¬@­Z|C,¥z@­Z{dZ¬@­ZzkP°ò@­Z{dZ¬@­Zz–¼@«s3333@«st¼j@«s3333@«s©*0U@«s3333@«t•*˜@«s3333@«s©*0U@«s3333@«sMj@«s3333@«s@N¤©@2ý:’£@2ýquŽ"@/ðå`A‰7@/ñ4êJŒ@-ÄZ¬1@-ÄohÛ@-…oi@-„Ý/ŸÀ@-…oi@-„êJŒM@-…oi@-…oi?É^žQ5P‚?êÚÏ$?‘4!Ÿ•p’?‹û…†_?‘Dj?È2I/?ÐbV‡,?’¼  g¶?ŽËÜ¿€?9ÍÇ~FÀ?îCq$u?_Ø~tñ?€bMÕky?Œ¾»•lŽ?‚† SFò?‚ìxqC?†špk Y?†¯Mž684@@@@@,@,?ð?ð?ð?ð?ð?ð¿P;ù¤¿'ÐÖ?,©f­ïï?D yû¹X@­Z{ Ð@«smâ9?;‘Ù¸µr?üǹ§s—?ri…·ò?'úϕї@Ÿs¥}@Á@£/²-@£ ƒn˜@£/²-@£1‚©“ @£/²-@£.}Vlô@£/²-@£1N;Í7@£/²-@£)7Kƨ@£/²-@£*W§†Â@«ƒ•%@«xbMÓ@«ƒ•%@«‰ 'R@«ƒ•%@«í(Œç@«ƒ•%@«„M:”@«ƒ•%@«‡»/ìW@«ƒ•%@«‚MÒñª@9eöý!ÿ.@9oò䎊r@4?|í‘h@4 àÞÒˆÎ@3²-V@3iDg8@2OO „M@2W¯·é@2OO „M@2R Iº^6@2OO „M@2OùrGE9?ÁxgÀ?’ãy)­3c?—2 :M?”ƒSÌz?“ £Ê­?”OPlðó[?¼ûÃv…cÞ?˜Ø*ªl€ô?ÃŽœ +Üi?•è­¸‡?’‚[fúbF?“t‡o(ÚÊ?¢'õ@hQ?vùv“?†ž5ðqë?…{BÕ0Þ?Œúq‘?<ש‹äN@@@@@&@,?ð?ð?ð?ð?ð?ð¿dÅJ>^@¿)¡<}ð?`*äÚôž?_>zõ0µ¤@£,m”ÊG@«„Õ}¥N?nùNÖs‚ï?ntPÓ¢?Ì~«æÂ–?Ë“"Žv²«@ŸrµäÃË@Â@Ÿ—wÎÙ‡@Ÿ—¥`A‰8@Ÿ—wÎÙ‡@Ÿ—ʼn~c@Ÿ—wÎÙ‡@Ÿ—Kg3ð@Ÿ—wÎÙ‡@Ÿ—䘧]@Ÿ—wÎÙ‡@Ÿ—£üE›h@Ÿ—wÎÙ‡@Ÿ—¯z¼Äy@¤H2-V@¤GêàÆŸß@¤H2-V@¤Hú£à<@¤H2-V@¤H&Ç2=3@¤H2-V@¤HVÌþ@¤H2-V@¤HLpäó@¤H2-V@¤H½0k@8rÃÉîËû@8-i}@3™º^5?}@3‰BHmJy@2ƒt¼j~ú@2o…dÜ.l@28DЩ*@2BÁ,FÍî@28DЩ*@2JdÀЬ@28DЩ*@2@";¡Û?¥¨«Ã& ?¤<¿C=?¨˜]ͱ%e?™TI@¨?£ØiÐ_>•?¤}CÞÙÒ?‚Cš æI?›ó×ÊÜ?>$WŠª9?šx™Hgrê?¥èTìPÝÚ?¡¨× +ic?¤¿Žèút?¯§ëC³9?›_RS´8?•~e÷Bˆ­?“_5 ~ö¼?•yþçÝ^Â@@(@"@&@9@8?ð?ð?ð?ð?ð?ð>ò»|d€?…ÚzÃ?jΗX?q^ºÈ½¯@Ÿ—µ[@¤H稜Ö?„*hõâ¨N?”Étó«9?åQV†W@6‘cý£ @Ÿk e/@Ã@¨@B Iº^@¨@B Iº^@¨@B Iº^@¨@B©“ â@¨@B Iº^@¨@EÉå@¨@B Iº^@¨@ES&Á@¨@B Iº^@¨@>ùÛ"Ñ@¨@B Iº^@¨@?b¶®}@¬ªhõÂ\@¬ªi7Kƨ@¬ªhõÂ\@¬ªmw1Å@¬ªhõÂ\@¬ªmžƒä'@¬ªhõÂ\@¬ªlÙè>A@¬ªhõÂ\@¬ªfö”Ft@¬ªhõÂ\@¬ªg®zà@27â‚@·€@27â‚@·€@.€A‰7KÆ@.v®}Vlô@-dZ¬@-½<64@,QÑN;Í6@,KƧï³@,QÑN;Í6@,KƧï³@,QÑN;Í6@,KŸU›=?É^òÀXæN?éDEâ©Ö?’÷˜–Èä?Uóú*˜?‘à2F0µÔ?‘•S‚üJ?ÐbV‡,?“[¡ŽuœÙ?“„;Ë~½ú?‘!¥zt9Û?‘¶|+üÎ~?‘:i€ÑìÂ?€g‹)ØêÀ?ŒÛÏ·+?‚ÂÌ]æ?ƒ3¸Î{Z?†å·ÑfWà?‡gϵ’õ@@@@@*@,?ð?ð?ð?ð?ð?ð¿fb¢èT€¿bá÷5ç@?Pv,Û8ü?Q ˆ;S0s@¨@A¯^ûœ@¬ªi|vrò?_½,ßî?`$Ž• ª?¶[ûO»’?´BŒ¡@Ë@ŸrÿÇ~çé@Ä@¦ö\¬1'@¦öMV@¦ö\¬1'@¦öKC,¥@¦ö\¬1'@¦öx_ö”@¦ö\¬1'@¦ör:)Çz@¦ö\¬1'Á.„€@¦ö\¬1'Á.„€@ ¥U$Ý@ ¥NzáH@ ¥U$Ý@ ¥fffff@ ¥U$Ý@ ¥Y=Ùc@ ¥U$Ý@ ¥V®}Vm@ ¥U$ÝÁ.„€@ ¥U$ÝÁ.„€@9-¥œàv@9Ö8†YK@4» Iº^@4¯Ÿ¾vÈ@3>V“u@3)îËû¶@2æYJôðØ@2ÒZîcŠ@2æYJôðØÁ.„NÜC,¥@2æYJôðØÁ.„NÜC,¥?¿‰ø«pâ¬?¥HyR‰á?Ã4Eá!³°?ÀlˆfW¬@8Iç@8Ù?ŦŠT±F÷?ŸÏݼÃE?¢ÌïRt?¥à„Ÿ¹Ø@8S@8û—?¤$Ë×ù´A?©P£(®¥?£%øZîo ?¨Ó&È@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøøÅ@¥/Ù™™™šÁ.„€@¥/Ù™™™š@¥0ö”Fu@¥/Ù™™™š@¥/ùõY³Ï@¥/Ù™™™š@¥0§ï²@¥/Ù™™™š@¥0 P°ò|@¥/Ù™™™š@¥0SŽóM@ŸÜ‚ Iº^Á.„€@ŸÜ‚ Iº^@ŸÜg ù l@ŸÜ‚ Iº^@ŸÜfšÔ,<@ŸÜ‚ Iº^@ŸÜu%F @ŸÜ‚ Iº^@ŸÛÜC,¥z@ŸÜ‚ Iº^@ŸÜ1&éy@7`ØDЩÁ.„>¤µÜÆ@2Ô›¥ãSø@2³ÉîËû@1¢-V@1‹Í5¨Xy@1zÔ,<ží@1T‡ü¹#¢@1zÔ,<ží@1W†Â&€ž@1zÔ,<ží@1Zu%F +@8J¨?¢4o:™v?›(`¥Æ´?·€r,Ö?° ½Pð Q?³ÒÇÎÛ@8J¨?Ñ¿ž,?˜Y ¶E–X?·0Ï+×Pl?´Ž6ÖEy?·ÙÇJ¡r.@8p÷?ª‚eûƒ+?Œ¢yëjk±?…ÇóÏ€9"?’:™/ʼn?£„©Ó8@@@@,@*?ð?ð?ð?ð?ðøøøøøøøøøøøøÆ@¬ç.—Oß@¬ç+ Iº@¬ç.—Oß@¬ç,VÕϪ@¬ç.—Oß@¬ç+)^ž@¬ç.—Oß@¬ç.Ëûµ@¬ç.—Oß@¬ç._oÒ@¬ç.—Oß@¬ç/²- @«[/Ÿ¾@«[%¸Qí@«[/Ÿ¾@«[¬1'@«[/Ÿ¾@«[¹õYµ@«[/Ÿ¾@«[}¿H@«[/Ÿ¾@«[žì¿°@«[/Ÿ¾@«[¸Që…@8­¥œàv@8´ðØDÐ@3uãS÷ÎÙ@3vÈ´9X@2]V”@2](Œç°@1øDЩ*@1öOv_Ù@1øDЩ*@1øÁTÉ…ñ@1øDЩ*@1ú ÞÒ?¯ò5}'Î?“‹ë÷?’måGSžq? Ð ÷Ž ?“”>C,4?‘f]£àG?¥K¶{Oÿ?–HÞÆzì²?‘ª¦ZqÍ?’‘Ç#·X?“h_N’%¿?‘ÔÄ÷Õ?ɽ±•4á?Ó%y*£=?ƒÚ@êA²?„•ˆG’Z¾?ˆëÅoë?‹&¸ê±fÂ@@@@@,@(?ð?ð?ð?ð?ð?ð??Z. @?2ÿ2p?:·«êümù?^°"é$éÀ@¬ç.¨öxæ@«[_•¸Í?MðL¡n׸?sÊ\¹,ÁW?‘ÖûF¾}î?ÜbÉyî³2@ŸpíˆE»@Ç@£X§ï²@£X× +=q@£X§ï²@£Wù#¢œx@£X§ï²@£X¶®}V@£X§ï²@£WúQÎ@£X§ï²@£XÝ/Ÿ@£X§ï²@£X Iº^5@ª¶Þ¸Që…@ª¶Üj~ùÛ@ª¶Þ¸Që…@ª¶È1&éy@ª¶Þ¸Që…@ª¶Õ '»@ª¶Þ¸Që…@ª¶Í„M<@ª¶Þ¸Që…@ª¶¨è§ç@ª¶Þ¸Që…@ª¶…‡“ݘ@6?–»˜È@6@–»˜Çâ@3R Iº^5@3IXbMÓ@3“t¼j@2ûxFÜ^@2£ÉîËû@2’GE8ï5@2£ÉîËû@2’n—Oà@2£ÉîËû@2Œ‘ÑN;Î?„F/·ÿP5?¥¡J®öT?° +ô«Çñ?¤ÊÈ8Ó~ö?¥–X%ü¯›?©9j +?|öOÿÝ?¬Y©YFpb?£~$Ã9y?™³0%rp?¹\r¸øˆ€?·ŒMÏ>²?†ž5ðqê?”kcÿä©Ú?Œó}?ï?’4i+Ëè?’;WZŸÿÔ?žÎ"”`ù…@@@@@*@(?ð?ð?ð?ð?ð?ð?.5ò@¿ÌU”?WšF: <¬?m 2Xv@£XÕµ I@ª¶ÒÂew?pìˆW¹?6ˆwïh?Ô4,ð~ž?õú™rD@Ÿ^ÝS~ÂP@È@¯ã=ó¶E¢@¯ã>ùÛ"Ñ@¯ã=ó¶E¢@¯ã>ߤ?æ@¯ã=ó¶E¢@¯ã>Åm\û@¯ã=ó¶E¢@¯ã>Åm\ú@¯ã=ó¶E¢@¯ã<ú¬Ùé@¯ã=ó¶E¢@¯ã<ú¬Ùè@ —MÒñ©ü@ —NV“@ —MÒñ©ü@ —MÒñ©û@ —MÒñ©ü@ —N_oÒ@ —MÒñ©ü@ —M\ú¬Ú@ —MÒñ©ü@ —Mžƒä&@ —MÒñ©ü@ —Mžƒä&@0eöý!ÿ.@0eðoiDg@*¼j~ùÛ@*É…ðoi@(´ýó¶E¢@(´ðØDÐ@(Bu%F +§@(Bh Ô•@(Bu%F +§@(Bu%F +§@(Bu%F +§@(B‚@·€5?ðO­W¬ÃÆ?ÉGãA­÷?‘ÌË>¯f?‹Æ úJ-M?ëÎ@ A2?ºª$Ð?ð„ƒ;0?’j%ÓRa?†[‘'Í?CÚ B÷?ÔÒ@úˆ‘?M\³Ù“@?ð!̃?Œ¯þuõí?‚oÁÆÜ§÷?‚ãaÎúvh?†ˆ#.÷?†‰Oú|q?ð@@@@,@,?ð?ð?ð?ð?ð?ð¿K€t? ^7°?0‚Lœ`Z?„ÃÜ#éß@¯ã=¦ÂøP@ —M†¡h??}TYT#‘?!ŒœPA¦?x÷ÃÙû*? *Û<['@Ÿs.½µv@É@¥¨õÂ\@¥¦$Ý/@¥¨õÂ\@¥cˆe•@¥¨õÂ\@¥œ¹#¢@¥¨õÂ\@¥Ž¤¨ÁU@¥¨õÂ\@¥iDg7@¥¨õÂ\@¥’° Äœ@©á,1&é@©á(õÂ[@©á,1&é@©á -à @©á,1&é@©á!TÉ…ñ@©á,1&é@©á¥œá@©á,1&é@©áb¶®|@©á,1&é@©á¿HÌ@7åöý!ÿ.@7ÝŠÚ¹õZ@3\Iº^5?@3V¸ºÇ@2Õ`A‰7L@2Ìí‘hr°@2ò䎊r@2vYJôðØ@2ò䎊r@2ufÏAò@2ò䎊r@2w€4mÅÖ?‡YÍ_?”"¶²'Ýþ?›£=Ñã5?œIXo_í? (E•¦ðç?à¸å¯X8ý‘ ?œñ=¼™Õ›?£(¸u¡w,?›/ÜŠ—‰¶? Ú¼öíËF?§Ò¸ùBz3?ž:“ñŸ«ä?© °¨Þÿ?§7&Öcè?¨`Í“=B‘?ªéyú¤Ÿh?†aÞàI*”?“[ ·S?¦$syW?R è®ãî?•Vû›¦Ã¡?”"‚Ò#@@@@@,@$?ð?ð?ð?ð?ð?ð¿_:ßÃÈ?|õaP?ešÛÚL?cRl°ö~@¥²ã9K¥:@¢f½/×Q®?r‘)2 ?SžÔ8]Î?à)à[C?Ïó4d¥×P@Ÿlµ%š@Ë@«/ž¸Që…@«/ž5?|ï@«/ž¸Që…@«/¥F +¦L@«/ž¸Që…@«/§ÕfÏC@«/ž¸Që…@«/œÚQ@«/ž¸Që…@«/ŸØ­« @«/ž¸Që…@«/ŸË’:*@œé8Që…@œé@t=3@œé8Që…@œéQ·Xâ@œé8Që…@œé7KƧð@œé8Që…@œé>Åm\ú@œé8Që…@œé>\‘ÑM@œé8Që…@œé>«6z@8IÎ_oÒ@8Sg ù l@3|í‘hr@3‰Q‚©“ @2Æ“t¼@2À4mÅÖ8@2Eœàu÷@2AohÛŒ@2Eœàu÷@2Aä÷eý‹@2Eœàu÷@2B×sü?˜ê?©úté?¦Ì '?” +Ÿ”îtI? Ìç,Z?–[À5ž¨?“lP {“›?¦¸Ùûu‘?˜ଚÿw?‘ŽütÅÒ(?›¼`’ i2?•]ÅvüM ?“ÛKÂè• ? ˜û½#Z?·ïö)h?‡9Â@0wç?‰®ðúcåZ?‹aÊ•TI?‹¼`’ i2@@@@@,@(?ð?ð?ð?ð?ð?ð?B 6ø¿åÌ5ð?E°¨†¬Û? *kçÛÛ@«/ž!dJ­@œé>ÎF·÷?`×Ò&D°ˆ?*‹UnÔ£ì?¸!ÃÉØ A?@-ªo¹@Ÿor¼’94@Ì@©Pq©ûçm@©P}ó¶E¢@©Pq©ûçm@©Pmí(Œæ@©Pq©ûçm@©Pw1Å@©Pq©ûçm@©Ps3334@©Pq©ûçm@©PsŽóMj@©Pq©ûçm@©Pu?|í‘@®á33333@®á+ Iº@®á33333@®á2° Ä@®á33333@®á1Ä2ÊY@®á33333@®á-í(Œæ@®á33333@®á0bMÒò@®á33333@®á49Xb@7í¥œàv@7öÁ½¥@3ahr° Ä@3a©ûçl‹@2~V“u@2U›=È@2+xFÜ^@2* ÞÒ@2+xFÜ^@2,j~ùÛ#@2+xFÜ^@2+ŸU›=?¡ÅꯨŠT?W[†?“%HCâ=s?ŽVåç0ÇO?‘õbÐ\?‘_ Ýß?™™™™™™š?’Òc§—Ûí?’ŒZzˆZ•?‘!¥zt9Û?üÓqÔNŠ?X78›š?¶)d”K‚A?ŒÖ +ÄȲ?ƒ>ZÌw?…”rsw?ˆ©{2¡Î?ˆÔÞÑ—æJ@@@@@@?ð?ð?ð?ð?ð?ð¿NµŸ ?_@§²?Tšš¨Ub„?=H«lÃÉ@©PtЈ£@®á/ëýàÉ?jÙõ VM?VkŸèè³0?ЛgR9Ø?¨2ÃoñŠ@ŸoPœo@Í@®>ùXbN@®?@®>ùXbN@®>ùõY³Ï@®>ùXbN@®>üPHñ@®>ùXbN@®?–R½;@®>ùXbN@®>þi­BÄ@®>ùXbN@®?¼£n@¬Î¼í‘hs@¬ÎÈõÂ\@¬Î¼í‘hs@¬Î»dZ¬@¬Î¼í‘hs@¬Î¾ùÛ"Ò@¬Î¼í‘hs@¬Î¸y=Ù~@¬Î¼í‘hs@¬Î³üPI@¬Î¼í‘hs@¬ÎƸºÇ@7Û¹Œ~($@7Ô‡ü¹#¢@4° Ä›¦@4ÈÔýó¶F@4"-V@4'Xâe,@3cÉîËû@3i¦µ (@3cÉîËû@3aN;Í5¨@3cÉîËû@3U`A‰7L?€‚ñêã ?—Ü¡UŒœ-?›£=Ñã5?—³Q+Ùv?¤áøl‡ä(?¤ Yâ9>?š•§q!U?˜[Gú,Ã?¥Eét'?–…%j»a?¤pè·FÌs?¥ý¸Às( ?Ó ¾îóô?–µ°jÆÄ?Vrÿä?•2YyÐ?£P;røo?ž\?/dž@@@@@(@&?ð?ð?ð?ð?ð?ð?C„„4(¿h?&þ?>ßÒ½RDÌ?hëÇ]*@®?XbóZ@¬Î¾e=Nâ?`uŽúÚ ?ƒøSkQ»?¬ó¨ËŒ?ì±3X\*V@Ÿgõ¤hÎ@Î@¬gl‹C–@¬k Iº@¬gl‹C–Á.„€@¬gl‹C–Á.„€@¬gl‹C–Á.„€@¬gl‹C–Á.„€@¬gl‹C–Á.„€@¥Ë¶E¡ÊÁ@¥Ë´9Xa@¥Ë¶E¡ÊÁÁ.„€@¥Ë¶E¡ÊÁÁ.„€@¥Ë¶E¡ÊÁÁ.„€@¥Ë¶E¡ÊÁÁ.„€@¥Ë¶E¡ÊÁÁ.„€@6Žì¿±[X@6Žæ1ø @4)‡+ Á.„M‰ûçm@4t¼j~úÁ.„QnÙ‡@3³&Á½¥Á.„NÜC,¥@3³&Á½¥Á.„NÜC,¥@3³&Á½¥Á.„NÜC,¥?|¬Çëý @8#˜@8¾:@8 >+@8Iç@8Ù?ˆÿÀ)T¿Æ@8Î÷@8i§@8Å@8S@8û—?˜Ð™Q$Ò@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøÏ@¥¯ +Àƒo@¥®&éxÔþ@¥¯ +Àƒo@¥®ø_ö”@¥¯ +Àƒo@¥®ü‘ÑN<@¥¯ +Àƒo@¥¯ŠqÞk@¥¯ +Àƒo@¥¯ŽŠqÞ@¥¯ +Àƒo@¥¯ Ƨï@¨Ø²° Äœ@¨Øg+ J@¨Ø²° Äœ@¨Ø¬VÕÏ«@¨Ø²° Äœ@¨Ø§ÕfÏA@¨Ø²° Äœ@¨Ø¡£n.²@¨Ø²° Äœ@¨Ø°å`A‰@¨Ø²° Äœ@¨Ø¬~($ @7^Hè§æ@7X§æšÔ@35ãS÷ÎÙ@3,àuöý"@2K"Ðå`B@2A:’£S@1î_oÒ @1å*™0¾@1î_oÒ @1êÍžƒä&@1î_oÒ @1ê^5?|î?íðÇìLâ?Ÿ†€–5YM?š^ÇÙ*G?“Ÿd§„À?•bJÖµæÿ?”É–wç†è?Óf<Ç4?ŸÏݼÃE?ŸÀh¡º?—,àÐÑž?• ¸°R¨?”'q²TrQ?Цÿßë?£?‘a÷nñ?‰ZaizÚD?‰*6SpK?Œ8¸wx¯?<ש‹äN@@@@@*@&?ð?ð?ð?ð?ð?ð¿XŸ÷þ?t¼ÿ +X?mZ¹…~sP?mS›ŒE¨é@¥¯ +{§°ª@¨Øª5`€Š?{™8)íw?{¯ˆá”E?å›ð[ôÆÀ?âü’üE<Œ@ŸsÖ×I}@Ð@£+Y™™™š@£+UÂ\*@£+Y™™™š@£+f +¦L0@£+Y™™™š@£+qhr°!@£+Y™™™š@£+B3œ¿@£+Y™™™šÁ.„€@£+Y™™™š@£+Eœàv@§M£S÷ÎÙ@§M•Â\)@§M£S÷ÎÙ@§M–È´9Y@§M£S÷ÎÙ@§M—KƧï@§M£S÷ÎÙ@§MmjO@§M£S÷ÎÙÁ.„€@§M£S÷ÎÙ@§M˜y=Ù@8įO „M@8½jOv@4+¥ãS÷Ï@4Fs×Ü@3A‰7KÇ@3‚&€IQ@3L¿±[W?@3)ÞÑ·@3L¿±[W?Á.„NÜC,¥@3L¿±[W?@3Ý—ö+k?’Óusÿ\Ã?¡ùŠÀs› ?¦ªÓz%d?‘4ãM^@8Iç?ÀYëÿMß?ÅèWl ª?¥5Ÿþ:7?  õ%w?žätmî>@8S?ÁšTEkc?›Ny”…?šæÿ1­Í?˜¸DU#L†?²a ä‰ ù@8 Ø?Â>C]æþÅ@@@@@(?ð?ð?ð?ð?ðøøøøøøøøøøøøÑ@¬ š¬1Á.„€@¬ š¬1@¬ ]Æá#Þ@¬ š¬1@¬ |ÚÎ,*@¬ š¬1@¬ AAgDÎ@¬ š¬1@¬ CÏó`Ð@¬ š¬1@¬ Pú@‰‘@•ßþùÛ"ÑÁ.„€@•ßþùÛ"Ñ@•ßÈe¼þù@•ßþùÛ"Ñ@•ßꎠ~@•ßþùÛ"Ñ@•ß™hÿZ@•ßþùÛ"Ñ@•ߪ0Oí[@•ßþùÛ"Ñ@•߈$*€¶@8Ç>«6zÁ.„>¤µÜÆ@3Ìí‘hr°@3«is6¥@2ƒt¼j~ú@2maeÐÌ_@2Œ¿±[W?@2dq¾ÀY+@2Œ¿±[W?@2dÛ¿Š»{@2Œ¿±[W?@2j˜ë¯@8J¨?˜=‚…ذc?—”·17lÞ?³ê?UbBl?¶„H¯!?³|Js3@8J¨?˜²Æ?ÁÕ?œ2OozUÇ?¬ekÉ~‰?¯Xq ®z?¬4PTýFÃ@8p÷?•»„´µî…?ì-b_ž9?‘›>Ûù±?‘r꟧ô?šŽÃhS´þ@@ @,@<@:?ð?ð?ð?ð?ðøøøøøøøøøøøøÒ@¡}bÐå`B@¡}s3333@¡}bÐå`B@¡}` qv@¡}bÐå`B@¡}JŒL˜@¡}bÐå`B@¡}X7´¢4@¡}bÐå`B@¡}M„M;@¡}bÐå`B@¡}Q·Xâ@Ÿÿ8Që…@Ÿÿ8Që…@Ÿÿ8Që…@Ÿÿ 'RTa@Ÿÿ8Që…@Ÿÿ?|í‘h@Ÿÿ8Që…@Ÿÿ*Ov@Ÿÿ8Që…@Ÿÿ6+jçÕ@Ÿÿ8Që…@Ÿÿ=p£× +@7²ÃÉîËû@7¯ƒ{J#:@38r° Äœ@3=¥œàv@2v§ï²-@2hÛ‹¬@1‚‚@·€5@1„!-w2@1‚‚@·€5@1ƒ,¥zxl@1‚‚@·€5@1„ohÜ?ð°–Ž]?’°BÉô-?žÉÖìäÔ”?ŽVåç0ÇO?˜ +0˜ggk?š¨¶$NxÌ?ð°–Ž]?”ºu(†¼¦?ŸP­Ñ‚Ÿ½?”J6bº?“â¹Í[Óh?”æâ„o?ð*wjs—?‘Žèã&!+?¬Öva4z?—†0ÚŒ#?Ü×þë¿?‘  ¶‚3?ð@@@@,@*?ð?ð?ð?ð?ð?ð¿p!I$?qKx°…@?aƒÝFgXs?0©:Šþ{@¡}SAÜc@Ÿÿ3^˜Üg?pºÁpäà?>«Ü T?ÍÕØ.ç@È?kEPÊS@Ÿrß›åX<@Ó@¯§’ñ©ûç@¯§“3333@¯§’ñ©ûç@¯§º^5?~@¯§’ñ©ûç@¯§G®{@¯§’ñ©ûç@¯§˜Që…@¯§’ñ©ûç@¯§”ðØDÐ@¯§’ñ©ûç@¯§Œ"h Õ@žL´9Xb@žL´9Xb@žL´9Xb@žMaG®{@žL´9Xb@žLô9Xa@žL´9Xb@žM)xÔýô@žL´9Xb@žM?@žL´9Xb@žLøFÜ^@5#g ù l@5#Š Þ@6@ Ä›¥ã@6>BZîc@5;Ƨï²@5+ÚQÎ@4œÚQÎ@4…µsê³h@4œÚQÎ@4†ÏAòØ@4œÚQÎ@4‹6z—?|öOÿÝ?¯;©$.ˆ?¡}´v†M÷?¢~ +]zýØ? 3sG &?›8½üãüÏ?}Ñ¿ž,?¯ê‡J˜®2? PÇ´âþ?±Å¢/ó”‡?£ ƒU¾Š?¤VTº¨ÄJ?…/‡ÙX·²?¶Ü£×ìD?£å$óMš?™òvÈc?¢2ðø:Uù?“aÑ#@@@@@@"?ð?ð?ð?ð?ð?ð¿D3Úx?‚mjh?LÉ­Ð=æ^?e|•ï@¯§’z+¨ö@žLÎ^Á ?g° ·N?€>÷7¶ëû?Ò5Õ¿Vl?ôû:Cº€@Ÿa/É·@Ô@¢ïÜ(õÂÁ.„€@¢ïÜ(õÂ@¢ï£Ë ¢@¢ïÜ(õÂ@¢ðx„J˜Ã@¢ïÜ(õÂ@¢ïâÆ~[|@¢ïÜ(õÂ@¢ï ’r¡@¢ïÜ(õÂ@¢ï£Ž ¾Z@šéì‹C•Á.„€@šéì‹C•@šêùòhì@šéì‹C•@šé÷îÄ'4@šéì‹C•@šê€þ .3@šéì‹C•@šé}³o³@šéì‹C•@šéýv¤ãE@8í¥œàvÁ.„>¤µÜÆ@4£÷ÎÙ‡@4R꿪š­@3V”@3} ¼ZÃ@3Þi­BÄ@3È;3¯T@3Þi­BÄ@2ßApÂz¶@3Þi­BÄ@2Óµx¯,@8J¨?¬äJ' o£?˜‘psÚ?©Ž˜7#wš?¢ÎQº'?¬¢jT¦ƒ½@8J¨?µŒS«Ô+?¡ö,æÿC?£V%/@6_?²‡5I¾è?°Ê(®ã@8p÷?®ñôæ\…?²3„´º7¾?¨ë[-ä$ÿ?£îï…ä^?¤J^&¶+ @&@"@&@5@5?ð?ð?ð?ð?ðøøøøøøøøøøøøÕ@§ë­V@§ë¤Ý/Ÿ@§ë­V@§ë|64@§ë­V@§ëohÛŒ@§ë­V@§ëf?@§ë­V@§ë A‰7L@§ë­V@§ë{"Ðå`@¥UxQë…@¥UXQë…@¥UxQë…@¥UÎ_p@¥UxQë…@¥Týã¼Ó@¥UxQë…@¥U"ø7´¢@¥UxQë…@¥Uu$Þ@¥UxQë…@¥UH´9X@6Hè§æ@6oiDg8@2À Ä›¥ã@2‰#¢œwš@2RÐå`A‰@2†Â&€@1cÉîËû@1/Š Þ@1cÉîËû@13œ¾ß¥@1cÉîËû@1× +=p¤?¢Æ÷Xê†?¼±¾YÞd?µR¡™&öù?¶a‰]?“”>C,4?˜£µ³ÿ)?¾„CÚ–•F?ÇFû6£ä¿?Êo†™Æ J?Æö|1©Ö?šâ6¿°P?£+ÍNPÞ?ºWHõVÄå?«R²QFÆ?­$°*a„?¥]Ñ=‹Çÿ?†Ü‘ °Ô?ˆCns¥ @@@@@@?ð?ð?ð?ð?ð?ð¿z?Ïñä¿€¸Ô?~k)ž?‘ÑåOß‹@§ë“¸¬@J@¥Uh–ÊY™?–ý¥M†a7? aƒÚ-/U@6? …(@•Q•ïÛñ@Ÿrñ]C£Ê@Ö@¢ü;dZ¬@¢ü<¬1'@¢ü;dZ¬Á.„€@¢ü;dZ¬Á.„€@¢ü;dZ¬Á.„€@¢ü;dZ¬Á.„€@¢ü;dZ¬Á.„€@œ‡Éº^5?@œ‡Ïß;dZ@œ‡Éº^5?Á.„€@œ‡Éº^5?Á.„€@œ‡Éº^5?Á.„€@œ‡Éº^5?Á.„€@œ‡Éº^5?Á.„€@4 Î_oÒ@4ù7c5@0}‘hr° Á.„M‰ûçm@0“t¼jÁ.„QnÙ‡@/#¼ÓZ…ˆÁ.„NÜC,¥@/#¼ÓZ…ˆÁ.„NÜC,¥@/#¼ÓZ…ˆÁ.„NÜC,¥?|Ñb×¶@@8#˜@8¾:@8 >+@8Iç@8Ù?~ì“?ÕÒJ@8Î÷@8i§@8Å@8S@8û—?Ôgl˹@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø×@ @D›¥ãT@ @E`A‰7@ @D›¥ãT@ @F3H+é@ @D›¥ãT@ @FBN‘@ @D›¥ãT@ @E·ù1À@ @D›¥ãT@ @Cm¯»O@ @D›¥ãT@ @Cj=@¤H±&éxÕ@¤H±&C\g@¤H±&éxÕ@¤H±"„@¤H±&éxÕ@¤H°,Ø@¤H±&éxÕ@¤H±o힟@¤H±&éxÕ@¤H±¯Èœ@¤H±&éxÕ@¤H°òl3\@3ò䎊@3e+ÓÄ@-û"Ðå`A@-û ˆ¤~Ð@,´ýó¶E¢@,´·F!;ü@+Aò×t@+Žål—™¦@+Aò×t@+ކil»©@+Aò×t@+Ž“„Þ17?}õ¬#„­?Ó‡V?‘¦ÿ?‹³Q‹Ï‹Í?è³/ï†?¹ÝGIv ?|¬Æ Væ?’ÈI™™?‡ÜIêÉ?4£´k?Í`äÓ@?PGê&¦?‚nÓ3î‰?Œ­Œl³J?‚wyó2uÕ?‚ä CñB ?†‰Î¢ã‡?†‰Î¢ã‡@@,@*@*@8@9?ð?ð?ð?ð?ð?ð¿7§¾X¾öt»€?*Ä·­ìËT?ÈÓÈ÷ @ @D»†«@¤H±!ßî?JŸù|ý¼Y?(QÍ”ß0¿?¢Ý Ó‘cE?^×ZÑß~@Ÿgô8•@Ø@©\(õÂ@©Y‡+@©\(õÂ@©_¼@©\(õÂ@©[šu@©\(õÂ@©d¨ÁTÊ@©\(õÂ@©_ö”F@©\(õÂ@©^ í(@¨õŸQì@¨õÅ¡ÊÀƒ@¨õŸQì@¨õÀuöý#@¨õŸQì@¨õÇï²,@¨õŸQì@¨õĵܯ?@¨õŸQì@¨õĨÁTÊ@¨õŸQì@¨õÂ\(÷@7N쿱[X@7L~($ x@3|í‘hr@3Œ<žì¿±@2×ï²-@2Ü¥zxl"@2cÉîËû@2ba|ÚQ@2cÉîËû@2ct¼j~ú@2cÉîËû@2bˆÎp:ü?€‚ñêã ?•˜Qi{cj?’÷˜–Èä?[d?“¦Æ_ÌdA?“*“žj±»?}Ñ¿ž,?˜Æ&ÀÒ ˆ?’€fç½Î?‘Ò–¬q?–›·†ø?’"(îL?ŒR‹w#z?‘žˆ2}?ƒ/‹ÍY}’?ŽY8Z•?Ž .0åv?—¤“<†›O@@@@@,@(?ð?ð?ð?ð?ð?ð?ZîÏÞ@¿@"^.ð?R]&œ•ªc?"c¼O¢µÆ@©]RÉj@¨õÄ¢²qç?r#0µÂQ?B¢îOŒ¢?ë˜wDönÓ?GÐxº@Ÿf„럳d@Ù@­ÿŸ¾vÈ´@­ÿŸ¾vÈ´@­ÿŸ¾vÈ´@­ÿŸ|í‘h@­ÿŸ¾vÈ´@­ÿ uöý!@­ÿŸ¾vÈ´@­ÿ ªdÂù@­ÿŸ¾vÈ´@­ÿž¸Që…@­ÿŸ¾vÈ´@­ÿŸö”F@§Ê§ï²@§Êffff@§Ê§ï²@§Ê€IR@§Ê§ï²@§Êâ‚@¸@§Ê§ï²@§ÊÏAò@§Ê§ï²@§Ê$Ý/@§Ê§ï²@§ÊæšÓ@5rÃÉîËû@5qò×s@13S÷ÎÙ@13t¼j~ú@0]V”@0]!ÿ.Hè@/̲•éá±@/ÍjOw@/̲•éá±@/ÍBÃÉîÌ@/̲•éá±@/Ì篷é?|¬Çëý ?ß‹’bÏ?‘O‚%c?Œ ßõIyû?‘ ·èf?ý‰w'¬?|öOÿÝ?’,ö´´Ï#?ÀpMºÅ?6) }’ë?‘Ú‚ýc¯?ÐnçK/?ƒÚ@êA²?ŒÖ +ÄȲ?‚Ì ÝŽ‚8?ƒ¦$H?†©b/bJö?ˆk! ¨l@@@@@&@,?ð?ð?ð?ð?ð?ð¿gÀ?È4?à?)Y9{xŠ«?£ÞR–@­ÿŸžËü@§Ê‘ßæ?I0„þC³?6ó‡’…È7?¡*ÑÖžRµ?zòË1èÝZ@Ÿfß+¯¤/@Ú@§®J=p£×@§®KC•@§®J=p£×@§®EÖ8†Y@§®J=p£×@§®IùrG@§®J=p£×@§®Hð@§®J=p£×@§®He”¯O@§®J=p£×@§®C¼ÓZ†@ª>1&éy@ª>´9X@ª>1&éy@ª> Çy¦´@ª>1&éy@ª>:û~‘@ª>1&éy@ª> Òñ©ü@ª>1&éy@ª>Xâ@ª>1&éy@ª>½<6@4½:’£@4¼ú¬Ùè>@2…?|í‘h@2„mÅÖ8†@1éÛ"Ðå`@1çæšÔ,@1…œàu÷@1.Hè§@1…œàu÷@1~ùÛ"Ðæ@1…œàu÷@1~ŠqÞi®?‚á²Olºü?“XMHñëœ?‘e +!ßC?F‘q/b?•bJÖµæÿ?•ï¢Ò®F?}Ñ¿ž,?“oÆ †ä? Dñ£P?‘M –=?•ò±É*³¯?šèkî?‚|׿pY?þxÖ?„+£QKù?ƒ­=aÊw%?‡”_Õ­çW?‡<û¡71@@@@@*@*?ð?ð?ð?ð?ð?ð¿Sýóë ?e8s³B?3ûÜf:ÒD?EQÛEÙ¾b@§®HѦSo@ª> þÏ?R¿'JšÀÆ?dƒLzÅ{?ªT§(ïŸ?ÍAå‰(à@Ÿf à‹ø@Û@«&·KƧð@«&·Oß;@«&·KƧð@«&¶hˆÚò@«&·KƧð@«&±Îd½H@«&·KƧð@«&¥Çi2­@«&·KƧð@«&¤WøP@«&·KƧð@«& ¼Òõ@›r["Ðå`@›r[v³»ƒ@›r["Ðå`@›r[æ\_?@›r["Ðå`@›rg@EB@›r["Ðå`@›ro¡*µÄ@›r["Ðå`@›rYUHaæ@›r["Ðå`@›raþß¶v@5rÃÉîËû@5rÃÉîËû@3.5?|í‘@3*d‡&@2A‰7KÇ@2Š^û¹ùø@2”mÅÖ8†@2„9¨f|Z@2”mÅÖ8†@2…Ø®P*@2”mÅÖ8†@2…ä#=ŽÐ?}õ¬#„­?Ä…"Ð$§?”TÖ—©g?˜SŠá¼Ïd?“ã ’Æüò?˜OIf½^ ?~Ov_Ø­«?’AödûÇ?’>)Skáh?“QX{Q=?’Ö¢GcÙ?”›RÑ¥„J?‚±T¶éA?ŽT?ïö¤?ƒŽ¢5a›&?„5d|ÍÍ ?Š´ýÚ[“®?Ž5# ÉVë@@"@&@(@0@1?ð?ð?ð?ð?ð?ð¿t>«6z@4ÇsüPH@2’ Iº^5@2’ÞÑ·@2€å`A‰7@2„¼¤@1úÔ,<ží@1ýquŽ"@1úÔ,<ží@1ûÀ6âë@1úÔ,<ží@1ûŸU›=?|¬Çëý ?¥nÇx?)?’´ýBI{?‘ÔÌ’h?“´6=‹á{?“‡SË{d—?|¬Çëý ?’Òc§—Ûí?’°æfÅM“?“™*êÅ*?’pP‡È»?“ 3—·²W?‚íWçé„?Ž*JŠË?„ËD(ºp?ƒ­=aÊw%?‡ø¢:›¸1?ˆëÅoë@@@@@,@,?ð?ð?ð?ð?ð?ð¿œïÀ?Âk¾€?*Ì­û»Ä?*æÍ4)@«Çö¬þ@ªR£b5?JP3º:E'?:9¬ú†?ŸM*-{\?~œSÊ^ÏJ@Ÿe×Û’/@Ý@§™™™™š@§™Û"Ðå@§™™™™š@§™™™™š@§™™™™š@§™"Ðå`@§™™™™š@§™…‡“Þ@§™™™™š@§™Çâ‚A@§™™™™š@§™ -à@¦q^¸Që…@¦q^¸Që…@¦q^¸Që…@¦q]Vlô@¦q^¸Që…@¦q^š@¦q^¸Që…@¦q^ÒˆÎp@¦q^¸Që…@¦q_oÒó@¦q^¸Që…@¦q_ò䎊@1µS&Á¾@1µS&Á¾@0®5?|í‘@0®ß¤?åÉ@0 "Ðå`B@0 jçÕfÏ@/£¼ÓZ…ˆ@/¢ø7´¢4@/£¼ÓZ…ˆ@/¢œwškP@/£¼ÓZ…ˆ@/£Š Þ?É_\p)Ï?õ¹Ëh?‘,fŸCô6?Œ‚èõЊ?‘EÉ@Ú?æöæ×t?ÐbMçê_x?’&u÷E»@?£½:…?9ÍÇ~FÀ?‘!U?Ð{Ò?¦QÎð\ã?€bMÕky?ŒÐ¤Âÿê?ƒ<Õp?ƒ†+ Å?†Óß +tõ?‡?®\Âä@@@@@,@,?ð?ð?ð?ð?ð?ð¿Kà7=P??‘àÖÀ?.^AÞdÕî?*/uf§@§™p“1@¦q_X3?==t4W„¹?D|'Ý¡ú?t(+‘ÙØû?°éë@Ÿs¸ä@Þ@¬.¥ãSø@¬.|í‘h@¬.¥ãSø@¬.7´¢4@¬.¥ãSø@¬.!-w@¬.¥ãSø@¬. ûçlŠ@¬.¥ãSø@¬.–»˜È@¬.¥ãSø@¬.v_Ø®@¡¥ŒÌÌÌÍ@¡¥‹Æ§ïŸ@¡¥ŒÌÌÌÍ@¡¥Œç¯¹@¡¥ŒÌÌÌÍ@¡¥V@¡¥ŒÌÌÌÍ@¡¥‹ Iº@¡¥ŒÌÌÌÍ@¡¥ŒÙè>B@¡¥ŒÌÌÌÍ@¡¥‹àÞÒ‰@6«µsê´@6«xFÜ^@1î5?|í‘@1ëC•%@1t“t¼j@1qN;Í5¨@1O „M@1 ÓÃa@@1O „M@1 ¹Œ~($@1O „M@1 ÌÌÌÌÍ?гá‡}?‘+ùÔ!½Š?’ +N»A3?[d?—÷‘Ý<þ­?•ÍÂ^mÄ*?}Ñ¿ž,?“[¡ŽuœÙ?’Qÿc +?‘.“¥?“'ü#šgâ?’]Ðgµ0 +? aBg`­?iT£C~t?„›‹ÖO?ƒv_.^?ˆk! ¨l?ŠÐ+`È“@@@@@,@*?ð?ð?ð?ð?ð?ð¿pEÛ? ~p@?`ÉÃ#¬EH?$ÿ£¾%Â'@¬.™è 7@¡¥‹Ügâ?Íç‰ æ?F9Ñká¹?úF}^•ã‚?”–Á#î@Ÿhe,äÜ@ß@ ðó¶E¡Ë@ ðó¶E¡Ë@ ðó¶E¡Ë@ ðõK-žÞ@ ðó¶E¡Ë@ ðô8… +@ ðó¶E¡Ë@ ðõðh.@ ðó¶E¡Ë@ ðóeâY@ ðó¶E¡Ë@ ðóg©}:@¦'ŠÀƒo@¦'ŠÀƒo@¦'ŠÀƒo@¦'‰½£Õ@¦'ŠÀƒo@¦'‰³Ð|…@¦'ŠÀƒo@¦'ˆ`ÿ–@¦'ŠÀƒo@¦'‡HIôß@¦'ŠÀƒo@¦'‡M1@0°4mÅÖ8@0¯ò䎊r@+ +~ùÛ"Ð@+Ѹƒ@)íOß;dZ@)é_ ¯@(ÿåÉä@(ûšR¤@(ÿåÉä@(ûÀ6âë@(ÿåÉä@(ü¿Ké;?É^ž6õP?¾ èÑÐ{?‘*=³C?‹¶›£òq^?ç)¸Ðïë?¸³eaÙ?ÐbMÝn½?’G˜ie?€m sMµ?0Ú;®yŠ?‘¤§‘éV?¦xЧqÑ?€iLC-É?Œ¬5NW?‚o«E—P~?‚ùÉÃk†?†ÏÅ1C?†™Ì¹UÖP@@@@@2@3?ð?ð?ð?ð?ð?ð¿P ò!S¿;Ñ_Ø?5¹s¯ •?ÝŠ®ûÎÆ@ ðôFÒeY@¦'‡‡{ÆÙ?Dàìg’˃?%§[gÌ.?…mŒ~"b?D-œ’MÅý@Ÿrÿ¤ —s@à@§ÄÂ\(ö@§ÄÂMÒñª@§ÄÂ\(ö@§ÄÒ:)Çz@§ÄÂ\(ö@§ÄÓê³g¡@§ÄÂ\(ö@§Ä䎊qÞ@§ÄÂ\(ö@§ÄÏÒòå@§ÄÂ\(ö@§ÄÙ0¾ ì@«ï A‰7L@«ïŸ¾vÈ´@«ï A‰7L@«ï¡ [À@«ï A‰7L@«ï¡TÉ…ï@«ï A‰7L@«ïž5?|í@«ï A‰7L@«ï–+jçÕ@«ï A‰7L@«ï˜âe+@5?–»˜È@5?ªÍžƒä@1óS÷ÎÙ@1ìPHð@1PA‰7KÇ@1GKƧïž@0𖻘Çã@0á-w1Å@0𖻘Çã@0ß|í‘hs@0𖻘Çã@0á–R½<6?1·†Æjñ?ž5JÜà ä?›õåzI#…?¡¼3Їàæ?¤j_(!ª³?¤ Yâ9>?|¬Çëý ?” Á lŸž?”ß<ö¥?˜8"–•„?£¦–Jn ? ª w³ +?ƒ´],m%@§ÄËD,ú@«ï¹/?€yO-—4½?Ye9 ‹¸q?öÈnWéÈ?²úþ‚_@Ÿa`JC®¥@á@§l¾ùÛ"Ñ@§l¾vÈ´9@§l¾ùÛ"Ñ@§lÊ @§l¾ùÛ"Ñ@§lº¹õY´@§l¾ùÛ"Ñ@§l¼ÓZ…ˆ@§l¾ùÛ"Ñ@§l¸üPH@§l¾ùÛ"Ñ@§lÇE8ï5@«ä0 Ä›¦@«ä0å`Aˆ@«ä0 Ä›¦@«ä2£S'@«ä0 Ä›¦@«ä8­«ŸU@«ä0 Ä›¦@«ä7škP±@«ä0 Ä›¦@«ä.Ëû´@«ä0 Ä›¦@«ä0Hð@7¹Œ~($@7¿HË“@2Ê^5?|í@2ÕS&Á½@297KƧð@2;6z—@1=cˆe”°@1D‡ü¹#£@1=cˆe”°@1B&€IR@1=cˆe”°@16fffff?ˆÿÀ)T¿Æ?”SyÑûê?‘K]Ã4?’\GyÆ©?‘¯GàBm?˜VûAÑž?1·†Æjñ?š8º¶{:? Dñ£P?›|zk?”¿³+L5?•[ÒÛ6¢?˜W|¶DC?êzŽx?’®Üq“¤?ƒžÂâk,?ˆ +¿„r©Ý?’Ì÷y\ÛÎ@@@@@,@,?ð?ð?ð?ð?ð?ð? \@;`¿ô‹€?WýnÌ¡ ¬?F¿€«Ô@§l½ø­ä@«ä0ò·˜?ví$óÄW?hg%_H1m?íqñÞFP»?Ò]l'—-‹@ŸgÀÿJ@â@ªYÎV“@ªYÏ\(õÄ@ªYÎV“@ªYÑÂê¡3@ªYÎV“@ªYÒÿljÈ@ªYÎV“@ªYÚ„Làˆ@ªYÎV“@ªYÕ½©\@ªYÎV“@ªYÕ¡ °@”Ù·KƧð@”Ù³3333@”Ù·KƧð@”Ùµ•þÚf@”Ù·KƧð@”Ùµ«Ž{>@”Ù·KƧð@”Ù¾“@‹`@”Ù·KƧð@”ÙµÝéQÀ@”Ù·KƧð@”Ùº,ÿ%L@3ºqÞi­C@3´ƒs9?Þ@1žÙ‡+@1ä<.Ì?@1A‰7KÇ@1Œ¥U@1mÅÖ8†@1V¾u`@1mÅÖ8†@1]lñ¯:@1mÅÖ8†@1@ŽˆÁ?}@T˜ÁÎ¥?ã˜Pnx™?‘Kg(^Õ…?Œ¦¡«@5òÃÉîËû@5ó× +=p¤@2áhr° Ä@2àªdÂø8@2q‰7Kƨ@2pù k¹Œ@20–»˜Çã@2.Ov_Ø®@20–»˜Çã@20¸ºÇ@20–»˜Çã@2/iDg8?€‚ñêã ?‘" Á°–•?•Œ–?ö€(tUo?“ϲšI?’j•×›b?|öOÿÝ?“RƒwS5?”Ï3½fvI?‘W×ý°A?•=ƒ™íx?“½w¢8…?ƒÚ@êA²?ŽõÕJ?…íŽ(þÇ?ƒ­=aÊw%?“áêqú ?‰G±±ZÎ@@@@@,@&?ð?ð?ð?ð?ð?ð?J;#Âð¿[ ¢@?SA%ûvÔ? —ïÌØ@@¯€Z‡†ø˜@¢:±J)×?s/‡=Ü?@• 0šÃ"?ïx€I&v?†Ø‰¹7²#@Ÿfg +´!Ï@æ@­ü A‰7L@­ü ƒn™@­ü A‰7L@­ü!–R½<@­ü A‰7L@­ü!TÉ…ð@­ü A‰7L@­ü"h Ô•@­ü A‰7L@­üÒˆÎo@­ü A‰7L@­üö”G@¤™¥ãS÷Ï@¤™¥ãS÷Ï@¤™¥ãS÷Ï@¤™¦ +¦L0@¤™¥ãS÷Ï@¤™¥”¯O@¤™¥ãS÷Ï@¤™¦L/ƒ{@¤™¥ãS÷Ï@¤™¦YJôñ@¤™¥ãS÷Ï@¤™¥ðoiE@0­¥œàv@0­žƒä%¯@*½²-V@*½—ö+jç@*/ß;dZ@*/ß;dZ@)Aò×t@)4Ö¡aæ@)Aò×t@)Aò×t@)Aò×t@)'»/ìW?É^³Dw'?Ï[äe(@@@@@*@,?ð?ð?ð?ð?ð?ð¿Y„–Œ¿"„Òà?Bt˜÷Q/à?² lrÇ@­ü U @¤™¦5:k?Q¾÷“‡àÊ?&<ÕX u?žçHR_ ?E±§=%@ŸsZW"@ç@§\±&éxÕ@§\°å`A‰@§\±&éxÕÁ.„€@§\±&éxÕÁ.„€@§\±&éxÕÁ.„€@§\±&éxÕÁ.„€@§\±&éxÕÁ.„€@¨Ý["Ðå`@¨Ý`ƒn˜@¨Ý["Ðå`Á.„€@¨Ý["Ðå`Á.„€@¨Ý["Ðå`Á.„€@¨Ý["Ðå`Á.„€@¨Ý["Ðå`Á.„€@7ý:’£@7ûƧï²@3T›¥ãSøÁ.„M‰ûçm@2¾V“uÁ.„QnÙ‡@2s&Á½¥Á.„NÜC,¥@2s&Á½¥Á.„NÜC,¥@2s&Á½¥Á.„NÜC,¥?š•§q!U@8#˜@8¾:@8 >+@8Iç@8Ù?žˆ2}@8Î÷@8i§@8Å@8S@8û—?œó}?ð@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøè@¯f‰º^5?Á.„€@¯f‰º^5?@¯fHÛ‹¬r@¯f‰º^5?@¯f-à q@¯f‰º^5?@¯fXl"h +@¯f‰º^5?@¯f=ŠÚ¹õ@¯f‰º^5?@¯fA×Ûô‡@ Ç‡+Á.„€@ Ç‡+@ Ça [À@ Ç‡+@ Çbœwšk@ Ç‡+@ ÇHÎp:û@ Ç‡+@ ÇB Iº^@ Ç‡+@ ÇHŒç±@9 ØDЩÁ.„>¤µÜÆ@3¦‡+ J@3}!ÿ.Hè@3“t¼j@2Ó¯·éù@1õµsê³h@1Ë"Ðå`B@1õµsê³h@1ÊŸ¾vÈ´@1õµsê³h@1Ǔݗö,@8J¨?%¼ÇÆÃ±?³%bŽIßö?§ƒü¾^Zè?§ö̺Œ ‘?©FÔbú%i@8J¨?œîµƒ”?±£çí-Ò?©ëü6Ûù?¢ºã‘~]¦?ªÐ~ªèNO@8p÷?—E!Üý·'?‘c‚ׯ?'dÂã—…?y½¼ŸŽ?–Mí\{WÐ@@@@*@&?ð?ð?ð?ð?ðøøøøøøøøøøøøé@¢è<í‘hs@¢è=—Q%Ö@¢è<í‘hs@¢èRFÖä]@¢è<í‘hs@¢èh‰…ªe@¢è<í‘hs@¢èX6}-7@¢è<í‘hs@¢è;+3]@¢è<í‘hs@¢èD Bè@•<ì‹C•@•<öÈ´9Y@•<ì‹C•@•<Ü©YœÍ@•<ì‹C•@•<·ÑÏ6@•<ì‹C•@•<¯ëfµU@•<ì‹C•@•<{yç($@•<ì‹C•@•<Âçy‡@55S&Á¾@53B¡±@2¦‡+ J@2±ÅÁzv@2lj~ùÛ#@2U›%Ë@2._oÒ @2®ôÁ=Û@2._oÒ @2-JÕAþ`@2._oÒ @2/"X 6?€Z=ú‚¡?—‚V3ò?¥Ä\ÔKÞú?Œ &ŽËÕ~?œÙè¯ ?£Jü.h‹7?|Ñb×¶@?—Œ6x©?¡íO‰Ú¬?Þünž?¦×›—÷¯? ¿ž›öþ?…9Ž2j¸Ó?—2Yö&µÙ?¤»)òüH?£Z¬QÕ§?¨ý ìãª?¦WŒçµ¾@@,@(@@;@:?ð?ð?ð?ð?ð?ð?rëp•C¿„›u­@?pð¼DWvÏ?kÖX²K:@¢èFð¥·%@•<Óšÿ„?‹hày=ç8?‡°FzN@îÌø ú@ËŸ…’@Ÿbû”_¥ç@ê@©ËA$Ý/Á.„€@©ËA$Ý/@©Ë'>ýìñ@©ËA$Ý/@©Ë¤¶ïÛ@©ËA$Ý/@©Ë›H·Œ@©ËA$Ý/@©ËE†Ú @©ËA$Ý/@©Ë¾@”áG®{Á.„€@”áG®{@”è~F@”áG®{@”{OÎ@@”áG®{@”[ï2ò @”áG®{@”þ¶«2W@”áG®{@”u¤µÜÆ@4é‡+ @4©†âÕ­@46§ï²-@3ýAŠ«Ô@3uµsê³h@3>RÛÖbo@3uµsê³h@3b¼Pܘâ@3uµsê³h@3•Æ\»¸t@8J¨?¢h/E?¿ý™@Å +?¼[ü9Å??ž¼mÄC?Ÿýv•”Cá@8J¨?«p…t4¹?½H$/걺?¼¯†Rf?ŸÞ19:ñ?žV›N4LM@8p÷?”åè¿ÐtÐ?—¡“I&a?Âò÷2°?‘zÎö'?Ù¦SqUm@$@,@*@7@5?ð?ð?ð?ð?ðøøøøøøøøøøøøë@©LÚ¬1@©LÓÖ¹Â@©LÚ¬1@©L‰1¡½Ì@©LÚ¬1@©L 2ܶ@©LÚ¬1@©LÚÓœg{@©LÚ¬1@©LÕÐ¥Þ¢@©LÚ¬1@©LÑØ‹Îš@˜çQë…¸@˜çX‰_ 8@˜çQë…¸@˜çp¤c›Ú@˜çQë…¸@˜æàÏVÂ@˜çQë…¸@˜çý]œ~@˜çQë…¸@˜æà¼ß"Þ@˜çQë…¸@˜æÑ•šÞ«@8£g ù l@8ŽÈ¯€Ý…@4#÷ÎÙ‡@4(oä8ÏÐ@3´“t¼j@3ÁOì1 @2¦YJôðØ@2°‚/Ìþ@2¦YJôðØ@2¦~sÿŠ@2¦YJôðØ@2¦Õ«ýà?²£ád_) ?šBÄ|3?¥LÆWôÈ ?”–ù0¹? N~ãb?›7 +ü®8¸?}x—™¥·?|¬Æ Væ?Jå9ÞB»?–tT|Ø2?¦ê!s’6?–Í®E41?‘¸^ªý­?|¬h2:“?’|4c¦ì+?‘Ó!*Í?VÇEÒ,–?•îõ›Ï=?‘—^ _?‚¾<æËS?Œ°£ÂŠ?‚›M$:£»?ƒáîLÀ?ˆª„Ée_:?‰jÕY%Â@@"@$@*@7@0?ð?ð?ð?ð?ð?ð?cžJ¿aâê+?Y›¡…öÏŒ?+wƒ+è@ ŸY–M9!@¢.xi„“?za«4ÙÿÎ?Kùd†~9ä?û;ÿ¤øö? ]'ý=@ŸeSžË¸@ï@¬_X“t¼j@¬_WKƧð@¬_X“t¼jÁ.„€@¬_X“t¼jÁ.„€@¬_X“t¼jÁ.„€@¬_X“t¼jÁ.„€@¬_X“t¼jÁ.„€@¯pšŸ¾vÉ@¯p™Û"Ðä@¯pšŸ¾vÉÁ.„€@¯pšŸ¾vÉÁ.„€@¯pšŸ¾vÉÁ.„€@¯pšŸ¾vÉÁ.„€@¯pšŸ¾vÉÁ.„€@5=:’£@5; Iº^@1 í‘hr°Á.„M‰ûçm@0Ct¼j~úÁ.„QnÙ‡@0 ¿±[W?Á.„NÜC,¥@0 ¿±[W?Á.„NÜC,¥@0 ¿±[W?Á.„NÜC,¥?1·†Æjñ@8#˜@8¾:@8 >+@8Iç@8Ù?1·†Æjñ@8Î÷@8i§@8Å@8S@8û—?ƒmÕ+&¬‰@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøð@­ò° Äœ@­áG®@­ò° Äœ@­ì²æ@­ò° Äœ@­öйµ@­ò° Äœ@­Þ 5Oi@­ò° Äœ@­èmÆíš@­ò° Äœ@­â‰(æ@—Ô>vÈ´9@—ÔMOß;d@—Ô>vÈ´9@—ÔvÈ´9@—Ô$<c@—Ô>vÈ´9@—Ô6i-Ô„@—Ô>vÈ´9@—Ô8hq@—Ô>vÈ´9@—Ô!Î +_g@8ºqÞi­C@8±TÉ…ðp@4Ò Iº^5@4鞦½:õ@4)Û"Ðå`@4EØÞ½@3‡ ù kº@3›ü‘ÛU@3‡ ù kº@3œ?)ðL¼@3‡ ù kº@3—¥YñÌU?æ ç«Z–?”Ç-$ž‰?•° J0Á?µ TKF?œ‰j6‹ª?›Y1×ðz?æ ç«Z–?˜ñÎXw8Ç?•4 ´m?‘16yÄ?œMQ¡eá¥?–DtÛ±T?æ¡‚á¾A?†jÊ&?†˜M­Õ?“ÀˆoÁt?”1¬3C1Ú?›°{0+@@(@ @ @:@8?ð?ð?ð?ð?ð?ð?gotlg¿p{%6·à?bÌ–Õ?]Ê G݉@­á£%|å@—Ô0U#&0?qñúlÓkj?m­R¥}?ÐwÆàBÑÕ?Ç‘½*¯Ê@Ÿr)VZƒ@ñ@¤Ìú^5?}@¤ÌúáG®@¤Ìú^5?}@¤Ìúû~‘@¤Ìú^5?}@¤Ìû²þÅm@¤Ìú^5?}@¤ÌúáG®@¤Ìú^5?}@¤Ìùe+ÓÃ@¤Ìú^5?}@¤ÌùŒ~($@ª?|í‘h@ª?¾vÈ´@ª?|í‘h@ª?|í‘h@ª?|í‘h@ª?|í‘h@ª?|í‘h@ª?HË’@ª?|í‘h@ª?b¶®}@ª?|í‘h@ª?.Hè§@3ÞHè§æ@3ÞHè§æ@00Ä›¥ãT@00ÿ—$tT@0$¼j~ùÛ@0$Âø7´¢@/åÉä@/Š Þ@/åÉä@/€ qu@/åÉä@/€6âë?}Ñ¿ž,?Òç{íj?‘,fŸCô6?ŒArUã@?‘ ·èf?ø·-/ge?|öOÿÝ?’NÛˆV(?‘N÷J’?Y‡…—Ø?ñ«Ý„ Õ?›ªU3Îp?‚q6tNø6?Œ».êxóÚ?‚Ö˜>µDá?‚ìxqC?†¯Mž684?†©b/bJö@@@@@*@,?ð?ð?ð?ð?ð?ð¿1?æ-п±T À?ìÄå¬>ø’ʃk@¤Ìú^åP@ª?|d{?>½P´¢Qð?üÂöˆ›6?ˆá(”æ#r??åþ­Uä@Ÿg +@ò@¢N×i[@?BÐ3 [@¤?)«§lINš@¢N< ŽÐò@¢f²fWØÑ?^ëö+H¬º?MœÝOY8ß?¶ Ç)™p?œOÞhÁå@Ÿkóí6Ž@ó@£JÌÌÌÌÍ@£JÐbMÒò@£JÌÌÌÌÍ@£JÈ´9X@£JÌÌÌÌÍ@£JÎ!–R½@£JÌÌÌÌÍ@£JË'»/@£JÌÌÌÌÍ@£J˹Œ~(@£JÌÌÌÌÍ@£JËÓÃa@©ŸÁ‰7KÇ@©Ÿ¯ß;dZ@©ŸÁ‰7KÇ@©ŸÁ$Ý/@©ŸÁ‰7KÇ@©ŸÁ£n.²@©ŸÁ‰7KÇ@©ŸÆ1ø ‘@©ŸÁ‰7KÇ@©Ÿºû~‘@©ŸÁ‰7KÇ@©ŸÄ“t¼@8^Hè§æ@8Xšu%F@3xr° Äœ@3|L˜_@2‹"Ðå`B@2\(õÂ@2ý!ÿ.I@2 k¹Œ~@2ý!ÿ.I@2Ov`@2ý!ÿ.I@2RT`ªe?“Æ×q„nï?dYûë„{?’‹»Ùï§?‘c[=î#©?“êôÉøX?‘Û.Yrî?„F/·ÿP5?’ ,øÕC©?‘ú-8ûõö?•Xî¨}iQ?•nW*Ø„?’?;Áƒè?…/‡ÙX·²?‘žˆ2}?ˆAᆽÃí?‘l_zU’Ý?Ž .0åv?^^ω•@@@@@(@$?ð?ð?ð?ð?ð?ð¿M¬˜ `?p´¡Z??’‰Å3l?Xþ±%t2Z@£JÌÍ^:Ä@©Ÿ»éhçÜ?\§ÖJ¬?|&Þ))ÿõ?±ÝFÙöÇ?õ]Oò­@Ÿk\Ù¿ªº@ô@¡†ùXbN@¡†ùXbN@¡†ùXbN@¡†ùb¶®@¡†ùXbN@¡†úCþ\’@¡†ùXbN@¡†úxl"h@¡†ùXbN@¡†õÂ\)@¡†ùXbN@¡†õ*™1@¬[¶E¡ÊÁ@¬[¶E¡ÊÁ@¬[¶E¡ÊÁ@¬[´ýó¶F@¬[¶E¡ÊÁ@¬[µÂ\)@¬[¶E¡ÊÁ@¬[µ?|í‘@¬[¶E¡ÊÁ@¬[·Xâ@¬[¶E¡ÊÁ@¬[´¢3œ@4” xFÜ@4”êJŒ@1›¥ãSø@1Fs×Ü@0"-V@0!œàuöý@0._oÒ @0,ÌÌÌÌÍ@0._oÒ @0+ÓÃaA@0._oÒ @0+Ƨï³?}Ñ¿ž,?Ï[äe_«9º^?-/3ÍrD­@¡†ø'q½J@¬[µæuo?^.¬Ws;Ÿ?MÎ8ët?Çúÿ^ªGÒ?¦ÜoçБD@ŸgF(˜n@õ@¯ î—Oß@¯ õÂ\)@¯ î—Oß@¯ îŸâ¾@¯ î—Oß@¯ ðA‰7M@¯ î—Oß@¯ ¾Þ@¯ î—Oß@¯ îþý‡…@¯ î—Oß@¯ ï­Fæ@–JšŸ¾vÉ@–J˜bMÓ@–JšŸ¾vÉ@–J™²ªª@–JšŸ¾vÉ@–JœZÖ\6@–JšŸ¾vÉ@–J–¤¨Ç@–JšŸ¾vÉ@–J—[ò]D@–JšŸ¾vÉ@–J˜F“5@7 ØDЩ@7ùŽsnN@2¸r° Äœ@2¹4³•ë@1þV“u@1þ¡rÎêÛ@1‘Þi­BÄ@1’b˧2à@1‘Þi­BÄ@1“gâê@1‘Þi­BÄ@1“8ñ3ž>?€‘gQÚÃ?ûœûþSÁ?‘MV4½*-?¤xŒ|‰?‘4zùu'¦W½ù›?ÛŒqn‡j@¯ ñ‘%Íi@–J—·ç§ï?^Î +ij?9P-m ˜M?ÅÇÔ{I,?y®1ÚW@"@ŸhGL œÙ@ö@Ÿ`¸Që…@Ÿ`¸¥Î[B@Ÿ`¸Që…@Ÿ`º¯Õês@Ÿ`¸Që…@Ÿ`»帶@Ÿ`¸Që…@Ÿ`¼vZ\@Ÿ`¸Që…@Ÿ`µW&ŠÓ@Ÿ`¸Që…@Ÿ`µŒGà¨@£¦4¼j~ú@£¦4¼j~ú@£¦4¼j~ú@£¦3¶â{@£¦4¼j~ú@£¦4‡E{@£¦4¼j~ú@£¦4¼n8[@£¦4¼j~ú@£¦4azá)@£¦4¼j~ú@£¦4wÉæâ@3 ]cˆe”@3 ñ >(@/ÂÐå`A‰@/ÂGE8ï4@- ƒn—@- G+™àÅ@-Ǔݗö,@-Ç&%Sž@-Ǔݗö,@-Ç%ÃÞç‚@-Ǔݗö,@-ÇO¨ ?~Ov_Ø­«?Ù:¶’?‘*£[Êúu¯÷Æ¥ó@Ÿ`¸I?Ob@£¦45+°?Y2 íƒÞ¯œ¤ ?7x\Á0?4†pkÈ>÷.W7ì1)@©4jÒ{=@®C@¸?T€k­?ÚáFά¾?³?LÃ×af?8ÓZ矣@Ÿh\†ê¯ö@ù@®œ—Oß;@®œŠ~ùÛ$@®œ—Oß;@®œž\‘ÑM@®œ—Oß;@®œ¶¡aä÷@®œ—Oß;@®œ±Ä2ÊX@®œ—Oß;@®œ±A [À@®œ—Oß;@®œÔ¢3œ@©·ÎÙ‡@©°bMÒò@©·ÎÙ‡@©©ûçl‹@©·ÎÙ‡@©U¨Xy>@©·ÎÙ‡@©xl"h +@©·ÎÙ‡@©Ë’:*@©·ÎÙ‡@©q©ûçm@8*0U2b@8 ú¬Ùè>@3©‡+ @3¤!-w2@3y7KƧð@3kÚQÎ@2…œàu÷@2~vÈ´9X@2…œàu÷@2zu%F +@2…œàu÷@2l‘ÑN;Î?˜ž^ƒÿ*ˆ?“vuØcʲ?«/b²›?¨˜-£ÔiÉ?ŸrA:/™?¤w€ùŸb@?1·†Æjñ?’HGªÂÛ^?ÁwKëvþ‹?¦-ÒM—?£ƒwž{_?¾n%м!?…àú^À?ŽÎ"”`ù…?•@K/Ù{?…®×__C?‘éXñ„–†?Ÿ/Òѯ¢@@@@@&@*?ð?ð?ð?ð?ð?ð?‰íäS‘€¿A}ã@?e¬àÕFŽ?fÛ-Ï3@®œ¢RÁ@©”ªHHü?† +4~:Ì?„Éí¤²?ì×:÷¤?êzy ô°@Ÿdÿ‚–\@ú@®|n—P@®|n—P@®|n—P@®|t¼j@®|n—P@®|÷ÎÙ@®|n—P@®|Ãa@@®|n—P@®|&éxÕ@®|n—P@®|&éxÕ@ŸÆ33333@ŸÆ3¶E¡Ì@ŸÆ33333@ŸÆ2×s@ŸÆ33333@ŸÆ2{²þÅ@ŸÆ33333@ŸÆ2-V@ŸÆ33333@ŸÆ2×s@ŸÆ33333@ŸÆ2a|Ú@.¨ð¸@.¨ð¸@,¤“t¼j@,£ñA [À@,wOß;d@,w§†Â&@+p‰ 'RU@+p–»˜Çã@+p‰ 'RU@+poiDg9@+p‰ 'RU@+p|„µÜÇ?É^žQ5P‚?Ï[äe(?†–f_ÔŠŠ@@@@@,@*?ð?ð?ð?ð?ð?ð¿S€þD?¾’@?9d¥«»Xc?1àÙ•éB@®|4ƒçš@ŸÆ24æR?HebÜ‘¿?î2K Ä? ×V%4T?% `Ú3j@Ÿs ;*S@û@¥pÎV“@¥pÎzáI@¥pÎV“@¥pÌIº^4@¥pÎV“@¥pË Iº@¥pÎV“@¥pÊ=p£×@¥pÎV“@¥p¼j~ùÚ@¥pÎV“@¥p®Ëûµ@¥sò-V@¥sò-V@¥sò-V@¥sò×sü@¥sò-V@¥söâëC@¥sò-V@¥sô,<žî@¥sò-V@¥sðØDÐ@¥sò-V@¥sòa|Ù@4[¹Œ~($@4[]ÌcñA@1Ìí‘hr°@1Ì£n.²@1çKƧïž@1å '»0@1(è§æ›@1'Ûô‡ü¹@1(è§æ›@1b¶®}W@1(è§æ›@1<64?|öOÿÝ?‡åƒêM?“1‘´¹V?ŽwX/8?—.‰†5¸€?°‚ªaÚõ1?}Ñ¿ž,?’Dê™.x?‘c–…•#$?‘ݤ`Ìh?™=M÷‹¸?›7Î&Tß+?‚yî8Á#?îŠõ ?‰6~„æAÕ?†Á{0Ÿà®?™ þg¿?—¤“<†›O@@@@@ @,?ð?ð?ð?ð?ð?ð¿kC&p?ÌaÆ ?VÚ“kó­™?64‚{e{@¥pÉ †}@¥sònœn'?r/Ñߢ?SL»ø›P?è»Hɾ¥.?¬™½ùY!@Ÿb´ýôÉ@ü@« Ƨïž@«9Xb@« Ƨïž@«Ä2ÊX@« Ƨïž@«)xÔýô@« Ƨïž@«Hð@« Ƨïž@«y¦µ @« Ƨïž@« "h Õ@®Îu?|í‘@®Îqhr° @®Îu?|í‘@®ÎaG®{@®Îu?|í‘@®ÎxQë…@®Îu?|í‘@®Îusê³h@®Îu?|í‘@®ÎhÁTÉ…@®Îu?|í‘@®Î±[W>@8m¥œàv@8h Ô•*@5û Iº^@5òe+ÓÃ@5{Ƨï²@5~cŠ @4hè§æ›@4kC,¥{@4hè§æ›@4h_ö”G@4hè§æ›@4k/ìVÕÐ?˜ž^ƒÿ*ˆ?›äÄö/>?ñAaú[?¡gÙµ¡V?™¼wX¬?žc¬+:X£?ª[Xxöp?š˜‡þCî·?”ÿŒÙÿIí?”J6bº? á>G]!?žƒ2¶Í¾?¤ GÍ0µò?²¦Î^Î?Ÿ•"x*=k?Ÿ¿8ÖÌk4?£9jé jh?“ )D)@@@@@@?ð?ð?ð?ð?ð?ð¿bšàr"?^òø9ž?O{Jï0Šà?n¥p°ëta@« +QÅI@®Îtå–i?nàKÁ?ƒ­Ó< t?Âæ{ÃIìÀ?ítjÈ%up@ŸnœE¿%@ý@¦‘ Iº^@¦‘ Iº^@¦‘ Iº^@¦‘Ê @¦‘ Iº^@¦‘Ã9Àëî@¦‘ Iº^@¦‘Áò×s@¦‘ Iº^@¦‘Á–R½<@¦‘ Iº^@¦‘À4mÅÖ@­ò:^5?}@­ò:^5?}@­ò:^5?}@­ò;quŽ"@­ò:^5?}@­ò;"Ðå`@­ò:^5?}@­ò9™™™š@­ò:^5?}@­ò:kP°ñ@­ò:^5?}@­ò8*™0¾@3ÉÎ_oÒ@3ÉÇy¦µ @0|í‘hr@0Aò×r@/´ýó¶E¢@/´¢3œÀ@/…oi@/„µÜÆ?@/…oi@/„ohÜ@/…oi@/‚&€IR?}Ñ¿ž,?/³)sšÌ?‘.Ò®ó_ ?‹¹GüÞõ?‘K!UéÄŒ?ïˆ6ÏJ?|¬Çëý ?’[ KÄ0R?‘N÷J’?9ÍÇ~FÀ?øóéM Ÿ?‘Qïʾ?‚Ÿ JŠÅ?ŒÐ¤Âÿê?‚Ÿ JŠÆ?ƒ*|š\/´?†£îž«î?‡ã ËÄž@@@@@,@*?ð?ð?ð?ð?ð?ð¿0 kïh¿27"? 劓9`«?'?”"éã/åY@@@@@,@&?ð?ð?ð?ð?ð?ð?aKéTø¿X„Ÿ˜8?I:âå²µZ?U D]td@¨GþÇ@ª¤·Ø .•?hôÙ‡?u.A´ Š?Ù3ŽE`Ä?ï9—ÏyO@ŸeèM-äç@@«hH1&éy@«h;çl‹E@«hH1&éy@«hE¼£n@«hH1&éy@«hHŒç°@«hH1&éy@«hHè§æ@«hH1&éy@«hG_oÒ@«hH1&éy@«hG“Ý—ö@§’n—P@§ŒIº^5@§’n—P@§ŽóMj@§’n—P@§:û~@§’n—P@§bMÒò@§’n—P@§‘ø .@§’n—P@§‘&éxÕ@6[¹Œ~($@6M¿HË’@2+ Iº@2§ï²-@0ö§ï²-@0öâëC-@0n_oÒ @0nÑ·Z@0n_oÒ @0n í(Œæ@0n_oÒ @0mæšÔ,=?¥Ìõ}êáþ?W[†?‘ùé éµ??Œݶ\ñr?‘héø†|?‘W_Ì?3ßa=„?’[ KÄ0R?‘,­æ& +\?>\‰å‘?‘x9ξÞO?oÌ‘'ýT?¸gE³=`?ŒïQ¼º“ã?‚ù…žÄ`x?ƒ ?ÿ½?†Óß +tõ?†µ°jÆÃ@@@@@,@&?ð?ð?ð?ð?ð?ð?L>RÔ?Qé.º?Vsì™®“e?3£”bÝ@«hGYä·@§U]S‹?kåõÔ9õ?RCJ\Ð|?ÑNÔŠ$»?£ï õ@Ÿom2ô(@@¯†âMÒñª@¯†ãn—@¯†âMÒñª@¯†âaÛ@¯†âMÒñª@¯†áT•b¦@¯†âMÒñª@¯†ã3ÄÐD@¯†âMÒñª@¯†á†ýT@¯†âMÒñª@¯†áÞi­B@—JQë…¸@—JRñ©ûç@—JQë…¸@—JS§¬»@—JQë…¸@—JS´ É«@—JQë…¸@—JQ Ʊ@—JQë…¸@—JNpç®@—JQë…¸@—JR´²é7@5|ÚQ@5LÑÃÈ@1°Ä›¥ãT@1°+9k=@11‰7Kƨ@11bˆ¾‘@0¦YJôðØ@0¦9KRØð@0¦YJôðØ@0¦Tã§§Ö@0¦YJôðØ@0¦u]M?|Ñb×¶@?ˆå;¬?‘(ã[0?‹ØÆ|€Ñ?‘'ÓI¤­'?磮Rã?|¬h2:“?’,9B?‡jz©®?nŸ„“í-?‘E¹=:ä?g©e\‰ª?ƒ™°oÁR?ŒÃ®“”‹!?‚ª}ö¥_Ø?ƒ9Ãdk?†Î ž 3?†¥š{Ó)@@&@$@(@<@6?ð?ð?ð?ð?ð?ð¿0¬ªP¿,Çx²˜?!Ñ<žhE?+¥Œz{ßµ@¯†â›Nȳ@—JQâžvP?A³ª/§¿w?L+ÒPäØ?ï|üå””?¤N'g@Ÿfåñïv÷@@®ü +Àƒo@®ü  Iº@®ü +Àƒo@®ü ¬q ²@®ü +Àƒo@®ü ‹C•€@®ü +Àƒo@®ü +çÕfÐ@®ü +Àƒo@®ü ûçl‹@®ü +Àƒo@®ü +ŒL˜@Ÿ¡‚ Iº^@Ÿ¡‚ Iº^@Ÿ¡‚ Iº^@Ÿ¡×Ûô‰@Ÿ¡‚ Iº^@Ÿ¡~Åm\ü@Ÿ¡‚ Iº^@Ÿ¡‚Zîc @Ÿ¡‚ Iº^@Ÿ¡‚&€I@Ÿ¡‚ Iº^@Ÿ¡½¥ž@3ãg ù l@3㜾ߤ@1°Ä›¥ãT@1±4êJŒ@1U`A‰7L@1U¼£n/@0«xFÜ^@0¬1&éy@0«xFÜ^@0«¹Œ~($@0«xFÜ^@0«Í5¨Xz?|öOÿÝ?Úþþ³?‘Š©Nà¶?ŒvHn&³?‘ñ•/m£{?‘/¹ß…?}Ñ¿ž,?’u¦ieõ–?‘Ña„>&?‘tÄdªE·?‘c3¸cÜ(?–’+¸¢d?‚yî8Á#?ŒïQ¼º“ã?‚ù…žÄ`x?ƒ*|š\/´?†ïRÉv‘Ñ?†Óß +tõ@@@@@,@,?ð?ð?ð?ð?ð?ð¿!zïíà¾áö5E?T™–™ß>üæÆi:Î@®ü +»¢ž@Ÿ¡‚ +LÚ?3‡Ð¹ý*‘?“›ãBb?sÇí?¼@¨?EmI‹kœœ@Ÿfâî¶å¨@@¦/†§ï²@¦/†}þ2Ÿ@¦/†§ï²@¦/ˆksý@¦/†§ï²@¦/‹1ðº@¦/†§ï²@¦/ŠžÃö©@¦/†§ï²@¦/‹Š\å´@¦/†§ï²@¦/Š ¡ô±@”ÉÅ¡ÊÀƒ@”ɳs··@”ÉÅ¡ÊÀƒ@”ÉÊר©@”ÉÅ¡ÊÀƒ@”ÉјzŽ@”ÉÅ¡ÊÀƒ@”ÉÖêØ*©@”ÉÅ¡ÊÀƒ@”ÉÚQ°@”ÉÅ¡ÊÀƒ@”ÉÛ.ÜÌé@3 ØDЩ@3‘@N¤©@1=‘hr° @19àxþ÷C@0Ãt¼j~ú@0À(wg’@0._oÒ @0-z;aô:@0._oÒ @0*¦{©•@0._oÒ @0*yèQ?~Ov_Ø­«?‘l£¯(?“rðÖÞ[?‹õ(¸#×O?’>XÇ`Ÿ?‘[PPî;€ A@“^Ý/Ÿ¾@“^Üíˆ7 +@“^Ý/Ÿ¾@“^ÜÞq¾'@“^Ý/Ÿ¾@“^Ü]úà@-ÛJ#9Àì@-ÛJ#9Àì@,A‰7KÆ@,4îÔ ù@+º¬1'@+¹Û"Ðåa@+åÉä@+d·Ýõ¹@+åÉä@+\(õÂ@+åÉä@+f¹ n?É^ž6õP?¾ jžÍ?‘ÛÙ@?‹¯@y¥[?ëŒE>)¨?³âÒŶ?ÐbQë„›¦?’ÕB“ºÿ?…!.ð$w?5e’Òåi?аì¶?Iâo®É?€bMÕ]f?Œ¬6H^4Ð?‚pã®MG?‚è$: ¦œ?†Š%ip¹-?†Œîa€@@@(@*@8@4?ð?ð?ð?ð?ð?ð¿P¯ð¿'k‡ì?6¿ÎÅLv?CPoÎÚÂ@®:¢ß @“^ܨNe?E:Ùˆ´I?":ëÕ9íò?†*Œ—×Íø?=0I”ù0@Ÿs žZMø@@®¤~ùÛ"Ñ@®¤€@®¤~ùÛ"Ñ@®¤~쿱[@®¤~ùÛ"Ñ@®¤HË’@®¤~ùÛ"Ñ@®¤G®{@®¤~ùÛ"Ñ@®¤}IQ‚ª@®¤~ùÛ"Ñ@®¤}Vlô @§m¦ffff@§m¥¡ÊÀƒ@§m¦ffff@§m¢ÃÉîÌ@§m¦ffff@§m¢‚@·@§m¦ffff@§m¤tSŽó@§m¦ffff@§m£n—@§m¦ffff@§m£¢œwš@5¨†YJôñ@5¨†YJôð@2n5?|í‘@2l²•éá°@2“t¼@24êJ@1œàu÷@1ÞÑ·@1œàu÷@1Ð|„µÝ@1œàu÷@1¼ÓZ…ˆ?}Ñ¿ž,?òb[±?’#ç}iïë?‹ÝÉ!ë#?’ÒuèçxY?‘W×ý°A?1·†Æjñ?’¼MÒÀ7F?’Q½£a C?RLnj?‘®7Ö=^9?‘A_f;j?‚† SFñ?Žâç.¡È?‡š¿]b?„XïWÉò~?‡…¤$Ó?†ïRÉv‘Ñ@@@@@*@,?ð?ð?ð?ð?ð?ð¿;Oü¿?±)ˆ?9·‡÷øV?y çCH@®¤VìQõ@§m¤Ÿ3 ?Y,ôåÆ?9Ð,%Þ„?ÀOzþ•Æ?|–Y«1R@Ÿgæc’@@®“t9Xb@®“z¬1@®“t9Xb@®“týó¶G@®“t9Xb@®“{/ìV×@®“t9Xb@®“uÂ\)@®“t9Xb@®“vâëC@®“t9Xb@®“×Ûôˆ@¬k=p£× +@¬k9XbN@¬k=p£× +@¬kA-w1@¬k=p£× +@¬k:¬Ùè>@¬k=p£× +@¬k=²-V@¬k=p£× +@¬k:–¼@¬k=p£× +@¬k6R½<6@72ÃÉîËû@71ÑN;Í6@2…?|í‘h@2†z–¼@2>V“u@2?·éùr@1‡ ù kº@1ˆy=Ùc@1‡ ù kº@1†éxÔýô@1‡ ù kº@1€ù k¹?žˆ2}?’g½þË£?”Ä0óçî?«àÓ RÆ?’[9ƒÍ,?“‡SË{d—?•²»UbB2?•Ð\ÄÙ?‘ú-8ûõö?íu…XÚ?“4¦{ºÕ?“{P»á?„A'Š_]?Ž>ž¬ˆ?…ÑTë0Ô?…üðÿË÷?Š`½i=ÓØ?˜§zy@@@@@*@&?ð?ð?ð?ð?ð?ð?6>пDY¤Œ?Sí ¨ÞÑT?Q”0Ïéð@®“zJA7¤@¬k:V`.?vA72ÃÆh?m„m9޳?ïuÖR²Æ?Ó/¨Ä@ŸkŸ|%Fr@ @©ïyÛ"Ðå@©ïyÛ"Ðå@©ïyÛ"Ðå@©ï~vÈ´9@©ïyÛ"Ðå@©ïufÏAò@©ïyÛ"Ðå@©ïx­«ŸV@©ïyÛ"Ðå@©ï~i­BÄ@©ïyÛ"Ðå@©ï{Í5¨W@¥æZ¬1@¥æ]/Ÿ¾@¥æZ¬1@¥æXï4Ö @¥æZ¬1@¥æW1Å@¥æZ¬1@¥æY³Ð|…@¥æZ¬1@¥æV»˜Çâ@¥æZ¬1@¥æU2a|@6–šÔ,<Ÿ@6–éxÔýô@3°Ä›¥ãT@3®óMj@3²-V@3 ëíúCþ@2\ÚQÎ@2[W>«6z@2\ÚQÎ@2Yk¹Œ~(@2\ÚQÎ@2Zxl"h +?‚á²Olºü?–—x)nÛ?”Ä0óçî?ŒGZ0eê;?–(Ži´™^?ø·-/ge?}Ñ¿ž,?˜ü^Š1??“v@á¿bî?’‘Ç#·X?“¹ ¾´î?‘ƒZ)Àˆ?ŠÌ÷7Õ}?þ,DöP?…ÑTë0Ô?ƒÛ®«etZ?‘„1ôñÂß?¢—„¯l@@@@@,@"?ð?ð?ð?ð?ð?ð?<šÚr`¿ZŸˆ +?@Y´*jì?°õ ™i@©ïz‡Øv@¥æY¬‡Ä?`˜Ç@?8º˜ÐJø?ÅW¨Ë>‡?yúg¸5&@ŸgnÀp–Ò@ +@¨„E¸Qì@¨„DÝ/¡@¨„E¸Qì@¨„E”¯O@¨„E¸Qì@¨„KàÞÒ‰@¨„E¸Qì@¨„C,¥zw@¨„E¸Qì@¨„DÂø7µ@¨„E¸Qì@¨„B@·€4@¢á…¡ÊÀƒ@¢áƒn—@¢á…¡ÊÀƒ@¢áaä÷g@¢á…¡ÊÀƒ@¢á†$Ý/@¢á…¡ÊÀƒ@¢á~5?|î@¢á…¡ÊÀƒ@¢áØ­«Ÿ@¢á…¡ÊÀƒ@¢áò䎊@6ÞHè§æ@6ߨ­«ŸU@2º^5?}@2$ xG@1ä¼j~ùÛ@1éîËû¶@13&Á½¥@11Åo@13&Á½¥@11:’£S@13&Á½¥@11×Ûô‡ý?|öOÿÝ?µ‡:úÎ ?•ï9aýô?‹û…†_?’<_+fjä?‘É=¦þï?Œs¤DÅÐ?”V ìi!¾?•¥º~§?’GÎ>GÅ?’W;„zY?’9ñ9¶ò8?…ÑTë0Ó?GÚ +­ ?„m~Z_s,?ƒiñj6Â?‡v>ª¸ ?‰Ü)@Jq«@@@@@*@,?ð?ð?ð?ð?ð?ð¿:ªó@¿G¤èÂ|?,oÃ?‚n—8‹8?Ž•ýÙ—±?…/‡ÙX·³?ˆ»ñJî¯Î?ŒC ãSG?ŒC ãSG@@@@@(@*?ð?ð?ð?ð?ð?ð¿GŽà‘à¿7/j˜?4Î3XNÔ?;-±š”äO@®FxÿË»ö@¡Éi¿ó?T×q¾fî?[·÷ð¸?³…É «–?À69A`nÈ@Ÿg`{pšR@ @«ÈZŸ¾vÉ@«È+C•@«ÈZŸ¾vÉ@«ÈTì!œ§@«ÈZŸ¾vÉ@«È](Ì«@«ÈZŸ¾vÉ@«ÈgJSS7@«ÈZŸ¾vÉ@«ÈYñ@«ÈZŸ¾vÉ@«ÈZÍå¤@›_Týó¶F@›_zBg,@›_Týó¶F@›_K„oEÕ@›_Týó¶F@›_gYÿ±H@›_Týó¶F@›_D*>Ï@›_Týó¶F@›_fä=ü@›_Týó¶F@›_U¿éˆ@9-¥œàv@94.Ã4@4W+ Iº@4]0/^@3ˆ“t¼j@3‰ð”AZD@35µsê³h@3=V šÃJ@35µsê³h@36’×ç8p@35µsê³h@38v¤RЯ?˜Òøƒ3N?äTÁ‰ÁÃ?”ÇÃâ7¨ù?Œdº2ÚfÆ?‘úPÙݱq?’»“™¯?ºŽ¢N'P?’31?úB?“P°Q­AÎ?‘Þ4LÃ9?Ï”Ñûz?‘-’ͧGÊ?×?>D&?rywÍK ?Šd¬“Xïä?ƒ +A3­5¸%`¯3Ÿ@«}YÓ=Ö”@”M#=û?c-Ê“À­M?^%Ð=ùð%?Ìç,xš?¼æH2/Ñ@Ÿj57ºœ@@¥íÁ‰7KÇ@¥íÁ‰7KÇ@¥íÁ‰7KÇ@¥í Iº^@¥íÁ‰7KÇ@¥íÂ3œ¿@¥íÁ‰7KÇ@¥í Iº^@¥íÁ‰7KÇ@¥íÀÄ›¥ã@¥íÁ‰7KÇ@¥íÀÑ·X@¡w¡ÊÀƒ@¡w¡ÊÀƒ@¡w¡ÊÀƒ@¡w¡–R½<@¡w¡ÊÀƒ@¡w¡ò×s@¡w¡ÊÀƒ@¡w¡TÉ…ð@¡w¡ÊÀƒ@¡w¡|ÚQ@¡w¡ÊÀƒ@¡w¡‰7KÇ@0=:’£@0=:’£@*Üj~ùÛ"@*Ü]cˆe“@)ØÔýó¶F@)Ø“t¼j@(æL/ƒ{K@(æ +¦L/…@(æL/ƒ{K@(æ +¦L/„@(æL/ƒ{K@(æ +¦L/…?É^žQ5P‚?ÖÈ ¼?‘½ümüñ?‹Æ úJ-M?êtÿKÑc?ºª$Ð?ÐbMçê_x?’ ,øÕC©?‘N÷J’?1ð'7éÃ?ÏtP°*?Z˜°,aÝ?€bMÕky?Œ°¶.Ä+Æ?‚s@ˆaÛ?‚äÍ“½E'?†l&þ?†½ª»—@@@@@,@,?ð?ð?ð?ð?ð?ð¿B†ô*æ?ºžý¸?)¹¥!«>÷L©–amj@¥íÁM=ù@¡w¡pµZõ?8º íki?ޣķ?mø#bñE,?K™hò@Ÿs2éƒ@@©ïRñ©ûç@©ïS3333@©ïRñ©ûç@©ïSZ…‡”@©ïRñ©ûç@©ïSÐ|„µ@©ïRñ©ûç@©ïS÷ÎÙ@©ïRñ©ûç@©ïR•éá±@©ïRñ©ûç@©ïR䎊s@«óæffff@«óæffff@«óæffff@«ó宿1ú@«óæffff@«óçE8ï5@«óæffff@«óåãS÷Ï@«óæffff@«óæÜ]c‡@«óæffff@«óæ€IQ@3Hè§æ@3p:û~‘@.ðå`A‰7@.ðØDЩ@-Œ1&éy@-Œ1&éy@,ëjçÕfÐ@,ë…¸Qì@,ëjçÕfÐ@,ëP°ò{³@,ëjçÕfÐ@,ëC•&?|öOÿÝ?ÉGãA­÷?‘&Øç?‘?‹¦ ŸYÔ?‘2A¥Ø?À­Õß}º?|¬Çëý ?’˜‰%F²?™Îd0RÜ?-õI¸`K?ÝIMÎ?e¾DQ„Q?‚2Y0â³?Œ°¶.Ä+Æ?‚2Y0âµ?‚éXëLL÷?†–f_ÔŠŠ?†©b/bJö@@@@@,@*?ð?ð?ð?ð?ð?ð¿ú³«€>üj#?"˜ôÈ:~ÿ?²û¢€ù@©ïS2 h@«óæl1ÿ;?B}1!æ7?7 Ãp´?’“?ÛršÀ?{ðÓÄõ˜@Ÿföo¡îê@@ †µ?|í‘@ †²-V@ †µ?|í‘Á.„€@ †µ?|í‘Á.„€@ †µ?|í‘Á.„€@ †µ?|í‘Á.„€@ †µ?|í‘Á.„€@®|í‘hs@®» [@®|í‘hsÁ.„€@®|í‘hsÁ.„€@®|í‘hsÁ.„€@®|í‘hsÁ.„€@®|í‘hsÁ.„€@8¥öý!ÿ.@8¤«§êå@4E?|í‘hÁ.„M‰ûçm@3Ú~ùÛ"ÑÁ.„QnÙ‡@2ÿò䎊rÁ.„NÜC,¥@2ÿò䎊rÁ.„NÜC,¥@2ÿò䎊rÁ.„NÜC,¥?§m*HšÎ@8#˜@8¾:@8 >+@8Iç@8Ù?•Ö/ê€÷Æ@8Î÷@8i§@8Å@8S@8û—?À\ï;.=ø@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@¦9k…¸RÁ.„€@¦9k…¸RÁ.„€@¦9k…¸RÁ.„€@¦9k…¸RÁ.„€@¦9k…¸RÁ.„€@¦9k…¸RÁ.„€@š4Ÿ¾vÈ´Á.„€@š4Ÿ¾vÈ´Á.„€@š4Ÿ¾vÈ´Á.„€@š4Ÿ¾vÈ´Á.„€@š4Ÿ¾vÈ´Á.„€@š4Ÿ¾vÈ´Á.„€@8í¥œàvÁ.„>¤µÜÆ@4+ IºÁ.„M‰ûçm@3PA‰7KÇÁ.„QnÙ‡@2èè§æ›Á.„NÜC,¥@2èè§æ›Á.„NÜC,¥@2èè§æ›Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø@«½ó¶E¢@«ÀgPÉŸ@«½ó¶E¢@«ÀgŠÁ@«½ó¶E¢@«ÁPÔm@«½ó¶E¢@«¿ub˜@«½ó¶E¢@«½cW÷¼@«½ó¶E¢@«»éÖòŸ@œ7XbMÓ@œ7Y™™™›@œ7XbMÓ@œ7Y;ò$@œ7XbMÓ@œ7aÕ9a@œ7XbMÓ@œ7Z¢G*ó@œ7XbMÓ@œ7\¡Œé)@œ7XbMÓ@œ7_9(Ã@6¥öý!ÿ.@6¤P#Nl@1ÞÙ‡+@1ß3$e…á@1H“t¼j@1H\²êeÒ@0ãÉîËû@0â Œûü@0ãÉîËû@0áKü;Â@0ãÉîËû@0àî¢K¶Æ?¨Sp*?Ę'} ?’6nXé?‹Ø7e?‘8‰\\?’D\Zõ(?ˆ´\Ηþ?’¼[“L?‘&aƒD2Õ?`‡úaé^?‘-Ï÷ÃÑ?‘H€ÈX?š@VÇ;Q?ŒÆ‰)ÕÆ?ƒ×ÈÒàS¤?ƒ#ˆïº¤?†ÜÕI±´Ù?‡÷2o»9@@"@"@@,@*?ð?ð?ð?ð?ð?ð¿I‘•?@'KXt?)sí[”ƒt?"ê{H8£@«¾ ~¡0@œ7[®Oÿ¾?I÷kyQK?B{M„Ò¶?œ§Cµ3?‡ ‹-*J‡@Ÿi\¯õ @@¦\G+ J@¦\[ÈÄ’ï@¦\G+ J@¦\PNUÙ @¦\G+ J@¦\I¾²ì'@¦\G+ J@¦\_MÕô5@¦\G+ JÁ.„€@¦\G+ JÁ.„€@˜ç“t¼j@˜çŽ'a@˜ç“t¼j@˜æ¨¢GÔ'@˜ç“t¼j@˜æÙ“Uï@˜ç“t¼j@˜æÃrÑ @˜ç“t¼jÁ.„€@˜ç“t¼jÁ.„€@8*0U2b@8@0f‡+ J@0hð¸@/íOß;dZ@/ëàÞÒˆÎ@/\¾ß¤@@/`[À6â@/\¾ß¤@@/]Ùb¶¯@/\¾ß¤@@/Y‡+ ?}Ñ¿ž,?õ¹Ëh?‘1f_¨Ï÷?Aš%ðï?‘\Žýµ€7?×°ë*–w?|öOÿÝ?’4 "ëžØ?ŽËÜ¿€?‘M –=?‘=d¦^™?hï,ðà?‚† SFñ?2ô]7?ƒ<Õp?ƒ=rµE=?†ùadô|?‡&üòI@@@@@(@$?ð?ð?ð?ð?ð?ð¿H#Cš ?A/Ô,Ø?9{<¥‡.?7ÞÄs—»½@¡MŒDá@¬æœ ?Y|=tëEš?Xz>ÈÕÌ?Àʪ÷ü?¾@n©?+^@Ÿg<œë˜@@§¸n—@§¸Ÿ¾x@§¸n—@§·õéá°Š@§¸n—@§¸ŠqÞi@§¸n—@§¸üPH@§¸n—@§¸'y¦µ @§¸n—@§¸)º^5?@¡«ýó¶E¢@¡«ü¬1'@¡«ýó¶E¢@¡¬/Aò×@¡«ýó¶E¢@¡¬{J#:@¡«ýó¶E¢@¡¬B©“ á@¡«ýó¶E¢@¡¬?|í‘h@¡«ýó¶E¢@¡¬fÂ&€@7m¥œàv@7F+jçÕg@3!hr° Ä@3”FsØ@2A‰7KÇ@2…¼£n/@2+xFÜ^@1ù k¹Œ~@2+xFÜ^@2Ϫ͞„@2+xFÜ^@1ìC,¥zx?óA[ØïF?ªŽµcùX?¡äøLAJ.?¡[Òö¿ì? £× +=p¤?»Õ¥¤8*?‡YÍ_?§8©$ +"º?VÇ·Þóï?¨g(Z%?£ƒwž{_?¼è¦²îCU?—M3§´ ?¢C‰'—˜?“'ü#šgã?·wZR)w?¶sr°ÔY?¯Ô m9@@@@@&@&?ð?ð?ð?ð?ð?ð?v¼-ÒÒ€?“À!)Å?M–xA1·Û?gçdÒi@§¸ YýÔ@¡¬Aœæ?i*ì£Lz?ƒó1Fšg°?¸ŠŠæ~ñ ?ìB6ñ`ÏÎ@ŸcŒ*€»@@¯ËZŸ¾vÉ@¯ËV“u@¯ËZŸ¾vÉ@¯ËQhr° @¯ËZŸ¾vÉ@¯ËOhÛŒ@¯ËZŸ¾vÉ@¯ËO4Ö¡b@¯ËZŸ¾vÉ@¯ËN!–R¼@¯ËZŸ¾vÉ@¯ËVÈ´9Y@§z.—Oß@§zI7Kƨ@§z.—Oß@§z)^ž @§z.—Oß@§z)ÞÒ@§z.—Oß@§z5*™1@§z.—Oß@§z,Iº^5@§z.—Oß@§z6âëB@7÷â‚@·€@7ñÑN;Í6@3!hr° Ä@3FÜ]c@2H“t¼j@2=Oß;dZ@1ãÉîËû@1ÒMÒñ©ü@1ãÉîËû@1Ù“ àÞÓ@1ãÉîËû@1Û²þÅm]?ˆÿÀ)T¿Æ?“¤bDÒ¼*?šQ"Äš%?]]gºÉQ?˜´1…9„?•zWmoàí?¤ÊŽaÈ]Ó?Ñ¿ž,?¤ÙS§`G?¥fóa]G? dÈr”K?”•®fÙ­'?¬Uu6EE?àìÚJ>?•ë þÅ?¥k2ïm?æšÔ,<ž?ŒC ãSG@@@@@*@*?ð?ð?ð?ð?ð?ð¿CñìпkCÜÄ?PàÆÂ?­Í?eQGjP#@¯ËSŒF@§z9åêº?t˜,ãK?‚±A˜{^%?Ûš"üHN?å)~+¥Ž@Ÿn]d‹ h@@­®D›¥ãT@­®'®zá@­®D›¥ãT@­®;À6â@­®D›¥ãT@­®/Òòä@­®D›¥ãT@­®/·éù@­®D›¥ãT@­®EãS÷Î@­®D›¥ãT@­®GÈK]Ì@£5Á$Ý/@£5Ðå`A‰@£5Á$Ý/@£6-w1@£5Á$Ý/@£6P-à @£5Á$Ý/@£6?U›=@£5Á$Ý/@£6<£n0@£5Á$Ý/@£65sê³h@8í¥œàv@8ü1&éy@4™º^5?}@4Uœàu÷@3¬j~ùÛ#@3y‡+ @3«6z‘@2ß—$tS@3«6z‘@2ê¹õY³Ñ@3«6z‘@2ðA‰7KÇ?´M ó¬^õ?º<ß‚9¥?±“áí=1-?·Ô\û‡Ú?£¸ +ÁX¶?I: ­¬?¶¼=Ða?É¥Þµ¶.ó?ÅË,Øh§ß?º2ƒ˜ü?³4)=åD“?°è*T`Í?ÒC +÷ Dk?–(Ži´™^?™Ä¶BϪ?¡2¿ônM|?™^ÓnÔl©?’Ž<Dxƒ@@@@@*@*?ð?ð?ð?ð?ð?ð?{œv'š?”³!îÛ`?[5ö´‹?€¢bÐÑd@­®=q «è@£6"Ö6Ú?u¥Ç$Úº?9õÝò8?µÅ¥Íí0?ð˜meY@ŸoJo@@@ªˆV‡+ @ªˆVE¡ÊÂ@ªˆV‡+ @ªˆ[Í5¨X@ªˆV‡+ @ªˆWXâd@ªˆV‡+ @ªˆYJôðØ@ªˆV‡+ @ªˆY‡+@ªˆV‡+ @ªˆXy=Ù@¥)šŸ¾vÉ@¥)šŸ¾vÉ@¥)šŸ¾vÉ@¥)™Àëíù@¥)šŸ¾vÉ@¥)›¥ãSø@¥)šŸ¾vÉ@¥)–8†YK@¥)šŸ¾vÉ@¥)—>«6z@¥)šŸ¾vÉ@¥)—$tS@4ò䎊@4£S&@1é‡+ @1è_ö”F@0"-V@0"•éá°Š@0𖻘Çã@0îƒä%®æ@0𖻘Çã@0î}Vlô@0𖻘Çã@0î}Vlô?|öOÿÝ?äm°û0Ž?‘G¿yÛ?ï?r*ž¾Ž?’°STðS?‘¦‘=W?|¬Çëý ?’r/BÖ?§^ ÿo˜?’îy†Ò‡‚?’íßš?‘–íÍQÜ?‚yî8Á#?ŒË›Í‡Çq?‚§W®ê ?„2ÌôÏ?ˆÔÞÑ—æJ?ˆ‹”âó@@@@@(@$?ð?ð?ð?ð?ð?ð?D. H¿KÕÞ¢´?,<ЧùàŸ?19á^¹®ã@ªˆW°á3—@¥)˜´5úY?LFgÕðz?Q€OA¯ø3?£VâLiW¦?¬þ vªmt@ŸfcTF×Þ@@ ÑÏß;dZ@ ÑÐ Ä›¦@ ÑÏß;dZ@ ÑѨž@ ÑÏß;dZ@ Ñß/UX!@ ÑÏß;dZ@ ÑÐs½FI@ ÑÏß;dZ@ ÑÏ´(lQ ?ê(~?–ðÒš±r(?‘ëóqÎW?}@T˜ÁÎ¥?’ ü~5ö?’?ÂÛ*9?l‡¹ïœt?”‹ô?”ìÛX*?‚o˜¥Å÷?25´Ð?…´ÕËA‰´?‹hðM5³?“ÅÀ#Åœf?‘÷lÉ™d@@@@@2@4?ð?ð?ð?ð?ð?ð¿P×ÖØÞ?5»"”ð?Eí© S›Û?IÆ3#H)|@ ÑÎ[«@¦Q!U`³?e»¡t¾ÚÃ?iG÷H +?ÔàncXZ?Û +ùϸÃ@ŸeÖŒx:y@@®+öE¡ÊÁ@®+ô9Xb@®+öE¡ÊÁ@®+öý!ÿ.@®+öE¡ÊÁ@®+÷´¢3œ@®+öE¡ÊÁ@®+ùXbO@®+öE¡ÊÁ@®+õöý!ÿ@®+öE¡ÊÁ@®+õ›=È@£V;dZ@£V|í‘h@£V;dZ@£V uöý"@£V;dZ@£VW>«6@£V;dZ@£V„µÜÆ@£V;dZ@£V($ x@£V;dZ@£Vÿ—%@7ÉÎ_oÒ@7Éá°‰ (@1Ï|í‘hr@1ÏåÉä@1PA‰7KÇ@1PA‰7KÇ@0n_oÒ @0n í(Œç@0n_oÒ @0ncŠ @0n_oÒ @0n.±Ä2Ê?…ÅBðrç?¾‰máÚ?‘£Ä›è?‹¹GüÞõ?‘'¬Å™» ?×°ë*–w?žŒÝÙ›P?’7Îf¬ps?³2ºŽ'?@§[*^?‘Uç·Býi?NÂò‚Ì`?˜Ÿó6P£?GÚ +­ ?‚Ì ÝŽ‚8?ƒ!Ë *(?†ùadô|?†¯Mž684@@@@@,@"?ð?ð?ð?ð?ð?ð?>…¨ ?ü+0?EŒkã´Ûã??Ý987g@®+öwË.Y@£V×Çœ?f¸£í@?W-aÌÞd†?Ñv°)î?§ªF7ŒMö@Ÿnšµ;@@¦ãyXbN@¦ãuÂ\)@¦ãyXbN@¦ãyÀëíú@¦ãyXbN@¦ã¤?åÉ@¦ãyXbN@¦ãsÐ|„¶@¦ãyXbN@¦ãzQÎ@¦ãyXbN@¦ãuŽ!–T@£pë…¸R@£qÄ›¥ã@£pë…¸R@£pèr° Å@£pë…¸R@£púŸ¾vÉ@£pë…¸R@£pót¼j@£pë…¸R@£púÔ,<Ÿ@£pë…¸R@£pøºÇË@8›¹Œ~($@8uöý!ÿ.@3£÷ÎÙ‡@3£S&Â@3“t¼@3*™0¾@2£ÉîËû@2¤!-w2@2£ÉîËû@2£t¼j~ú@2£ÉîËû@2£n.±Ä3?€‚ñêã ?–(.À·÷?’w·†m?’(æ„+Zk?šŒÐ&îèx?¢ïĵÐ^M?»ö#°€Ô[?£½‹„@p?‘S1Êz? +ªê@£pöm6¤?m˜Ï­Ÿ0?pëÙýT»‚?Ä\µ¶z|?Ç‘8»ÓEÿ@ŸoCï—ÿÉ@@¤ Ƨïž@¤ L˜_@¤ Ƨïž@¤ ¹Œ~(@¤ Ƨïž@¤ M=\@¤ Ƨïž@¤ ßÊ}å@¤ Ƨïž@¤ _À/@¤ Ƨïž@¤ D'@™óáG®{@™óàÄ›¥ã@™óáG®{@™óá]^Q@™óáG®{@™óâ“7@™óáG®{@™óá\Âv@™óáG®{@™óâ Iº^@™óáG®{@™óâÐå`B@4Ô xFÜ@4Ó²ñÝ›0@0Ù‡+@0Ò/oz^@.&éxÔþ@.•ˆ@,87´¢3œ@,8µó|»š@,87´¢3œ@,8¤TÞ@,87´¢3œ@,8« ˆ¤?|çµB &€?ã«ÁÜq?‘lȼÛê?‹µý-M+ì?ìXk™Z³?º1 +qV?|Ñb×¶@?’ €£·?F¡{r‹?2Nk6y¬?Õa$ÄÂd?VñTL}Á?‚’¤I å?Œ²£ ?‚’¤I æ?‚òƒ¼‡?†Š7´is\?†‹îªViö@@(@$@(@:@:?ð?ð?ð?ð?ð?ð¿$—·5 ?'ì-‡?>çÉÍ@>ÿç²DÝö@¤ ÂƒÝæ@™óᇋ?!*c#è$?«A—=7á?P%¹ö#ä?J.#gdU…@Ÿfþ51ç@@¢àA‰7LÁ.„€@¢àA‰7LÁ.„€@¢àA‰7LÁ.„€@¢àA‰7LÁ.„€@¢àA‰7LÁ.„€@¢àA‰7LÁ.„€@ -Rñ©ûçÁ.„€@ -Rñ©ûçÁ.„€@ -Rñ©ûçÁ.„€@ -Rñ©ûçÁ.„€@ -Rñ©ûçÁ.„€@ -Rñ©ûçÁ.„€@87â‚@·€Á.„>¤µÜÆ@4Œí‘hr°Á.„M‰ûçm@3§KƧïžÁ.„QnÙ‡@2á:’£SÁ.„NÜC,¥@2á:’£SÁ.„NÜC,¥@2á:’£SÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø@¯š¬1@¯¢MÒñª@¯š¬1@¯œ¹#¢œ@¯š¬1@¯¢3œÀ@¯š¬1@¯Ÿ!-w2@¯š¬1@¯™ k¹‹@¯š¬1@¯—€4mÇ@¢¯@¢¯`A‰6@¢¯@¢®ý<64@¢¯@¢¯ëíúD@¢¯@¢®ûšu@¢¯@¢®ü¹#¢œ@¢¯@¢®üàuöý@7‡>«6z@7‰Î_oÒ@2^Ù‡+@2\篷é@2M²-V@2Hè§æ›@1Eœàu÷@1@oiDg8@1Eœàu÷@1B3œ¾à@1Eœàu÷@1B Iº^6?•²»UbB2?“:„aGS?’ +N»A3?ŽAtùð¥t?’š'†­`í?‘¦ µÚ?žˆ2}?•wi¢‚*?”3jà’_?”±¤ëµu]?’ÞH†<²?“ <°·Ê?“ÉŸ“_Æ?c I??‹f°ùr[ƒ?ƒR¨º“JÞ?‡&üòI?·♊N@@@@@(@*?ð?ð?ð?ð?ð?ð¿cƒmú¿aKõ>?Bз`Ë?D1#Xj@¯œýÆ¥I@¢®ÿ)¡F6?^pë{ ?gwÁ/óÒ-?¶å|>iH?Ïg+·‰@ŸkÓ@@¤©’n—P@¤©’-V@¤©’n—P@¤©”ã¼Ó\@¤©’n—P@¤©“ŽóMj@¤©’n—P@¤©–_Ø­¬@¤©’n—P@¤©“¶E¡Ë@¤©’n—P@¤©“×Ûõ@¡›¥ãSø@¡œj~ùÛ@¡›¥ãSø@¡šu%F@¡›¥ãSø@¡™0¾ í@¡›¥ãSø@¡˜bMÓ@¡›¥ãSø@¡š^5?}@¡›¥ãSø@¡š)Çy§@4¿–»˜È@4¾óMj@0ë¥ãS÷Î@0ê™0¾ í@0“t¼@0¯O „M@0Œ~($ @0>«6z@0Œ~($ @0ùrGF@0Œ~($ @0*0U2a?|öOÿÝ?°çR;?‘K]Ã4?‹ÑqÔ@vÿ?‘1 °µv¦?‘PÊÑ<Ýl?|öOÿÝ?’uß¿çÒ?³2ºŽ'?6) }’ë?‘<¸ö}½?±—'¶Ü+?ƒmÕ+&¬‰?Œ¯þuõí?‚ù…žÄ`x?ƒ ?ÿ½?†Ü‘ °Ô?‡´*žZ}Õ@@@@@*@,?ð?ð?ð?ð?ð?ð?@ºŽSp¿D ˆ½ä?=§ L±?8M$@¤©““‡Ÿ@¡šà¦?]Z§`63?XZ¢ºí?Æí[š»$Æ?¾f†þdç@ŸfÝ…ï @ @§æî—Oß@§æî—Oß@§æî—Oß@§æï#àJÊ@§æî—Oß@§æïY~Ò@§æî—Oß@§æï>Õ(@§æî—Oß@§æíI(—"@§æî—Oß@§æíV@“+_;dZ@“+_;dZ@“+_;dZ@“+^;L's@“+_;dZ@“+^h¾>@“+_;dZ@“+]xèY¯@“+_;dZ@“+_ÐIñ@“+_;dZ@“+^%˜Í³@1^Hè§æ@1^V“u@+ëÆ§ï²@+달q ±@+íOß;dZ@+ì»^h(@+zÇË)_@+z¹AM^Ö@+zÇË)_@+y`6Âû@+zÇË)_@+zÿçSà?É^ž6õP?¾Ÿˆf¥^?‘F¢þó?‹½ö’˜©?ìXk™Z³?µûê?ÐbMÝn½?’ÎV‡?ƒæjªÄ?7þi¦UÄ?Ú5V¥·?NÍÐ)Çh?€bMÔŠ»?Œ°ž:ød?‚r{e•{t?‚ä°Õ›ƒ’?†§mÇÕ™¤µÜÆ@7+¥ãS÷ÏÁ.„M‰ûçm@6€å`A‰7Á.„QnÙ‡@5«xFÜ^Á.„NÜC,¥@5«xFÜ^Á.„NÜC,¥@5«xFÜ^Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø"@®Òñ©ü@®‹a–zœ@®Òñ©ü@®Žß¸3“@®Òñ©ü@®xðÕ@®Òñ©ü@®~Êõ2Q@®Òñ©ü@®Žo”Ë@®Òñ©ü@®ˆtž|.@›¿ Iº^@›¾÷͌ݬ@›¿ Iº^@›¾Ú¡Ú¦@›¿ Iº^@›¿Õ»ö-@›¿ Iº^@›¾ãL,èú@›¿ Iº^@›¿ ±S{X@›¿ Iº^@›¿d3þ@8[¹Œ~($@8[íXÓz'@3Ê^5?|í@3Ñk¾6@@2Õ`A‰7L@2Þ×ë µ†@2G ù kº@2O´Êj†ê@2G ù kº@2Kæ·k@2G ù kº@2L:þ„GŒ?šž†%³Õh?‘>EˆéG?•üìw•y ?‹ðãÚ6J°?”|yðlŽô?’+w³w?|¬Æ Væ?›Ûœ,º!¤?¡C^]òò?‘@§…Et1?’Äøò‚BE?Ó]ꆑ?…ç¾":,ô?ãR ›èp?ˆ˜)§éG?‚ü6ãm?‰mçûŒ†?$^Ñ}VÈ@@&@&@@0@0?ð?ð?ð?ð?ð?ð?MÌ·„?N,ÃC”?hiV£Ù—Ì?\yQ'‹/@®…žºJò@›¾û¯ŠÏ[?‚ +Ư½Ìÿ?u¶Ífv?þ>iëÿ@w¦A›Š;@ŸlÈű1@#@¦±†$Ý/Á.„€@¦±†$Ý/@¦±„µÜÆ@@¦±†$Ý/@¦±€ªdÂø@¦±†$Ý/@¦±ŽËûµ@¦±†$Ý/@¦±‰^ž +@¦±†$Ý/@¦±†ö”Ft@®cݲ-VÁ.„€@®cݲ-V@®c宿1ù@®cݲ-V@®cáaä÷f@®cݲ-V@®cÜÚQ@®cݲ-V@®cØl"h +@®cݲ-V@®cÐbMÒò@904mÅÖ8Á.„>¤µÜÆ@4O|í‘hr@4H*™0¾@3~V“u@3}ÈK]Ì@3ý!ÿ.I@3¾ í(@3ý!ÿ.I@3å`A‰8@3ý!ÿ.I@33œ¾à@8J¨?šQ&Üg4Ó?—go]Þ?—IW`g’?|³K’!\?›‹ÞV‘@8J¨?› Öü{?”€@N¯â?”!Ø×Ï“è?š¹'¤Ò ?Ÿ¥O[õÆ@8p÷?”É…ðoiE?‘bR?‘˜†Œ/ž?’Oûh´6c?’3¨£„È@@@@$@&?ð?ð?ð?ð?ðøøøøøøøøøøøø$@ªÍ,1&é@ªÍ+…¸R@ªÍ,1&é@ªÍÚQÎ@ªÍ,1&é@ªÍ qv@ªÍ,1&é@ªÍGE8î@ªÍ,1&é@ªÍ[À7@ªÍ,1&é@ªÍ§ï²@¬öýp£× +@¬öý²-V@¬öýp£× +@¬öðË)^Ÿ@¬öýp£× +@¬ö×éùr@¬öýp£× +@¬öØbMÔ@¬öýp£× +@¬öåÉä@¬öýp£× +@¬öëP°ò{@5„¯O „M@5„÷eýŠÛ@3‚° Ä›¦@3yÛ"Ðå`@3€å`A‰7@3sFÜ]cˆ@3OO „M@3AÎ_p@3OO „M@3C¯·éú@3OO „M@3C&Á½¥?|¬Çëý ?¡Iü¤µÜÆ@3&‡+ JÁ.„M‰ûçm@2M²-VÁ.„QnÙ‡@1ãÉîËûÁ.„NÜC,¥@1ãÉîËûÁ.„NÜC,¥@1ãÉîËûÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø&@ªB©xÔýôÁ.„€@ªB©xÔýô@ªB©Q‚©“@ªB©xÔýô@ªB¡ÊÀƒ@ªB©xÔýô@ªB¿HÌ@ªB©xÔýô@ªB›ô‡ü¹@ªB©xÔýô@ªB¡ÊÀƒ@¢õ33333Á.„€@¢õ33333@¢õ,cñA@¢õ33333@¢õ0Ë)^ž@¢õ33333@¢õ-\ú¬Ú@¢õ33333@¢õ$M:’@¢õ33333@¢õ*W§†Â@9Î쿱[WÁ.„>¤µÜÆ@3«¥ãS÷Ï@3¬"h Ô•@2Æ“t¼@2ÄêJŒL@2zÔ,<ží@2|í‘hr°@2zÔ,<ží@2u8ï4Ö¢@2zÔ,<ží@2vµ '»@8J¨?4ë©$è‰?’à©GMõ?žtN+®6?•’ØŒi³?—uæË}üI@8J¨?—áZk·×?‘Ûcu%ç+?žätmî>?œ—ø#\á?š¥£Âº²ƒ@8p÷?‘ë…¸Qì?‚‹¡8*ú?†ÞåØÜÓ?ŽNîV˜C&?óRÏ4@@@@,@*?ð?ð?ð?ð?ðøøøøøøøøøøøø'@¥™£S÷ÎÙ@¥™­Òñ©ü@¥™£S÷ÎÙ@¥™£S÷ÎÙ@¥™£S÷ÎÙ@¥™£ˆe”¯@¥™£S÷ÎÙ@¥™£S÷ÎÙ@¥™£S÷ÎÙ@¥™£,¥zx@¥™£S÷ÎÙ@¥™£FÜ]d@«¾Ý²-V@«¾å¸Qì@«¾Ý²-V@«¾Ýcˆe–@«¾Ý²-V@«¾Þ($ x@«¾Ý²-V@«¾ÞÑ·@«¾Ý²-V@«¾ÝÙb¸@«¾Ý²-V@«¾Þ($ x@6cg ù l@6q©ûçlŒ@-$“t¼j@-$?åÉ@+IxÔýó¶@+I…ðoiC@)ܾߤ@@)Ü(õÂ^@)ܾߤ@@)ܾߤA@)ܾߤ@@)ÜÚQÍ?1·†Æjñ?é¥3i£ó?‘½ümüñ?‹Æ úJ-M?êtÿKÑc?ºª$Ð?„F/·ÿP5?’ ,øÕC©?ƒ‰/BH?;ß $Þû?Ó%y*£=?X78›š?‰6~„æAÔ?Œµ3‰;šÏ?‚uÞ@>N ?‚äÍ“½E'?†‰Oú|q?†’Õaì+’@@@@@*@,?ð?ð?ð?ð?ð?ð¿dñ欿Z¶Ã?DU–ÄñÑ4?¤µÜÆ@4^Ù‡+@4çl‹C•@3§KƧïž@3[àÞÒˆÎ@3+xFÜ^@2Ò° Ä›¦@3+xFÜ^@2Ô?åÉ@3+xFÜ^@2ÔŽŠqÞj@8J¨?·-ie˜ýZ?¼¯páÈZ™?»3ì‡}s¤?¹—³ÔKÒ?µ€Ï7¯eÊ@8J¨?¢ì]veb?Ç4Z~Ð?ÉïZhB·¤?ÄÇ?jy•?¶×¦¿75@8p÷?þxÖ?Ž“‹}Tz?Þ‚ ‡F?’Oûh´6c?“!S{uu@@@@,@(?ð?ð?ð?ð?ðøøøøøøøøøøøø)@¤+…¸R@¤9™™™š@¤+…¸R@¤ô‡ü¹@¤+…¸R@¤"ø7´¢@¤+…¸R@¤u%F@¤+…¸R@¤!ä÷eþ@¤+…¸R@¤(K]Ìd@¬ìµÂ\)@¬ì±ë…¸@¬ìµÂ\)@¬ì«'»/@¬ìµÂ\)@¬ì³¶E¡Ë@¬ìµÂ\)@¬ìÈÎp:ü@¬ìµÂ\)@¬ìËjçÕf@¬ìµÂ\)@¬ìÂÞÑ·@9šÔ,<Ÿ@9䎊qß@4?|í‘h@4ëíúCþ@34“t¼j@35S&Á¾@3mÅÖ8†@35¨Xy>@3mÅÖ8†@3'Ë)^ž@3mÅÖ8†@3(*™0¾?¢F^ì¼Sð?¦ëñ[ñ”¶?‘šÕU#?Œä%—ëš?˜U7t—{V?¤ËiU´v]?„F/·ÿP5?œÙ”!Çx‡?‘S1Êz?/{Ü?œg> Üb +@Ÿg#ï{[N@+@Ÿ8¹XbN@Ÿ8¹Û"Ðå@Ÿ8¹XbN@Ÿ9mL##@Ÿ8¹XbN@Ÿ9¨>Ä&ƒ@Ÿ8¹XbN@Ÿ97PŽÇb@Ÿ8¹XbN@Ÿ9 +`ZÕ@Ÿ8¹XbN@Ÿ9#gTí©@šÕdZ¬@šÕdZ¬@šÕdZ¬@šÖ á8ô@šÕdZ¬@šÖÙ ¤Žý@šÕdZ¬@šÖl×@šÕdZ¬@šÕ!Ö9 «@šÕdZ¬@šÕÎ8~@1·â‚@·€@1¸?â’®¾@-³t¼j~ù@-'Õû¾è¤@,–E¡ÊÀƒ@+•'ï´ž^@+ëjçÕfÐ@+CÞ*)§˜@+ëjçÕfÐ@+\<Öûg@+ëjçÕfÐ@+|¹¨X?É^£eeäí?¤Åz褪ä?™mŸ‰©_?A¸™l?žÇtø•îÁ?­yKËúÇ?ÐbMØ/×^?£ÓõÌÑ ?£ýîûA.¡?”myb¨Á? AÁ¬¸YT?¦hYón?€r5 +<Ðø?“?(Ó†jñ?“?GKÓ®?˜z^Xè{ü?šž°tkòû?Ÿ/€@öÓ)@ @5@5@7@A@C?ð?ð?ð?ð?ð?ð¿€åe*€¿­Ý½ÍèÀ?~ö¿8?­ð?¤JŒ-‚wQ@Ÿ9'ž¶åj@šÕþò¾¨D?‡Êt+——?±;¹ï‹Õ·?ô5Ú9ç@B›Ò‰ ¸ñ@Ÿoâr¦ @,@£¥úáG®@£¥ó3333@£¥úáG®@£¥ùJôðØ@£¥úáG®@£¥ýp£× +@£¥úáG®@£¥ý—ö+k@£¥úáG®@£¥ý}¿H€@£¥úáG®@£¦ÞÑ·@©&ûdZ¬@©&è´9X@©&ûdZ¬@©'8}À@©&ûdZ¬@©'Œç°@©&ûdZ¬@©' V@©&ûdZ¬@©' cñA @©&ûdZ¬@©'œàu@9eöý!ÿ.@9M‘hr°!@4f‡+ J@4ZqÞi­B@3 "Ðå`B@3Ö¡aäø@2ÑÞi­BÄ@2˲þÅm^@2ÑÞi­BÄ@2Í!ÿ.Hé@2ÑÞi­BÄ@2ÌwškP²?¡ÅꯨŠT?«»‡Ä(Bo?‘"žæÆó¡?‡{@áè?—­¦¾z£—?•ŠàuVº`?ÀjáR î?©ïŽ’v1á?–ôÃj¢T?šWl¬Ëz?™Ÿ»6“?–˜k|‹ ;?ÁTÄàj0­?“ÆQ6þ?…µsê³g¡?ˆã1µR?Œ8¸wx¯?¢—„¯l@@@@@*@(?ð?ð?ð?ð?ð?ð?f?ãÖ€¿Vþ1R-€?I_bà??kèNLœ %@£¥þÇN¨T@©' ÈsMZÌw~?ŒïQ¼º“ã?ƒ!A +mº¹?ƒGϵ¨í'?†å·ÑfWà?†ùadô|@@@@@"@,?ð?ð?ð?ð?ð?ð¿E1Qå? Q ?02Óëä?&ä +;ôð[@¡R §}&@¢Œ8IèO$?OÆéÿ)4A?G2zWL‰?ªÍxZN›?›^àà\E¦@ŸfÙ˜E@.@ª'‰7KÇ@ª'‰7KÇ@ª'‰7KÇ@ª'TÉ…ð@ª'‰7KÇ@ª'½¥@ª'‰7KÇ@ª'|ÚQ@ª'‰7KÇ@ª'ò䎊@ª'‰7KÇ@ª'€[À7@ªÁ©ûçl‹@ªÁ©ûçl‹@ªÁ©ûçl‹@ªÁ©Ô•+@ªÁ©ûçl‹@ªÁªdÂø8@ªÁ©ûçl‹@ªÁª Þ@ªÁ©ûçl‹@ªÁ©ûçl‹@ªÁ©ûçl‹@ªÁ©Ô•*@0‰Î_oÒ@0‰Î_oÒ@+½²-V@+½<64@*¯ß;dZ@*¯O „M@*L²•éá±@*KàÞÒˆÐ@*L²•éá±@*L1&éz@*L²•éá±@*LIº^5@?É^žQ5P‚?é¥3i£ó?‘,fŸCô6?‹Æ úJ-M?ùª¨?¸û:?ÐbMçê_x?’uß¿çÒ?¹º–Èj?4–Ú‰3?ÔÒ@úˆ‘?R g!Ú¢?€b¡´ñ@?Œ°¶.Ä+Æ?‚‹¡8*ú?ƒ!Ë *(?†£îž«î?†’Õaì+’@@@@@*@*?ð?ð?ð?ð?ð?ð¿Bö:(¿>Ôk€?2ð~(y|¾>ø“QÒ +…¹@ª'€²—1@ªÁ©õò?B9Iÿ«Ž?A­ÆvÒ?€?n¢¦‚?·‹3÷7×@Ÿs Ò1j@/@¯°÷KƧð@¯°æéxÔþ@¯°÷KƧðÁ.„€@¯°÷KƧðÁ.„€@¯°÷KƧðÁ.„€@¯°÷KƧðÁ.„€@¯°÷KƧðÁ.„€@©ÖÀ@©Ö»¥ãSù@©ÖÀÁ.„€@©ÖÀÁ.„€@©ÖÀÁ.„€@©ÖÀÁ.„€@©ÖÀÁ.„€@8›¹Œ~($@8€[À6ã@5óS÷ÎÙÁ.„M‰ûçm@5ñ‰7KƨÁ.„QnÙ‡@5Vý!ÿ.IÁ.„NÜC,¥@5Vý!ÿ.IÁ.„NÜC,¥@5Vý!ÿ.IÁ.„NÜC,¥?•²»UbB2@8#˜@8¾:@8 >+@8Iç@8Ù?óA[ØïF@8Î÷@8i§@8Å@8S@8û—?Èèì 1@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø0@Ÿ»o²-@Ÿ»P¡þ‰=@Ÿ»o²-Á.„€@Ÿ»o²-Á.„€@Ÿ»o²-Á.„€@Ÿ»o²-Á.„€@Ÿ»o²-Á.„€@¦ç¬‹C•@¦ç¦„à@¦ç¬‹C•Á.„€@¦ç¬‹C•Á.„€@¦ç¬‹C•Á.„€@¦ç¬‹C•Á.„€@¦ç¬‹C•Á.„€@8ý:’£@9?W:*—@4û Iº^Á.„M‰ûçm@3ÝV”Á.„QnÙ‡@3s&Á½¥Á.„NÜC,¥@3s&Á½¥Á.„NÜC,¥@3s&Á½¥Á.„NÜC,¥?š­˜]@8#˜@8¾:@8 >+@8Iç@8Ù?¾»AH­=ø@8Î÷@8i§@8Å@8S@8û—?µÖúLwÊ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø1@¦_[¥ãSø@¦_^5?|î@¦_[¥ãSøÁ.„€@¦_[¥ãSøÁ.„€@¦_[¥ãSøÁ.„€@¦_[¥ãSøÁ.„€@¦_[¥ãSøÁ.„€@¦&ffff@¦!G®{@¦&ffffÁ.„€@¦&ffffÁ.„€@¦&ffffÁ.„€@¦&ffffÁ.„€@¦&ffffÁ.„€@7Y*0U2b@7UðoiDh@4¦‡+ JÁ.„M‰ûçm@4b-VÁ.„QnÙ‡@3ÿò䎊rÁ.„NÜC,¥@3ÿò䎊rÁ.„NÜC,¥@3ÿò䎊rÁ.„NÜC,¥?‚á²Olºü@8#˜@8¾:@8 >+@8Iç@8Ù?3ßa=„@8Î÷@8i§@8Å@8S@8û—?‘c‚ׯ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø2@¦`o²-@¦`p Ä›¦@¦`o²-@¦`n—Oß@¦`o²-@¦`o „M@¦`o²-@¦`oìVÕÐ@¦`o²-@¦`l¿±[W@¦`o²-@¦`l˜_÷@¦ t9Xb@¦ týó¶G@¦ t9Xb@¦ t‡ü¹$@¦ t9Xb@¦ t•*š@¦ t9Xb@¦ vE¡ÊÁ@¦ t9Xb@¦ u '»@¦ t9Xb@¦ u›=È@4‚ò䎊@4[W>«6@15ãS÷ÎÙ@161ø .@0²-V@0 –»˜Çâ@/Aò×t@/Ž_oÒ!@/Aò×t@/hÛ‹­@/Aò×t@/Ž—Oß+@8Iç@8Ù?¸®ˆ¤óÇþ@8Î÷@8i§@8Å@8S@8û—?µ{åÐÖÚ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø5@ª$G®zá@ª$X0yø*@ª$G®zá@ª$dñ›O*@ª$G®zá@ª$Í¢`Ë@ª$G®zá@ª$µðgì¹@ª$G®zá@ª$´áòI@ª$G®zá@ª$Åî|ßø@•øÔýó¶@•ú …@•øÔýó¶@•©‰2"•@•øÔýó¶@•A9t@•øÔýó¶@• ‡Œ‡@•øÔýó¶@•KsÿK@•øÔýó¶@•Xdc 4@8Âò䎊@8³Á;¬³h@5ør° Äœ@5í¶¿±·@61‰7Kƨ@6qæL5@4á:’£S@4³fLoj@4á:’£S@4”;ž$ä‚@4á:’£S@4’­ù ?¡ë MV{¶?“»N+³9G?µ?û¤J?©~ê}²·6?ºt¼2Én?¾Ü“K3ûº?®ÌÅþõ¤À?¢2ðð;Z¦?¶•!|/ñš?· .ß³Q{?Ål™1¡}?Äí‚‘²ƒô?˜óB1ßPÅ?žXzâ×)Ø?»Úဃ?›/ÿŠÆe¹?¤lP‘R©{?¥’SÉF"@@ @&@(@<@9?ð?ð?ð?ð?ð?ð?œj +îÀ?x=lÆ?vßG¤[J©?g×ò¬vWØ@ª$”²wc)@•e‰1?”)Ó‹ %¢?…ÄZtÐ;!?ì…Ÿ4,ñ?·Àµ † f@Ÿfh飤@6@ª2;dZ@ª25?|î@ª2;dZ@ª21&éx@ª2;dZ@ª27´¢4@ª2;dZ@ª2zxl!@ª2;dZ@ª1ÿoÒó@ª2;dZ@ª1þÑ·@§/9XbN@§/6È´9X@§/9XbN@§.Çü¹#£@§/9XbN@§.ô9Xb@§/9XbN@§.Ãn.±Ä@§/9XbN@§.ÉÇy¦µ@§/9XbN@§.½IQ‚ª@8¿–»˜È@8¦+jçÕg@43S÷ÎÙ@4a@N¤@2ß²-V@2ÅF +¦L0@2î_oÒ @2ºçÕfÏB@2î_oÒ @2º¦L/ƒ|@2î_oÒ @2¹™™™™š?¦Ï±úQm‡?“vuØcʲ?“njĕ‹x?ØTnçE?–[À5ž¨?–VòFNLG?—¤o„C?›ªÊît…?•swŽ)Ò?±2ý}û¢í?°KNø»«ú?²fÄF›Ž7?£ ‡ººbë?‘ÌAzÁý?ƒÆ×q„nð?‹h¢íc„„?•XðküÏ?–Ö8ýÆN0@@@@@,@*?ð?ð?ð?ð?ð?ð¿v>£hi€¿œËÑœ ?Z{»„®ˆ†?u‰Ü'#ì@ª2Ú‘î@§.ë’.õÐ?sV}‹zÿ?˜äËiC?ÑVÕ.¥f?ùÈT|Xˆ@ŸjEpÔ É@7@¦ä:áG®@¦ä6‡+ @¦ä:áG®@¦äDÝ/ @¦ä:áG®@¦ä×s@¦ä:áG®@¦ä#,¥zx@¦ä:áG®@¦ä*Ú¹õY@¦ä:áG®@¦ä)xÔýô@¥¸ó3333@¥¸ñ©ûçn@¥¸ó3333@¥¹×sü@¥¸ó3333@¥¸ãS&@¥¸ó3333@¥¸ëxFÜ@¥¸ó3333@¥¹ ]Ìcñ@¥¸ó3333@¥¹ÓZ…ˆ@8 ]cˆe”@8škP°ò@4½‘hr° @4šqÞi­B@4Wï²-@4'_oÒó@3‚@·€5@2å?|í‘i@3‚@·€5@2òœwškQ@3‚@·€5@2÷“Ý—ö,?š•§q!U?¬}æàÀæ?µ¹eüº¦Þ?§ÔÅȉ›?œ=òÙUä?¢‘Þ')ÚÌ?‘â%ì˜ ä?¢›â¾Ð'µ?®Ÿîæ½ä?¬Û7èfQ?¡j`cq?¨V⌰Ö?Œznyž-g?¦; y»Ÿ?¦qeP•QZ?—ôŠÊô?•*†*Zû? kÿà¬@@@@@(@(?ð?ð?ð?ð?ð?ð¿gÂ݃?|meþZ€?Vs`éz7ñ?dC¨’ç'«@¦ä.& Œ$@¥¹ž¬û?v2Í5…/?†/]1?În*P„Â?êü¬ +7h…@Ÿi}R§ê@8@¥JšŸ¾vÉ@¥J›"Ðå`@¥JšŸ¾vÉ@¥JœPHð@¥JšŸ¾vÉ@¥Jœ(õÂ@¥JšŸ¾vÉ@¥Jšû~‘@¥JšŸ¾vÉ@¥J˜l"h @¥JšŸ¾vÉ@¥J™¦µ @¥XbMÓ@¥XbMÓ@¥XbMÓ@¥WOß;@¥XbMÓ@¥Sœ¾ß@¥XbMÓ@¥XQë…@¥XbMÓ@¥Vð¹@¥XbMÓ@¥Vð¹@4÷â‚@·€@4÷_oÒó@1=‘hr° @1>záG®@0§KƧïž@0§ÈK]Ìd@0(è§æ›@0(ï4Ö¡b@0(è§æ›@0(ºÇË*@0(è§æ›@0(è§æ›?|¬Çëý ?ôÊ_?‘"žæÆó¡?ŒÇQ´uøiÛ@ ƒ'ï²-@ ƒEåA‘@ªëó3333@ªëï½É×f@ªëó3333@ªëõO8œ@ªëó3333@ªìrÓæ*@ªëó3333@ªëöGPñÚ@ªëó3333@ªëðé(å¸@ªëó3333@ªëñ—!@8Bò䎊@8Bü)@Œ@58r° Äœ@5>ùH2¸@4—ï²-@4Ö”¬Î@4QÞi­BÄ@4M—ú¼¹®@4QÞi­BÄ@4JG˜Åzg@4QÞi­BÄ@4I0ß I»?Ĺó¥p?”D]„Û?‘i£ð ?”l¨G×D? Et¨×?©·GÃáÏ„?¡ë MV{¶?•h™Oô6?’ ¬G|¦?™Üq—èÂõ?˜ å­fgÓ?–eVC6d?‘}й?*?ŽÆÝŒUÐÊ?ŒÜÏKÚ?¢Ÿ t_?“¾f"7ÿ?šäõõ(åâ@@&@"@(@5@:?ð?ð?ð?ð?ð?ð?wMÁ°ê€¿UBÁ@?n˜ «Š?Q>OÅ\’@ ƒEUð5V@ªëòaõÅY?ìFƒZ?m:“õb@õžJŸ•?ÀæT‡‡÷@ŸkÁ)0j@:@ ðØ“t¼j@ ðÄDKAw@ ðØ“t¼jÁ.„€@ ðØ“t¼jÁ.„€@ ðØ“t¼jÁ.„€@ ðØ“t¼jÁ.„€@ ðØ“t¼jÁ.„€@•]Ÿ¾vÉ@•]"~Ìä@•]Ÿ¾vÉÁ.„€@•]Ÿ¾vÉÁ.„€@•]Ÿ¾vÉÁ.„€@•]Ÿ¾vÉÁ.„€@•]Ÿ¾vÉÁ.„€@7uS&Á¾@7u‹‘ w@5#÷ÎÙ‡Á.„M‰ûçm@4PA‰7KÇÁ.„QnÙ‡@4ÚQÎÁ.„NÜC,¥@4ÚQÎÁ.„NÜC,¥@4ÚQÎÁ.„NÜC,¥?˜²Tëg@8#˜@8¾:@8 >+@8Iç@8Ù?Žýf´ù:ú@8Î÷@8i§@8Å@8S@8û—? ‰M„6™~@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø;@«Ý¼í‘hs@«Ý»D—Î@«Ý¼í‘hs@«Ý¿ZÑ*@«Ý¼í‘hs@«Ý¼ÃùÓ@«Ý¼í‘hs@«Ý»³_ø•@«Ý¼í‘hs@«Ý¹Ñ¶ò:@«Ý¼í‘hs@«Ý¸ÿÊ!>@“c®záH@“cÊÀƒn@“c®záH@“c¯ç¨/…@“c®záH@“cªˆ)8'@“c®záH@“c©ãìÖQ@“c®záH@“c¤Rß%¯@“c®záH@“c¨Ëèú@8}:’£@8õHt4F@4.5?|í‘@41 k¹Œ~@3$¼j~ùÛ@3$®za»°@3 +0U2a|@3 /ñÁÐÅ@3 +0U2a|@3"æQ–±@3 +0U2a|@3 à¡wǘ?˜—"ÝÚá?’ÇŠb4?‘\Уp±•?³©€hš?”[P"mr?Þ@;#Ö?±I€ ¢´‡?”ûP–˜?‘5QTà¡?ì_Ú²±Z?•X1-?^ÅtÙ¤C?ªÏ*DU™?¹ç^2¢+?‡Áã$µG?ˆû™‡îf?Š>º¶Æ?ŠŒ'ê^`N@@&@$@&@8@0?ð?ð?ð?ð?ð?ð¿BæÞøl¿ULJÇÀ?5Q‰þ0ÇÒ?WCiD,‚F@«ÝºZME@“c©Ì÷2ç?P›üî?k(Ž&;ZÞ?šfÄ-£õ?Ê–Œ*@ŸpÇ}UèŽ@<@¦wKƧð@¦w +=p¤@¦wKƧð@¦w¨æd@¦wKƧð@¦{,mIm@¦wKƧð@¦~<ñ·l@¦wKƧð@¦qù³…Ñ@¦wKƧð@¦v*(²"@™ @ƒn˜@™ =ó¶E¢@™ @ƒn˜@™ GÀ{þÜ@™ @ƒn˜@™ 6”ŒEž@™ @ƒn˜@™ c7Ž"@™ @ƒn˜@™ W7#Õr@™ @ƒn˜@™ G!cÄ @6¥öý!ÿ.@6¥ôui×@2é‡+ @2À%3þ@2RÐå`A‰@2㣭Q’@2&YJôðØ@2 Ÿš¶Ã@2&YJôðØ@2/ûR´HÄ@2&YJôðØ@21¢ûmEN?|Ñb×¶@?’,/*¦!Û?”¿’ C%²?‹úßb¦ƒ…?žìÍýÅG8?œÉ…»ã¤Œ?€‘gQÚÃ?”¦HïÃå?˜(32“G?¼Î°ß@?¢+,PíË?¡—@©…÷O?’—Å·zÉ?‘ÀžÂœ?‡¨¶â+‹?‘»ªy@?÷ºYÇó„?«£¡@@(@"@ @8@;?ð?ð?ð?ð?ð?ð?GÛð´?oÀðø?VVÞöoº?aæ„I”ƒx@¦xÊÇ @™ LßÿSÖ?rÓt:I°U?~¼²¿ƒI?ì޷舜,?ú”¡û1 |@Ÿch™[qÈ@=@©€ÚŸ¾vÉ@©€Ó¶E¡Ë@©€ÚŸ¾vÉ@©€Ù k¹Œ@©€ÚŸ¾vÉ@©€ÐË)^ž@©€ÚŸ¾vÉ@©€â Iº^@©€ÚŸ¾vÉ@©€Øl"h +@©€ÚŸ¾vÉ@©€Ù¦µ @¬8*~ùÛ#@¬8*~ùÛ$@¬8*~ùÛ#@¬8'Ë)_@¬8*~ùÛ#@¬8-ÅÖ8†@¬8*~ùÛ#@¬8*™0¾@¬8*~ùÛ#@¬8+'»1@¬8*~ùÛ#@¬8*dÂø8@7­¥œàv@7«íúCþ\@3W+ Iº@3TmÅÖ8†@2¤¼j~ùÛ@2Ÿ¼@1æYJôðØ@1ç8}¿I@1æYJôðØ@1å¼£n/@1æYJôðØ@1åÂ\(ö?‡YÍ_?’ +ܦ%Ö?’ >(lQ ?Ž £Ú?“”>C,4?’¯-! )m?Ÿ‹‘+-/Ü?˜Æ&ÀÒ ˆ?’F^ì¼Sï?‘W×ý°A?’l{9ÙŽ?“{P»á?³czƒ—­?•<€¥¿ý¢?‘c‚ׯ?ƒì%­¹Ï‘?‡L8õASÎ?‡gϵ’õ@@@@@*@*?ð?ð?ð?ð?ð?ð?Z>;î0>æÐSU?\ÕyÞn×? ñb†•F#@©€ÚžÙ|@¬8*©Óð˜?~6ºQÒà=?8²™¶vQ?úS«¾ t?fúEíº¦@Ÿm—Eû€Ã@>@®œ]/Ÿ¾@®œ]ó¶E£@®œ]/Ÿ¾@®œ]—ö+j@®œ]/Ÿ¾@®œ]ÈK]@®œ]/Ÿ¾@®œ]/Ÿ¾@®œ]/Ÿ¾@®œ\C,¥{@®œ]/Ÿ¾@®œ\žì¿²@¤–“u@¤”ýó¶F@¤–“u@¤—eýŠÛ@¤–“u@¤–+jçÕ@¤–“u@¤•$Ý@¤–“u@¤”ðØDÐ@¤–“u@¤•Ϫ͟@6Ç>«6z@6Å8ï4Ö¢@1Œí‘hr°@1‹'»/ì@/ãn—P@/âø7´¢4@/³üPH@/°£× +=q@/³üPH@/²° Ä›¥@/³üPH@/³33334?|öOÿÝ?š¾ßÍZ?‘šÕU#?‹¦ ŸYÔ?‘çG¸?‘W_Ì?|¬Çëý ?’ùÎ {?ŽËÜ¿€?EÇàÔPà?‘ ·èf?«àÓ RÆ?‡}¤íý?îŠõ ?‚|׿pZ?ƒì%­¹Ï‘?†Ë¢L1Ù?‡?®\Âä@@@@@,@,?ð?ð?ð?ð?ð?ð¿5 +à?0?}ÛmÀ?eÈwßxã?ÂØÊ73A@®œ]@:@¤•<¾šÓ?0= õ˜~?4HVwÙ×?ll9sÌ„—?tËà\†i;@Ÿfß(úI@?@¯Üµ?|í‘@¯Üϲ-@¯Üµ?|í‘@¯Ü²ÛÄ¢€@¯Üµ?|í‘@¯Üºvް_@¯Üµ?|í‘@¯ÜºW­Õ,@¯Üµ?|í‘@¯Ü²C\5‹@¯Üµ?|í‘@¯Ü¶kkºw@š{çl‹D@šŒÌÌÌÌ@š{çl‹D@šx9°_¢@š{çl‹D@šƒ 4Ö@š{çl‹D@š„)óÃ6@š{çl‹D@šxBÑF@š{çl‹D@šw•Ѿœ@9쿱[W@8õ¯fŸ@4; Iº^@4:äÆyÿ@3¤¼j~ùÛ@3¥¹„q$ã@3 +0U2a|@3 =­Öð@3 +0U2a|@3 +>˜£ïF@3 +0U2a|@3 £ _ +¥?†c£ïDì?’pvoK‹?“ñ>®kj?ŽØ„èà¯e?‘ºïö©1.?”éÅcÇæZ?¡ÍÜ +Ü?“sŒPì;Š?•²ùuq?ba§U¸?‘ ßäéAÒ?“¤A—Ñ„Ë?•ghZS ?Žb(!èIË?‰8: If…?„$Þ<‚B?‰é Hé‚?U#Ç–ø@@(@*@(@2@5?ð?ð?ð?ð?ð?ð¿yÓ&¾¿d‰5ö€?TÐüòœ|?D<3…@¯Ü»NÈÞ¨@šÝiZb?v^%@K ?[ÓÎí׬|?ëêjrBt?®×›e@Ÿm·©ÓÄ@@@¡½ñ©ûçm@¡½öE¡ÊÁ@¡½ñ©ûçm@¡½Ï–»™@¡½ñ©ûçm@¡½Ðÿ—$t@¡½ñ©ûçm@¡½Þߤ?æ@¡½ñ©ûçmÁ.„€@¡½ñ©ûçmÁ.„€@¬/B\(ö@¬/XÔýó¶@¬/B\(ö@¬/.óMj@¬/B\(ö@¬/@hÛ‹¬@¬/B\(ö@¬/;çl‹E@¬/B\(öÁ.„€@¬/B\(öÁ.„€@8Ì]cˆe•@8»W>«6z@43S÷ÎÙ@4²þÅm]@3¹7KƧð@3›íúCþ\@3ý!ÿ.I@2ýÈK]Ì@3ý!ÿ.IÁ.„NÜC,¥@3ý!ÿ.IÁ.„NÜC,¥?‚á²Olºü?¬„¸ßÜñ|?ªËîi‹à[? [@Ì{@8Iç@8Ù?˜ž^ƒÿ*ˆ?¨î+³M?¥Öä›?ŸÛ€l ì™@8S@8û—?¶j“êÜài?™¬¨YWî?”³Ž+k?‹Ûu¤ó†4@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøøA@ª'ß;dZ@ª' …¸Q@ª'ß;dZ@ª'†Â&@ª'ß;dZ@ª' qv@ª'ß;dZ@ª'—Oß@ª'ß;dZ@ª'¼ÓZ†@ª'ß;dZ@ª'¡ÊÀƒ@­ÔàA‰7L@­ÔíÒñ©ý@­ÔàA‰7L@­Ô× +=p¤@­ÔàA‰7L@­ÔÔ¢3œ@­ÔàA‰7L@­ÔÆ$Ý/@­ÔàA‰7L@­Ô÷Xâe@­ÔàA‰7L@­ÔÓ¶E¡Ë@8™*0U2b@8ˆ´9Xb@3”›¥ãSø@3ˆÛ‹¬q @3)Û"Ðå`@3!4êJŒ@3 ù kº@2ý¥œàv@3 ù kº@2ð¸ºÇ@3 ù kº@2éÛ"Ðå`?„F/·ÿP5?”û#T©È?ŸM¾‰Å´?Œ'õ‚$5ñ?¡Ìº"æh?¦5^ÒYŒ?²C¨y3?˜&§dU(?  5q²Ó/?’ äÅ?·$uA Ç?ÁŠ2š`?ÅùðEû?‘5ø gµÒ?‹v'þ­X?‰E^uŠš?£Ü”~‡ÑT?ª7•"U›@@@@@(@(?ð?ð?ð?ð?ð?ð¿#ðÖ¹ ¿vx¤»­?SÄlW™’?‡Ô½d¦¬ÿ@ª' ´ƒÖ@­ÔÊYÎdm?sÓ¡‹(S?¶)”ÚÏ?Ü#ÃBÏ™?þ’7K¬ñ@@ŸiÝ‘ÙÛ@B@¡€äZ¬@¡€ä›¥ãT@¡€äZ¬@¡€ç“Ý—õ@¡€äZ¬@¡€çï².@¡€äZ¬@¡€åýŠÚº@¡€äZ¬@¡€äg8~@¡€äZ¬@¡€äZ¬@«¾‚ Iº^@«¾‚\(ö@«¾‚ Iº^@«¾€ªdÂø@«¾‚ Iº^@«¾ÊÀƒ@«¾‚ Iº^@«¾ohÜ@«¾‚ Iº^@«¾‚e+Ô@«¾‚ Iº^@«¾ [À@3òÃÉîËû@3òœwškQ@1Ô›¥ãSø@1Ô¢3œ¿@1´“t¼j@1³Ý—ö+k@1‚‚@·€5@1‚ø7´¢4@1‚‚@·€5@1ÊÀƒn@1‚‚@·€5@1‚&€IR?|öOÿÝ?ÖÈ ¼?’µ<ëvar?î®)„àµ?’Z†Ažj?‘£‡9²þ?|¬Çëý ?’r/BÖ?’±ä?’:u.ý ?‘¾ãazÅ?‘yÃúCŠ?‚˜YªüÏE?¨ ‰‹U)?ƒ¡É^&Ö?„€ã$V?‡?®\Âä?‡”_Õ­çW@@@@@,@*?ð?ð?ð?ð?ð?ð?ç‚0DEÉ@?)°£Óªa?Yæ.9ë@¡€äË_G@«¾‚Ô†Æ?Iyºþ°ï ?7µí´=óŸ? ]gð«€?{=ÅeHi@ŸfÂZ-@C@¨ð÷ÎÙ@¨ðzáG®@¨ð÷ÎÙ@¨ðÜÆ?@¨ð÷ÎÙ@¨ð:û~‘@¨ð÷ÎÙ@¨ð k¹Œ}@¨ð÷ÎÙ@¨ð8}¿@¨ð÷ÎÙ@¨ðr° Å@©šÌIº^5@©šÌ‹C•@©šÌIº^5@©šË’:)È@©šÌIº^5@©šÉ^ž @©šÌIº^5@©šÎ±Ä2Ë@©šÌIº^5@©šÏhÛŒ@©šÌIº^5@©šÐ¾ í)@5G>«6z@5Gy¦µ @1pÄ›¥ãT@1o¤?åÉ@1A‰7KÇ@1i­BÃÊ@03&Á½¦@0-í(Œç@03&Á½¦@0-(Œç°@03&Á½¦@0.—Oߪ¸ ?“ÌUõÎs¼@@@@@,@(?ð?ð?ð?ð?ð?ð¿gúe„?IcÛ’P?B~û”¹–S?Ú\Î;ÝË@¨ð5ö@©šÎ'ÌN?b„Å8ym$?7 ¢Út!?ϰMû$±Â?v24†/©”@ŸfJ½í;½@D@ ºc× +=q@ ºcÂà +@ ºc× +=q@ ºeo@ ºc× +=q@ ºe£µ`†@ ºc× +=q@ ºc‚>Y@ ºc× +=q@ ºd]¬|@ ºc× +=q@ ºbÑÌî3@«c +Àƒo@«c +¿Üö@«c +Àƒo@«c ãrèÛ@«c +Àƒo@«c vèöK@«c +Àƒo@«c ]Ìcñ@«c +Àƒo@«c +}šÜZ@«c +Àƒo@«c +(…£Â@3 ØDЩ@3 ñ,'¦7@1?|í‘h@1õ Ô@1t¼j~ú@1 ÿ»@08DЩ*@08Âþ[ü@08DЩ*@09¸Ž6@08DЩ*@0:,†ƒ„?}x—™9Oa?‘7ìyï%?óe6ºº­?|¬Æ Væ?’!_í<Ý?ÃFÝÖü?:Íí"íÕ?ÿr<&?‡'P„i?‚o†#BpW?Œ»G•Ýó?‚ëmÄãN?‚ê¬Ù:âk?†âq¯~ï—?†×ézÇ]*@@*@,@&@9@8?ð?ð?ð?ð?ð?ð¿C¦‹@¿pÞ0@?!SÁøpÉ?š?Ab6@ ºc¢qÁ¸@«c +¬ï¶ ?A2e»&ä?<¡ÿÀ›¨?ke!ræ”?„sdñ z +@ŸfötÄ÷/@E@žŠÙ‡+@žŠÙ‡+@žŠÙ‡+@žŠÞ3¢‚¨@žŠÙ‡+@žŠ×:&)×@žŠÙ‡+@žŠÚóì@žŠÙ‡+@žŠØ¿I @žŠÙ‡+@žŠ×„@Èó@¨¯Ù‡+@¨¯Ù‡+@¨¯Ù‡+@¨¯¨eá³@¨¯Ù‡+@¨¯ ÛÍ{@¨¯Ù‡+@¨¯óÚ‘Û@¨¯Ù‡+@¨¯è‹K@¨¯Ù‡+@¨¯ªkÿÕ@2T xFÜ@2T’8]@0ÞÙ‡+@0ÞÉ\@0V”@0R~¹1@0³&Á½¥@0³¥š…@0³&Á½¥@0³`$OÒ@0³&Á½¥@0³ÛÖCUº?É^ÈmÔ d?¾¡òE ë?‘7ë>a*?‹åPvÆoï?‘ çX‹Ñï?ëÝž2?ÐbMÝn½?’ËÙ‘%?‹^Ónu§?Z<ð?ˆ?÷êjãë9?k ö‡_?€b™Qž?Œµ PÜÞ?‚ŠxÝKhù?ƒè?ÉÐ?†ý\áè*¢?†õr {%u@@ @"@ @3@1?ð?ð?ð?ð?ð?ð¿Híµn:?2éÑ?&¶A™²4z?$4×ã›ï@žŠÙ!ë’@¨¯%¸‘ß?5Úötráh?3!γ M?fÿ‚&$Tô?_•UoØ· @Ÿs+O`Ñ@F@©±Rn—P@©±Rn—P@©±Rn—P@©±SüPH@©±Rn—P@©±Rñ©ûè@©±Rn—P@©±R×sü@©±Rn—P@©±R¼£@©±Rn—P@©±QÞi­D@ `ÿ|í‘h@ `ÿ|í‘h@ `ÿ|í‘h@ `ÿö”G@ `ÿ|í‘h@ `þÿ—$@ `ÿ|í‘h@ `ÿ¼@ `ÿ|í‘h@ `ÿö”F@ `ÿ|í‘h@ `ÿö”F@0¯O „M@0¯O „M@*Š~ùÛ"Ð@*Š~ùÛ"Ð@)ΗOß;@)ΗOß<@(b¶®~@(Œ~($ @(b¶®~@(Œ~($ @(b¶®~@(rGE8ð?ðO­W¬ÃÆ?Òç{íj?‘!!Ø×‹7?‹¨þ„/š?íOþtà?¸û:?ð„ƒ;0?’ ÃCÀ`ú?}Ò€º‡?3.Ylî?ÔÒ@úˆ‘?PS2K¯™?ð!̃?Œ¬Çëý ?‚q6tNø7?‚ãaÎúvh?†ˆ#.÷?†‰Oú|q?ð@@@@*@,?ð?ð?ð?ð?ð?ð¿=sÉ@¾øXùà?ÜiŸžn}>àÃ~'â`@©±RGš½Û@ `ÿ Ľ?%иg [>ïFý©VN?G##`L>Õ§ñ5ëÎ@Ÿs‹ÕÈUÇ@G@¯CMOß;d@¯CM‘hr°@¯CMOß;d@¯CNHè§@¯CMOß;d@¯CM‘hr°@¯CMOß;d@¯CMÒñ©û@¯CMOß;d@¯CK¬q ³@¯CMOß;d@¯CKP°ûÖ@œW£× +=q@œW£× +=q@œW£× +=q@œW¢¶®}V@œW£× +=q@œW¢e+Ó@œW£× +=q@œW¢‚@·€@œW£× +=q@œW¡ä÷eþ@œW£× +=q@œW¡ÿ.C@/„?åÉ@/ƒñA [À@,Üj~ùÛ"@,Ü64ê@,íOß;dZ@,íquŽ"@,á-w1Å@,àƒn—@,á-w1Å@,àÞÒˆÎq@,á-w1Å@,àëíå¦X?É_¦›ùôä?Òç{íj?‘,fŸCô6?‹½XQê>æ?ÿ £‰¸9?ºª€LI?ÐbMÝn½?’MœœN ?ŽËÜ¿€?K·‘d]?ß’ºèh!?Uÿwëâ„?€}æô+,b?Œ¯þuõí?‚|׿pZ?‚ù8 ±^?†žóB» “?†žóA,Þ}@@@@@*@(?ð?ð?ð?ð?ð?ð¿RhĦ¿Or{l?0‹!u¼ À? †eøj…@¯CLoÇê@œW¢+–T??Ù#á¤Tm?ðùõò= ?xÐ1o§=Ð?1~fløa@Ÿs +Mù…@H@¥ôØ“t¼j@¥ôØÔýóµ@¥ôØ“t¼j@¥ôÙŒ~(%@¥ôØ“t¼j@¥ôÙ‡+@¥ôØ“t¼j@¥ôÙJôðØ@¥ôØ“t¼j@¥ô×Ûô‡ý@¥ôØ“t¼j@¥ôØFÜ]@¤ÝõÂ\)@¤Ýö“v@¤ÝõÂ\)@¤Ýõöý!ÿ@¤ÝõÂ\)@¤Ýõöý!ÿ@¤ÝõÂ\)@¤Ýö4ê@¤ÝõÂ\)@¤Ýö4ê@¤ÝõÂ\)@¤Ýö4ê@0è†YJôñ@0è†YJôñ@)Üj~ùÛ"@)ÜPHð@(–E¡ÊÀƒ@(–+jçÕg@'ÑÑN;Í6@'Ñ·Xâ@'ÑÑN;Í6@'ÑÑN;Í6@'ÑÑN;Í6@'ÑÑN;Í6?É_\p)Ï?ï1ïºÅ?‘Ûü†Nã?‹¹GüÞõ?ëÎ@ A2?¼‚Ë¡K?ÐbV‡,?’5CàQ?~ËQ§?6) }’ë?Ñ¡b£?¾?R g!Ú¢?€bMÕky?Œ­·Ž~('?‚oÁÆÜ§÷?‚ãaÎúvh?†ˆ#.÷?†ˆ#.÷@@@@@,@,?ð?ð?ð?ð?ð?ð¿C–d¸>’¢=ˆ?.·´ú ³Î>¶–XÈ)ô@¥ôØ|sñ@¤Ýö-š?=‡Ü8w7>Å^Èò|èË?ud¶-Î1ª>„å +^SÀ@Ÿs–÷y¼@I@¦Á‰7KÇ@¦Ã× +=q@¦Á‰7KÇ@¦¿Ø­«Ÿ@¦Á‰7KÇ@¦Âh Ô•@¦Á‰7KÇ@¦Á–R½<@¦Á‰7KÇ@¦¿b¶®}@¦Á‰7KÇ@¦¿Ø­«Ÿ@¬µfffff@¬µi7Kƨ@¬µfffff@¬µg¯·é@¬µfffff@¬µiã½@¬µfffff@¬µg_oÒ @¬µfffff@¬µg_oÒ @¬µfffff@¬µf§ï³@6Û¹Œ~($@6ÛW>«6z@1=‘hr° @1÷?ƒíÈm½!¿?ƒE 8?†Ë¢L1Ù?‡2[síç@@@@@*@,?ð?ð?ð?ð?ð?ð¿M…;fœ¿A¦' ?(ïíë„Ãð?ùŠÖ Ag@¦Á_ÃÛ@¬µgÉt,¶?E»–lóZ?3GC}Õ?Œai‰ :?n„=K³ô@ŸjéÁ$J3@J@¨BÓt¼j@¨BÒn—P@¨BÓt¼j@¨BÖ8†YK@¨BÓt¼j@¨BÖÕϪÎ@¨BÓt¼j@¨B×Xâ@¨BÓt¼j@¨BÖð¹@¨BÓt¼j@¨BÖý!ÿ-@ òcS÷ÎÙ@ òc•%@ òcS÷ÎÙ@ òaÿ.Hé@ òcS÷ÎÙ@ òaG®{@ òcS÷ÎÙ@ òaÿ.Hé@ òcS÷ÎÙ@ òa|ÚP@ òcS÷ÎÙ@ òb Iº^@6+µsê´@6* ÞÒ@0×+ Iº@0Õ8ï4Ö¡@0Ct¼j~ú@0@‰ 'RT@/3üPH@/-‘hr°!@/3üPH@/-quŽ"@/3üPH@/-í(Œç?3ßa=„?û¤â]?”¦¢œŒÕ?’KŸÐÇ¡?‘ÇöÃÞ`?‘f]£àG?„F/·ÿP5?’HGªÂÛ^?‘twæ³?ø,~[´?‘„ÅMè?‘¿¤üî¾Ö?‚˜YªüÏE?ŒÛÏ·+?‚§W®ê ?‚ôhBì^?†¯Mž684?‡Ä­‹›Ü@@@@@,@,?ð?ð?ð?ð?ð?ð?OÞUªä¿:­Ã—¨?5&@d[«?2Eg™@¨BÕ˜½È@ òbeG¤Ú?Sÿ‚l¼XL?@X]Œ‰v~?¥QÆ–î?‚¤è&Hóô@ŸjÙÒ’ªa@K@¦Õ;dZ¬@¦Õ0£× +=@¦Õ;dZ¬@¦Õ8†YJõ@¦Õ;dZ¬@¦Õ;‹¬q @¦Õ;dZ¬@¦Õ;quŽ"@¦Õ;dZ¬@¦ÕA:’£@¦Õ;dZ¬@¦Õ<¾ß¤@­ùÚ¬1@­ùÚ¬1@­ùÚ¬1@­ùà[À7@­ùÚ¬1@­ùÛJ#9À@­ùÚ¬1@­ùß;dZ@­ùÚ¬1@­ùÛquŽ"@­ùÚ¬1@­ùÚÔ,<ž@7ÖšÔ,<Ÿ@7Ý‘hr°!@4|í‘hr@4¾ í(Œ@3.ùÛ"Ðæ@30–»˜Çâ@2èè§æ›@2ê0U2a|@2èè§æ›@2øð¹@2èè§æ›@2÷Xâf?™™™™™™š?‘+ùÔ!½Š?™À‘öô{?—IW`g’?¡“&t‹®q?¥ùÏ@Ì?“Æ×q„nï?••´þDê‘?’Qÿc +?šl Ĩ™ë?¢Œ~0d?£–Úd ªØ?‹’Ú[ßô?[™ÕÈ™8?ŒÊ­#г_?ùïJÓ?•°QŸ?]Í?‘ýÂHåÅÐ@@@@@,@*?ð?ð?ð?ð?ð?ð?j¼'T-?@äAP?PiÓ€7b?G×¾>¸F@¦Õ9¨H«À@­ùÜ Ñ"?kF7ÅnÛ?g$\/ rU?»”WúP?´¸­ùû¨y@Ÿi5˜(%ß@L@§@\(õÃÁ.„€@§@\(õÃ@§@ +=p£×@§@\(õÃ@§@ ÌÌÌÌ@§@\(õÃ@§@‚©“ @§@\(õÃ@§@O „L@§@\(õÃÁ.„€@«rk IºÁ.„€@«rk Iº@«ri*0U2@«rk Iº@«rt¯O …@«rk Iº@«rt¼@«rk Iº@«rn.±Ä2@«rk IºÁ.„€@8è†YJôñÁ.„>¤µÜÆ@4›¥ãSø@4䎊qÞ@3€å`A‰7@3~ÒˆÎp;@2ž«6z‘@2›íúCþ]@2ž«6z‘@25¨Xy>@2ž«6z‘Á.„NÜC,¥@8J¨?–ϱúQm‡?—U’¹DÆü?’KŸÐÇ¡?—ÒGþUÀ@8Ù@8J¨?žd»®~?ŸfújŒ‚$?–¼Š˜L¥ø?–{ôÖãWª@8û—@8p÷?˜êJìž.Ô?˜èò_?ŒOà†cÍ?޹Þwò,@8 Ø@@@@*?ð?ð?ð?ðøøøøøøøøøøøøM@  ¸Qì@  ûçl‹D@  ¸Qì@  !-w1@  ¸Qì@  @@  ¸Qì@  +”!-w@  ¸QìÁ.„€@  ¸QìÁ.„€@§På`A‰@§?ÜcRú@§På`A‰@§yXbN@§På`A‰@§4SŽóL@§På`A‰@§Åo@§På`A‰Á.„€@§På`A‰Á.„€@7ý:’£@7ùcÜF@4|í‘hr@4…Y³Ð|„@3gKƧïž@5S¶E¡ÊÁ@2QÞi­BÄ@1±Ä2ÊW¨@2QÞi­BÄÁ.„NÜC,¥@2QÞi­BÄÁ.„NÜC,¥?¿¹5,±?­PŒ“ð?·¯iÓ—€?Ó“Õ]ãõ–@8Iç@8Ù?…ðE[i)?°Ø1ÀÎ?É% ¹®U??Ó—F)okN@8S@8û—?ŸáRË}1Á?Édþ_ËÚ?ð:S¦¯3V?¶ÀÏÞ~Ð*@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøøN@¢Që…¸R@¢Qö‡+ @¢Që…¸R@¢Qöð¹@¢Që…¸R@¢QñA [À@¢Që…¸R@¢Qôã¼Ó[@¢Që…¸R@¢Q÷Xâe@¢Që…¸R@¢Qôã¼Ó[@§*WOß;@§*\j~ùÛ@§*WOß;@§*YõY³Ð@§*WOß;@§*["Ðå`@§*WOß;@§*T¢3œ@§*WOß;@§*^¸Që…@§*WOß;@§*_¼@8­¥œàv@8«Í5¨Xz@3k¥ãS÷Ï@3i“ àÞÒ@3$¼j~ùÛ@3!ò×s@2«xFÜ^@2¦fffff@2«xFÜ^@2©*0U2b@2«xFÜ^@2ª0U2a|?žˆ2}?éDEâ©Ö?•¬¡´¯ÿ'?ŽõÕJ?“&Á½¥?“°™²!¨w?óA[ØïF?’‡Iš÷?ŸfújŒ‚$?ø,~[´?“ðÐ ?•lÓªü<?‘7#Œ!xv?–Ê Dì¢S?lû˜¡R?ŒžVE’D?ŒÙ”!Çx‡?^^ω•@@@@@$@(?ð?ð?ð?ð?ð?ð¿*˜p™Ð?@ýØ\?2™1y6™?Zõ.5$®@¢QõìÆ7˜@§*ZüP +™?S­ŽF}è“?x93N­ko?ªÞºdù\?ëÌJ¼ „;@Ÿj x˜KŽ@O@ ÈdÝ/ Á.„€@ ÈdÝ/ @ È[Õ¼â@ ÈdÝ/ @ Èa´£û@ ÈdÝ/ @ ÈhÕÇ’Ë@ ÈdÝ/ @ ÈjÌÞ—˜@ ÈdÝ/ @ È]Dëø@•:p£× +=Á.„€@•:p£× +=@•:Ÿ +}"@•:p£× +=@•:T®îÂ@•:p£× +=@•:mÞŒö@•:p£× +=@•9ãù}*-@•:p£× +=@•:{^Æ@2‘|ÚQÁ.„>¤µÜÆ@,²-V@,_F»£d¾@*rn—Oß@*X¾¥ó;”@)æL/ƒ{K@)Þ@7È»@)æL/ƒ{K@)°ù¡u?¡@)æL/ƒ{K@)ÛòƒB4@8 +Näy?½Ã·&R?‘ÄÃ-¹š¸?Œ1Ë)¿ð?“\'8•Ý?’ *ëvL@82rê?—4‘êL?”^Äp@â?’o„ÓøÎ?’ÈŽµB[0?PRž,S¬@8L?‘la¹’é?‡>xLpïß?†ÄŒ³Av?†©J¯{?¯5»ù@,@,@0@3@8?ð?ð?ð?ð?ðøøøøøøøøøøøøP@¨\úáG®@¨\þ¸Që…@¨\úáG®@¨\ù‡+@¨\úáG®@¨\ÿ|í‘i@¨\úáG®@¨\ú^5?|@¨\úáG®@¨\ò•éá±@¨\úáG®@¨\õéá°‹@¯5å`A‰@¯5å`A‰@¯5å`A‰@¯5ÎÙ‡@¯5å`A‰@¯5XQë… @¯5å`A‰@¯5)º^5?@¯5å`A‰@¯5Që…@¯5å`A‰@¯5®}Vm@7Ñ|ÚQ@7Òu%F +¦@3J^5?|í@3G®záH@3’Ðå`A‰@3‡ +=p£×@1ÏO „M@1ÈÇâ‚@¸@1ÏO „M@1̾ߤ@@1ÏO „M@1Ì‹C•?|öOÿÝ?Æ¿5›7÷?‘WßÈDö@?Uÿyu”#?“”>C,4?‘®¬nÒMê?}Ñ¿ž,?—Œ,T®?’üüšë‚J?RLnj?’l{9ÙŽ?’vMëôUu?Š6EŸòÙ?Œ²ÅŒÕ6?•Îo´ÀÙ?ƒGϵ¨í'?Œx[‡:©?†ùadô|@@@@@@?ð?ð?ð?ð?ð?ð¿aøÃ(?dªt` +?@õ ð˜Ù?eoćD¢j@¨\ú71*¼@¯5¶=§v?`þÏ‘2‹›?…XËR]µ4?˳Ç<Ü@<*Ÿù¯@Ÿfr »Ä@Q@¬˜™‡+@¬˜ç–|®@¬˜™‡+@¬˜çâ°@¬˜™‡+@¬˜âÞ›@¬˜™‡+@¬˜‚ÃÉîÍ@¬˜™‡+@¬˜Ž¸"3@¬˜™‡+@¬˜ŽµÇD@˜Á™™™™š@˜ÁÙëø5@˜Á™™™™š@˜Áÿ0(/@˜Á™™™™š@˜Á 7fÖ@˜Á™™™™š@˜ÁT¦¨Í @˜Á™™™™š@˜ÁhNsß@˜Á™™™™š@˜Á}ˆ`<@9cg ù l@9f•ª'Ì@6}‘hr° @6jŽ2Ò6}@5K"Ðå`B@5GÍöõÚ@40–»˜Çã@4+ZÅJí¬@40–»˜Çã@4.vvÝ)þ@40–»˜Çã@4)²»å2×?a÷nñ?·(¨Ãõ?µÂJFvYß?–ä^£ëW?•)Žb•3?–È¥æ#@?‡ôCbyV?µeV¬Ÿ¦2?¸t%I?š›õûîòÿ?—”ÿwúoÄ?—³ pA™Ÿ?±Ç÷*¶?®ÔÀ³»¤?ž_xÒ®8?’eºÄX?—³½I?’^bì’+Ø@@*@,@,@5@7?ð?ð?ð?ð?ð?ð?dš÷ŽÔ¿ˆÖÅʤ?H9ï¦ò²ñ?r†­ô¢@¬˜‡2z¯b@˜Áœíš5 ?i +—9•€?“KYjP?Ò¿'ÉUê@ OE}r@ŸgDHÿÌ]@R@¡+^¸Që…@¡+^¸øó@¡+^¸Që…@¡+YÇ.¬ð@¡+^¸Që…@¡+^fŒíz@¡+^¸Që…@¡+bu%F @¡+^¸Që…@¡+S¤œu¥@¡+^¸Që…@¡+YH,í@­’½p£× +@­’½Ú#Õ@­’½p£× +@­’¾×„@­’½p£× +@­’²4¢Ý@­’½p£× +@­’±e>²@­’½p£× +@­’º…Ǥˆ@­’½p£× +@­’¹ÄtÊÃ@6½:’£@6» Ⱥ¢p@3‚° Ä›¦@3‹wd­ƒ@3²-V@3‘žÿÕ‹@2ºÔ,<ží@2ÃÕh׿@2ºÔ,<ží@2»góNÈ@2ºÔ,<ží@2¹ˆùò?|¬Æ Væ?nžùR¨?“·r6xµ?’ætðf*?‘Anz;©?“o^¤ì?e™”XWø?’_]ý¶?š5”ÜEy¬?’‚!A¹a*?‘]Qlùþñ?‘|Àƒp7%?†`­² v?ŽSÔ– Ò? Ý³K“Ø®?†t{ùÒi?ŠèÇê)`Ê?ŠWrè±û@@ @(@*@1@2?ð?ð?ð?ð?ð?ð¿Wè4¿SÓ¥p?RômвfÒ?Se’§Ë@¡+[ãñöv@­’º˜úµc?s?Nkß¹?s½vWhª?ðÐâÖ‚‘5?ñÃt)9”5@Ÿf¬½üŠ @S@£ÅÀ@£ÅÇ Cî@£ÅÀ@£Ã㯷é@£ÅÀ@£Âèr° Å@£ÅÀ@£Äº…‡“Þ@£ÅÀ@£ÅÝp£× +@£ÅÀ@£ÅÔýó¶F@œÆRñ©ûç@œÆ–H‹÷@œÆRñ©ûç@œÄ’£S&@œÆRñ©ûç@œÌV‡+ @œÆRñ©ûç@œÇBÞѸ@œÆRñ©ûç@œÆ5?|í‘@œÆRñ©ûç@œÅ +Àƒo@6¿–»˜È@6©Ãá6Þ@2Œí‘hr°@1hŒç¯¸@1Àå`A‰7@0¥m\ú¬Ú@1Œ~($ @0œàuöþ@1Œ~($ @0ç_oÒó@1Œ~($ @0ÇsüPH?™I'%ö«?Þ'gj¯Fs?À÷½„#µ?ºìl±,IÔ?Ÿ´°îéõl?—‡XE%:?‘ɱb)Q?çÁ£ÝÊ?Î ØÒë>?§Ê»1ð ]?§ò0û˜/f?lINõÕ„?¤ûŒÆ>³?¶'{%ñMÍ?²HFÜOu?ªHŠW ?†l&þ?²˜bè#õÜ@@@@@@?ð?ð?ð?ð?ð?ð?n Ž&¿£ÞŠ€€?‰+²¨eg?ŽÉ*‘|@£ÅÌ'ùÒ@œÅÕ€Ú?«(SI˜ˆ?±›Î.×â²@:‘”9ÁäB@S-š¾ê4D@Ÿl#߉Ž@T@ªþvÈ´9@ª@ªþvÈ´9Á.„€@ªþvÈ´9Á.„€@ªþvÈ´9Á.„€@ªþvÈ´9Á.„€@ªþvÈ´9Á.„€@ªÁ„›¥ãT@ªÁ†§ï²@ªÁ„›¥ãTÁ.„€@ªÁ„›¥ãTÁ.„€@ªÁ„›¥ãTÁ.„€@ªÁ„›¥ãTÁ.„€@ªÁ„›¥ãTÁ.„€@7«µsê´@7­—ö+jè@4¡hr° ÄÁ.„M‰ûçm@4q‰7KƨÁ.„QnÙ‡@4Eœàu÷Á.„NÜC,¥@4Eœàu÷Á.„NÜC,¥@4Eœàu÷Á.„NÜC,¥?€‚ñêã @8#˜@8¾:@8 >+@8Iç@8Ù?‚á²Olºü@8Î÷@8i§@8Å@8S@8û—?°xÈŸˆ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøU@£9V“uÁ.„€@£9V“u@£9W•÷»@£9V“u@£9T¥ù@£9V“u@£9W] °H@£9V“u@£9_eÓQ²@£9V“u@£9\磔@”ŸÎÙ‡+Á.„€@”ŸÎÙ‡+@”ŸÈë­s*@”ŸÎÙ‡+@”Ÿ×7+=|@”ŸÎÙ‡+@”ŸÅ ÁûS@”ŸÎÙ‡+@”ŸÒz7Pb@”ŸÎÙ‡+@”ŸÈé»…@2ò䎊Á.„>¤µÜÆ@/Û"Ðå`@/UŒ«P@-Ýó¶E¡Ë@-Ùê Èà@.žš@.+)Ò@.žš@.%Åç F@.žš@."O‡Ûä@8 +Näy?ÄNçÍ"?‘bT]u?Œ6¤ÛŠ/‚?’ütAýƒ2?’ÏÇÙ×@82rê?’OÃÛ¡?ÁŸxð?[› —çë?’Hrß`?‘Eг¿ô@8L?,Cì»Q?…ÏŸ´£ö?„¹êˆr‡ ?‹/f¦§D?$+½ïˆ@@$@"@:@6?ð?ð?ð?ð?ðøøøøøøøøøøøøV@ ,A‰7KÇ@ ,BÐå`B@ ,A‰7KÇ@ ,%®æ1ù@ ,A‰7KÇ@ ,:ÓFÿ@ ,A‰7KÇ@ ,&§è@ ,A‰7KÇ@ ,1”šÑÎ@ ,A‰7KÇ@ ,57ÓNL@¯"¬1@¯"”Ø×@¯"¬1@¯" íRi¾@¯"¬1@¯" Tù;r@¯"¬1@¯"uUÂ@¯"¬1@¯"Ñ{¿@¯"¬1@¯"âÚx@5‘|ÚQ@5‘Ö@2Ô›¥ãSø@2ê›A›4@2t“t¼j@2wÿêÉØ)@1èè§æ›@2gÌ…ô@1èè§æ›@1älŽ-Ò@1èè§æ›@2_Õ‰¤æ?ùª¨?¼‚Ë¡K?ÐbV‡,?’ ,øÕC©?œõLÁE?@§[*^?ÝIMÎ?X78›š?€cPßQª?Œ°¶.Ä+Æ?‚† SFò?‚ð'ã:ÂÝ?†l&þ?†ŠúЀ>(@@@@@,@,?ð?ð?ð?ð?ð?ð¿G÷XR8?ž¸?©Pÿ –?Žy9û•@¦„úBôz@¨ûMÔÖFÅ?+“•.*M5? ƒ$D'æ?RœÙ‚â@?8lX[.@Ÿsà†µË@Z@ û +=p¤Á.„€@ û +=p¤Á.„€@ û +=p¤Á.„€@ û +=p¤Á.„€@ û +=p¤Á.„€@ û +=p¤Á.„€@šgl‹C–Á.„€@šgl‹C–Á.„€@šgl‹C–Á.„€@šgl‹C–Á.„€@šgl‹C–Á.„€@šgl‹C–Á.„€@8L]cˆe”Á.„>¤µÜÆ@3\Iº^5?Á.„M‰ûçm@3H“t¼jÁ.„QnÙ‡@2 ¿±[W?Á.„NÜC,¥@2 ¿±[W?Á.„NÜC,¥@2 ¿±[W?Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø[@«óËÆ§ïž@«óÌ‹C•@«óËÆ§ïž@«óÎ}Vlô@«óËÆ§ïž@«óÊÚ¹õ[@«óËÆ§ïž@«óÇRT`ª@«óËÆ§ïž@«óÊ0U2a@«óËÆ§ïž@«ó̲•éâ@©0¥`A‰7@©0£•&@©0¥`A‰7@©0¦éxÔþ@©0¥`A‰7@©0¢‚@·€@©0¥`A‰7@©0¨K]Ìd@©0¥`A‰7@©0«íúCÿ@©0¥`A‰7@©0¦éxÔþ@6Ù*0U2b@6ÑÄ2ÊW¨@3û Iº^@4[À6â@3~ùÛ"Ñ@3‘ÑN;Í@2Þ«6z‘@2ä2ÊW§‡@2Þ«6z‘@2áN;Í5¨@2Þ«6z‘@2áA [À?|öOÿÝ?ZÁ».œ?‘„ë2‘~?•ýS0H†?•"§šmè?“‡SË{d—?óA[ØïF?’ ·6Öc¤?”_й@’?•Xî¨}iQ?› °Ö7?•lÓªü<?¦W¾ »ZÕ?”£®e›Ðg?Œznyž-i?Œw%è®?‹DVóö?ŒÙ”!Çx‡@@@@@,@(?ð?ð?ð?ð?ð?ð¿7âÐ# ?QM[ˆ?Ar[yq£?F³ÍLЃ!@«óËlAÜ@©0¦Ñú›Ë?c—åhúßù?fgǘn?ȧÞäK »?Â{Q'˜@Ÿi@xWC@\@¯h¦éxÔþ@¯hŽÙ‡+@¯h¦éxÔþÁ.„€@¯h¦éxÔþÁ.„€@¯h¦éxÔþÁ.„€@¯h¦éxÔþ@¯h}æšÔ,@¯h¦éxÔþÁ.„€@¡~ò° Äœ@¡~Þ¸Që…@¡~ò° ÄœÁ.„€@¡~ò° ÄœÁ.„€@¡~ò° ÄœÁ.„€@¡~ò° Äœ@¡N!–R½@¡~ò° ÄœÁ.„€@8£g ù l@8™e+ÓÃa@5T›¥ãSøÁ.„M‰ûçm@4ÝV”Á.„QnÙ‡@4hè§æ›Á.„NÜC,¥@4hè§æ›@4~ÿ—$t@4hè§æ›Á.„NÜC,¥? Å{¿Ž<º@8#˜@8¾:@8 >+?¦NMwE«@8Ù?•²»UbB2@8Î÷@8i§@8Å?¤ˆÒ¿@8û—?»±\[Pí@8 * @8p÷@8¶?®SrY@³5@8 Ø@@$?ð?ðøøøøøøøøøøøø]@¢f¹XbNÁ.„€@¢f¹XbN@¢fµÂ\)@¢f¹XbN@¢fµ?|í‘@¢f¹XbN@¢fܬ1'@¢f¹XbN@¢fÇ»/ìW@¢f¹XbN@¢f½ó¶E¢@¥³fffffÁ.„€@¥³fffff@¥³p|„µÝ@¥³fffff@¥³oAò×@¥³fffff@¥³_;dZ@¥³fffff@¥³„ŽŠqÞ@¥³fffff@¥³vz˜@9›¹Œ~($Á.„>¤µÜÆ@4Å?|í‘h@4Ñ:’£S@3Ë"Ðå`B@3ÖOv_Ù@3QÞi­BÄ@3q:’£S@3QÞi­BÄ@3oHË’:@3QÞi­BÄ@3k…¸Qì@8J¨?žþÿí©‚7?›mqò +×?º•÷ ?©h?Ñ$|?§ÙYlãp@8J¨?“—-´œc?Føë?wàËxR?¯s´~º‘‹?ª…›´î@8p÷?£} Â±ù? zkê 3U?¨¡ûðf?±ˆ€Ða?­Ÿ6÷0lP@@@@,@,?ð?ð?ð?ð?ðøøøøøøøøøøøø^@¨À©xÔýô@¨À£× +=q@¨À©xÔýô@¨À®—Oß@¨À©xÔýô@¨À¬‹C•@¨À©xÔýô@¨À©xÔýô@¨À©xÔýô@¨Àª~ùÛ#@¨À©xÔýô@¨Àª¦L/„@¯^¼j~ùÛ@¯^½ó¶E¢@¯^¼j~ùÛ@¯^»çl‹D@¯^¼j~ùÛ@¯^¾ùÛ"Ñ@¯^¼j~ùÛ@¯^¹Û"Ðå@¯^¼j~ùÛ@¯^¼í‘hs@¯^¼j~ùÛ@¯^½p£× @8쿱[X@8 Î_oÒ@3Ù‡+@3 IQ‚©@21‰7Kƨ@20ÞÒˆÎp@1½cˆe”°@1½¿HË’@1½cˆe”°@1¼q ²•ê@1½cˆe”°@1¼cñA \?Œs¤DÅÐ?ð}óßd?ð’FB:?ð_ŒB?‘oNÅ’+?’»«ÒñŒ?¦Ï±úQm‡?ð¢dx/?ð‡äR³s?ð‚àÓÁ?‘Uç·Býi?“‘k–šj?º f +¦?ðfÁbÂô?ð*wjs—?ð,’Ú|‚?‰/ã̽`ª?†Ü‘ °Ô@?ð?ð?ð@@?ð?ð?ð?ð?ð?ð?XZÍQ¿«¦€?$Þ³U^?&íxå‘9£@¨À©­x @¯^½BY0µ?Hþ&mÍ%µ?>ØeO…?†ÅÓId^¡?d(‡õ7@Ÿq(V +@_@«#öÈ´9X@«$Ò‹µr@«#öÈ´9X@«$]Õàì@«#öÈ´9X@«#øSò/I@«#öÈ´9X@«#úàÀ|@«#öÈ´9X@«#øL4¥;@«#öÈ´9X@«#ùˆ$êæ@™:e`A‰7@™:VC»™@™:e`A‰7@™:5_aT-@™:e`A‰7@™:JAªh @™:e`A‰7@™:F˜¦÷·@™:e`A‰7@™:29&oè@™:e`A‰7@™:9SÌ€~@87â‚@·€@8=ŠŸMÀ@3^Ù‡+@3M ŠJ”Ë@2)Û"Ðå`@2¨ç+?ô@1°–»˜Çã@1 A<2[@1°–»˜Çã@1 OSÑ Ö@1°–»˜Çã@1 ùËcKo?”e¡Æ<ìæ?—_ŠFw˜?“¯L¤™`¹?“yÏt¦>n?”‡'AUŠœ?œ«ãÜLl?™û-™,Èß? QNÞ0P?•Ht¨ë!?—›p µ?Ÿ–uœ‡?œÅ%7*V;? qD»Ó?Ž=¶ÁD]ø?†çAÇ«¢î?„V…¸Xl?Š +&¹}Ø?гjd«@@*@(@,@;@:?ð?ð?ð?ð?ð?ð¿kß{½¿køm€?L­ÇÏÕ/d?M¡‘Ðà×@«#ý;qP@™:Cº²®?hüê‰øR?j{¾Û…?Åešh'ª?¾í÷l`P÷@Ÿk_íŠ@`@©ïOß;@©ï?|í‘@©ïOß;@©ï!–R½;@©ïOß;@©ïp:û@©ïOß;@©ïÅm\ú@©ïOß;@©ï"ø7´¢@©ïOß;@©ï"\(õ@­Å:áG®@­Å8Që…@­Å:áG®@­Å6ð¹@­Å:áG®@­ÅBÃÉîÌ@­Å:áG®@­ÅJ Þ@­Å:áG®@­Å@ëíúD@­Å:áG®@­ÅH´9X@7ÞHè§æ@7Ò‚@·€4@4™º^5?}@4µöý!ÿ.@3ìj~ùÛ#@3ùXbMÓ@3«6z‘@3#¶E¡ÊÁ@3«6z‘@3!ÿ.Hè§@3«6z‘@3Ÿ¾vÈ´?¦NIÉ®š?µÜSÍ?œœê´°EÚ?§×…Õ ô? I×J j?”ªEñeX?ˆÿÀ)T¿Æ?©URZÁ?¥¾ _S?›Ñ¯•ú%¾?œ­3Ââ&†?•J佪™^?„+£QKø?¬Ö4•?­~¶Ùµx?’èïÅ42ô?–¿nè$„?™¼òQh@@@@@@,@$?ð?ð?ð?ð?ð?ð?e ɱj?jãS ?Cµå2?RuÏíﲬ@©ïÌÖJh@­ÅCQ%Dr?`¿øù°‹H?vüìvš_?ŸÂ–ïi-¦?ßãÊ„ @œì‹C•@œï‡y(@œì‹C•@œóÒ‚™»@œì‹C•@œí@å%%@œì‹C•@œ,/âî@6>«6z@6¥@@2ahr° Ä@2\5…ñfü@1t“t¼j@1pžiJð@1Š0U2a|@1ƒk)yA@1Š0U2a|@1…éUñ]@1Š0U2a|@1‚®š9ì?€”ëû·«?Ƹ^ Ûþ?‘ZÓKèbn?ŽÎì(y?ô¨lNR?’Êö 9¸N?¨Sp*?’ \¬Ý +’?‹Úð<î?‘ ÿØR7?í¢8yÆò?…ÿ’0„?ŽIÊäïàÿ?‚Uz]~?‚µ¾™¶ßA?ƒûÚ8±~?ˆ^¼n]?Œ[]ÂJrñ@@"@ @ @0@.?ð?ð?ð?ð?ð?ð¿`ç‡Ð0?ký>NÚ?G!:¥+@?g!óÜrŸ@©ŽÅ11@œþ*Ýý?g=È”º9?‡Äyw‹ì?×§/lÀ@:\¶š…@ŸgÇþ=0@c@«ô¼j~ú@«@«ô¼j~ú@«ïI³Ÿž@«ô¼j~ú@«íG¨~$@«ô¼j~ú@«ñzs›É@«ô¼j~ú@«õJS Ç@«ô¼j~ú@«ò?š ;@šÂäZ¬@šÂÜ(õÂ@šÂäZ¬@šÂn¼JЧ@šÂäZ¬@šÂ“\½_´@šÂäZ¬@šÂ~Z–@šÂäZ¬@šÂìˆçaŽ@šÂäZ¬@šÂ÷þ‚@8¯O „M@8B )¿@3\Iº^5?@3m®«ïc@2ìj~ùÛ#@3‡þz=6@2J0U2a|@2`5Æd§@2J0U2a|@2FuÊJ|ö@2J0U2a|@2C}öÐBà?~ì“?ÕÒJ?‘L™p‹1?“{•6kº? ³Ø¡Äí?‘»Y‰^ßz?“²lz)m? ®iØ©÷•?œR˜Ãš/q?’¾=E?šƒ%Ī?“7ŒgßBU?•¨ÀV8¼?”Ü"+y Å?‘·Të\y?Š©6'F‰?’`É€öM­?‹;nøänL?6éÒ€@@,@$@"@0@1?ð?ð?ð?ð?ð?ð¿iÝ]¡Ì?z`2?/?NÞxD^?ƒSq“ù\@«õç°5~@šÂÑ8²}ò?rÞî\õµ?žTоmÈ[?äéR5¾UZ@(Y{d`§>@Ÿm–xjÞR@d@¢!—Oß;@¢!£n—Ž@¢!—Oß;Á.„€@¢!—Oß;Á.„€@¢!—Oß;Á.„€@¢!—Oß;Á.„€@¢!—Oß;Á.„€@œèr° Å@œØbMÓ@œèr° ÅÁ.„€@œèr° ÅÁ.„€@œèr° ÅÁ.„€@œèr° ÅÁ.„€@œèr° ÅÁ.„€@8„¯O „M@8ß;dZ@5 Iº^5Á.„M‰ûçm@4±‰7KƨÁ.„QnÙ‡@4xDЩ*Á.„NÜC,¥@4xDЩ*Á.„NÜC,¥@4xDЩ*Á.„NÜC,¥?æ ç«Z–@8#˜@8¾:@8 >+@8Iç@8Ù?æ ç«Z–@8Î÷@8i§@8Å@8S@8û—?æ¡‚á¾A@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøe@©»dZ¬@©|í‘hs@©»dZ¬@©½¥œà@©»dZ¬@©¾5?|í@©»dZ¬@©½ó¶E¢@©»dZ¬@©ºÔ,<ž@©»dZ¬@©¹Û"Ðä@ {„›¥ãT@ {e`A‰7@ {„›¥ãT@ {ƒˆe”¯@ {„›¥ãT@ {„Z¬@ {„›¥ãT@ {‰7KÇ@ {„›¥ãT@ {×Ûôˆ@ {„›¥ãT@ {@N¥@6Ù*0U2b@6·_oÒó@1c÷ÎÙ‡@1b Iº^5@0—ï²-@0–fffff@/Š#9Àëî@/‡l‹C•‚@/Š#9Àëî@/‡Ë)^Ÿ@/Š#9Àëî@/‡_oÒó?ð°–Ž]?Æ4ÓLè?‘šÕU#?Œ:Z2‚b?‘oNÅ’+?×°ë*–w?ð°–Ž]?’{cü€øõ?ŠA)Nîá?RLnj?‘q1ýAt?ŒÙ¶êm¥?ð*wjs—?u/®Xã?‚‘´…=Cb?ƒ ?ÿ½?‡2[síç?†Ü‘ °Ô?ð@@@@&@?ð?ð?ð?ð?ð?ð¿]Ê>li¿%ðgÖœ?AÑjõĦ?2)ðÞ¿k—@©»¯ïÜ„@ {z\ÍL?PTNSðL?Aþp¹L?™.Œµmï?xâÄôrÑ@Ÿsˆª¶S@f@ “t¼@ n—@ “t¼@ ð ‚ @ “t¼@ `Kû:ñ@ “t¼@ ë_¶ªÉ@ “t¼@ ØZòöª@ “t¼@ Üþ¸þ@¦s(r° Å@¦s(á˜Vö@¦s(r° Å@¦s,º¨ÝÙ@¦s(r° Å@¦s9Øô{ô@¦s(r° Å@¦s,Ü]x!@¦s(r° Å@¦s#Æ7Î(@¦s(r° Å@¦s0R°­@6#g ù l@6"†?·À$@2}‘hr° @2€1h®@@1ÐA‰7KÇ@1©·%¨©7@1YŒ~($ @1OÆ•DS0@1YŒ~($ @1KdÅÕÖ@1YŒ~($ @18i áýÄ?~ì“?ÕÒJ?’s3O¥»?–‡¥Øñ8â?™:©»0æb?¥¹X"@L?¢ZýúIßP?}x—™?Ž*JŠË?…I‘ÒÁ/À?ƒ¼9XNÄu?ŒÙ”!Çx‡?²Ù->tÜÙ@@@@@*@*?ð?ð?ð?ð?ð?ð?eØÙÎ?\ùIJÀ?OÍ&$Y}?kÝfZîã@¤qÛ‘Œ>@©ö8tE6º?gAùkŽU?ƒœÐÂ1§”?É«[¼æ¼?û¸¡õiq@ŸaØ¿\K@h@­üŽV“Á.„€@­üŽV“@­ü®jÜó±@­üŽV“@­üBO:õ@­üŽV“@­ü¼r¢jX@­üŽV“@­ý=^v}~@­üŽV“@­ý €Å"è@š›^5?|îÁ.„€@š›^5?|î@š›ˆ–…Ž@š›^5?|î@šœ|WßF@š›^5?|î@š›`Ðå„­@š›^5?|î@ššÌ‘YA@š›^5?|î@šš¹X@ÔÔ@6 xFÜÁ.„>¤µÜÆ@48r° Äœ@3½wkÎM@4“t¼@3Íc'˜ó:@3J0U2a|@3j˹‰v@3J0U2a|@3'%î=‘@3J0U2a|@3-oÅO¨\@8J¨?¾ùÝŒ[¨?™Ñlqš³a?“÷¡ {îþ?´€ø2»ï?¶u­$í¸a@8J¨?ÂTãÉ«ÀŸ?™/6½Z¦×?¨³±t{ Ê?¼Ï²Uà?¹(®Àú š@8p÷?©´1öÔ?² FºÆã?‰¾ÂÀеa?£>hØè¤i?­…SÍóø@*@$@(@4@3?ð?ð?ð?ð?ðøøøøøøøøøøøøi@©|ò-V@©|ëÆ§ïŸ@©|ò-V@©{…¸Qì@©|ò-V@©{Œ¿±[X@©|ò-V@©{„M:’@©|ò-V@©{p¸»@©|ò-V@©{q4êL@£;dZ@£&éxÕ@£;dZ@£„·ö+jè@£;dZ@£„°Ë)^ž@£;dZ@£„¸Ôýó¶@£;dZ@£„ÈË’:@£;dZ@£„Àuöý"@5šÔ,<Ÿ@4÷$tSŽô@2¸r° Äœ@.S×Ûô‡@2 "Ðå`B@-(Îp:û@1Ê0U2a|@,OiDg8@1Ê0U2a|@,L‹C•@1Ê0U2a|@,N.±Ä2Ë?Ž=fA:?”C#ç…%?¤ìÔÓìö?žÑá•®ö0?˜íËj#?›b;ƒ°¾x?гá‡}?U +£?00?œÕ4FégI?¤u1ñ ?œ××€§©?ŸèØŸ#ߦ?µeão‘ñ?”܉a^±‚?Žd°3š>?'dÂã—…?޹Þwò,?޹Þwò,@@@@@*@*?ð?ð?ð?ð?ð?ð¿¶\„¤¤P?Ì>ÏZx´?‘ÇÈHi”f?¤=©î¬Lý@©|Y˜—H@£ƒÙ#[ô?²<•ÂqÉ?ŃXü+{`@UjèK\æ@y ïÎÌÚì@ŸgÖú×Þš@j@ £Á$Ý/Á.„€@ £Á$Ý/Á.„€@ £Á$Ý/Á.„€@ £Á$Ý/Á.„€@ £Á$Ý/Á.„€@ £Á$Ý/Á.„€@˜³$Ý/Á.„€@˜³$Ý/Á.„€@˜³$Ý/Á.„€@˜³$Ý/Á.„€@˜³$Ý/Á.„€@˜³$Ý/Á.„€@7°4mÅÖ8Á.„>¤µÜÆ@5B° Ä›¦Á.„M‰ûçm@5 ²-VÁ.„QnÙ‡@4Ç ù kºÁ.„NÜC,¥@4Ç ù kºÁ.„NÜC,¥@4Ç ù kºÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøk@ª(<í‘hs@ª(?¾vÈ´@ª(<í‘hsÁ.„€@ª(<í‘hsÁ.„€@ª(<í‘hsÁ.„€@ª(<í‘hs@ª(=ó¶E¢@ª(<í‘hs@ª(;"Ðå_@¯–ô9Xb@¯–üí‘hr@¯–ô9XbÁ.„€@¯–ô9XbÁ.„€@¯–ô9XbÁ.„€@¯–ô9Xb@¯–øQë…@¯–ô9Xb@¯–þvÈ´9@8cg ù l@8]w1Å@2Ìí‘hr°Á.„M‰ûçm@1È“t¼jÁ.„QnÙ‡@0ÜÚQÎÁ.„NÜC,¥@0ÜÚQÎ@0âMÒñ©ü@0ÜÚQÎ@0Ú¦L/ƒ|?1·†Æjñ@8#˜@8¾:@8 >+?ðŽºJ+½?“ d?3ßa=„@8Î÷@8i§@8Å?ðÅìq?”e!¶?©ÂnË“"Ý@8 * @8p÷@8¶?ð?oÚ•¼?‡Ä­‹›Ü@?ð@?ð?ð?ðøøøøøøøøøøøøl@¬t$Ý@¬tbMÒò@¬t$Ý@¬t ²•é@¬t$Ý@¬t£S&@¬t$Ý@¬t÷ÎÙ@¬t$Ý@¬t¼@¬t$Ý@¬t@N¤©@žÕ“t¼j@žÕ¯Ÿ¾w@žÕ“t¼j@žÕ‘4êK@žÕ“t¼j@žÕv_Ø®@žÕ“t¼j@žÕ‹¬q ´@žÕ“t¼j@žÕ”¼@žÕ“t¼j@žÕ‹’:)Ç@8«µsê´@8—†Â&€ž@3R Iº^5@3P°ò{²ÿ@2Ÿ²-V@2 Ñ·Xâ@2Œ~($ @2xl"h +@2Œ~($ @2Ížƒä&@2Œ~($ @2À6âë?¬å'[ V÷?‘­b š=?’÷˜–Èä?{¾“úy6?“>û{Ñø~?’ Ù–¥£?³‰ÑpEIt?“øGKTæH?–Ðf·ËŒ‚?’"Š6›Wz?’…4Ü.?’¨¢†¼ ¼?¹$€²§‡s?œ‘z¥æ?Š:t†?†O.ce?‡YÍ_?‰w¿˜Í¶ª@@@@@*@*?ð?ð?ð?ð?ð?ð?úiH ¿KŒårê?:}Îþëà?^–ÊIg/ì@¬t¯0Ïê@žÕ†=Ñà?M²jÑé?pG~e¸T-?’ŸzK«f?ÒKȤµÜÆ@3—+ Iº@3Žp:û~‘@3q‰7Kƨ@3rÐå`AŠ@3¦YJôðØ@3¥fÏAò@3¦YJôðØ@3¥ '»0@3¦YJôðØ@3«¬q ²–@8J¨?›úV˜[u9?™rPt3?š+‚¦Ðfñ?šxœÏs´i?“”üU§<­@8J¨? (úSú±5?™ ?G·W?˜8wxšq?ž³ÑŽúƒ?” ™¾,@8p÷?àìÚJ>?‡z"2Úù)?—Äd<³Î? tÆùlŠ?šÁc€RÏ@@@@(@"?ð?ð?ð?ð?ðøøøøøøøøøøøøn@¦7Rn—P@¦7<í‘ht@¦7Rn—P@¦7XÔýó·@¦7Rn—P@¦7R{²þÅ@¦7Rn—P@¦7På`A‰@¦7Rn—P@¦7S©*0U@¦7Rn—P@¦7QÑN;Î@¢TÂ\(ö@¢T¹™™™š@¢TÂ\(ö@¢TÁä÷eþ@¢TÂ\(ö@¢TÀ·€4n@¢TÂ\(ö@¢TÅo@¢TÂ\(ö@¢TÀ4mÅÖ@¢TÂ\(ö@¢T¿ò䎊@8ð4mÅÖ8@8èð¹@3‚° Ä›¦@3~Ov_Ø®@2ß²-V@2Ü64ê@2&YJôðØ@2¥zxl"@2&YJôðØ@2!×Ûô‡ý@2&YJôðØ@2#ŽóMj?Àët#®ªV?—޼½:?–¦r…û?,¡r×gÁ?“´<×?“7ƒÆD +¹?žˆ2}?’ñ©ûçlŒ?ŸÖÒä-2¢?–= £6Ï?“â¹Í[Óh?’µ~Yºì?´çnñŸ?pù51íÒ?¥‡´{?†Á{0Ÿà®?’3¨£„È?$Ìj½BÙ@@@@@*@*?ð?ð?ð?ð?ð?ð?OükëÔ?Zì;Åò?S°›)m©W?J„1¿æ¤@¦7QÆ(c°@¢TÀ\è†?cn/*ÁRÒ?s ¡4¡¢l?»·ð¦Ðfœ?Û;nã¡+@Ÿr+#ÃM@o@¨Ý/Ÿ¾@¨Ýp£× +@¨Ý/Ÿ¾@¨ÞBZîb@¨Ý/Ÿ¾@¨Þ¸Që…@¨Ý/Ÿ¾@¨Þi­BÄ@¨Ý/Ÿ¾@¨Ûô‡ü¹@¨Ý/Ÿ¾@¨ÜÚQ@§îOß;d@§îOß;d@§îOß;d@§îžƒä&@§îOß;d@§îOß;d@§îOß;d@§î¸ºÇ@§îOß;d@§îÅÖ8†@§îOß;d@§îžƒä&@0òÃÉîËû@0òÃÉîËû@)”¼j~ùÛ@)”¼j~ùÜ@'ªÀƒn˜@'ªÀƒn˜@&QÑN;Í6@&QÞi­BÄ@&QÑN;Í6@&QÑN;Í6@&QÑN;Í6@&QÞi­BÄ?É^³Dw'?Òç{íj?‘Ûü†Nã?‹ª½¨ª8v?éDEâ©×?·t¤¢‚J?ÐbMçê_x?’¼  g¶?|™,Ž!?/3ÉÚgC?ÏtP°*?M\³Ù“@?€b¡´ñ@?Œ­·Ž~('?‚s@ˆaÛ?‚â‡~ûÉ\?†ˆ#.÷?†ˆ#.÷@@@@@,@*?ð?ð?ð?ð?ð?ð¿QtVÂ?¿‘Q ?9<ðh—xœ?éêrú½ê@¨Üÿ!7v@§î´õ@~?HD‚—ûq˜?Ê~î¼å?Œùg?µ)?!7†ÀÆ@Ÿs.¶-@p@­Œî—Oß@­ŒòtÑÄ`@­Œî—Oß@­ŒðoiDg@­Œî—Oß@­Œò° Äœ@­Œî—Oß@­Œí5¨Xy@­Œî—Oß@­Œê™0¾@­Œî—Oß@­ŒîÙ‡+@œµ&éxÔþ@œµ4¼j~ú@œµ&éxÔþ@œµ!-w1@œµ&éxÔþ@œµ¤?åÊ@œµ&éxÔþ@œµ+ Iº@œµ&éxÔþ@œµ*dÂø8@œµ&éxÔþ@œµ$ŽŠqß@7ëµsê´@7â0ü®Ò@3‚° Ä›¦@3…¼£n.@2²-V@2ùrGE9@2Œ~($ @2¥ãS÷Ï@2Œ~($ @2jçÕfÐ@2Œ~($ @2C•%?Ĺó¥p?’Mj…•Ì‘?•œ‘æ¦M?Hžyq?‘¯GàBm?’Æ÷Xê†?§r.†¹‹X?––ïFHÇN?’TÖ©E?’"Š6›Wz?’£ôùÎ8ï?“X<‡÷Ú?ƒ­f‡²Y$?[™ÕÈ™8?–Ϥ?…üðÿË÷?ˆëÅoë?‡ø¢:›¸1@@@@@(@*?ð?ð?ð?ð?ð?ð¿R{8f>¿Wn³äè?I +Br^À?:ª©\y«@­ŒíÄcWl@œµ*i.Ø\?gwÌKWí?PÅct/j?ËÆK³À?’Ï#–ľz@ŸoYÃzP@q@¯î—Oß@¯ãn—@¯î—Oß@¯ñ ޤ0@¯î—Oß@¯þ-Áe@¯î—Oß@¯Ê¤èu@¯î—Oß@¯ß}o@¯î—Oß@¯õ±^É@›q©ûçm@›b¨v/@›q©ûçm@›r›+%@›q©ûçm@›k!äÓß@›q©ûçm@›£)¹GÆ@›q©ûçm@›cqë¿Ö@›q©ûçm@›€¨æÕ@7¹Œ~($@7O­KÛK@2û Iº^@3£{äM@2Ct¼j~ú@2AÖJò×@1èè§æ›@2*h˜w‹@1èè§æ›@1óŽmAjÄ@1èè§æ›@1åÔÕ0Ü?‘w×vHf?–Ÿ]u–û?‘“@ Æ—?©·åÝsY›?éDã\?£ÂgS÷Ó&?œÆæXÆd?Ò¸…†?’&^ǘK?¯°Ñš=Í?‘ 9fɾ?žàU¤K½?·‡å¿CO?u¼¦Oi?„¡Z¶•.? .œ‰R?7c=»•ª?™°ÉYß@@*@$@*@0@2?ð?ð?ð?ð?ð?ð?0J@@?UêÈÜ?fÔ gåá?jFIƒú³o@¯áë2@›jŠQ?‡/ßÝæ©Æ?†ªÑú?¤?ÿ1ìȨŠ?÷œ³W'@Ÿl=™˜çV@r@®€€@®€‚MÒñª@®€€@®€‚e+Ô@®€€@®€ƒñA ]@®€€@®€-w1@®€€@®€~Åm\û@®€€@®€~BZîe@¦àr-V@¦àr° Äœ@¦àr-V@¦àuÂ\*@¦àr-V@¦àt`ªdÄ@¦àr-V@¦àp Ä›§@¦àr-V@¦àtÉ…ðp@¦àr-V@¦àsZ…‡”@6Ô xFÜ@6ÉQ‚©“ @2ðÄ›¥ãT@2ï|í‘hr@2K"Ðå`B@2K Iº^@1kxFÜ^@1k~ÿ—%@1kxFÜ^@1kÀ6âì@1kxFÜ^@1kÚQÎ?|öOÿÝ?’bÓ}?‘âTÀÊS“?ºgk\0?‘˜¯ +`É?‘&¶Gf¡?îŠõ ?•²»UbB3?§^ ÿo˜?‘aYZ†«q?‘q1ýAt?’‚¸7w¼:?§1óÃQ…:?Ž*JŠË?†' +³}÷C?ƒý¥ñÍú?‡×7°º?Œ˜ˆTÙ8ª@@@@@,@,?ð?ð?ð?ð?ð?ð¿Iç½çà?B·‰¯`?"jÞ©ØÃØ?J_'4U‹•@®€ÿWíZ@¦àr€]¶?F±üº…ã?c™h«'mÎ?‘YTl?¾¤rãdvŸ@Ÿmm¼×øî@s@ õô9XbÁ.„€@ õô9XbÁ.„€@ õô9XbÁ.„€@ õô9XbÁ.„€@ õô9XbÁ.„€@ õô9XbÁ.„€@žM 7KƨÁ.„€@žM 7KƨÁ.„€@žM 7KƨÁ.„€@žM 7KƨÁ.„€@žM 7KƨÁ.„€@žM 7KƨÁ.„€@5G>«6zÁ.„>¤µÜÆ@3{ Iº^Á.„M‰ûçm@2ƒt¼j~úÁ.„QnÙ‡@2G ù kºÁ.„NÜC,¥@2G ù kºÁ.„NÜC,¥@2G ù kºÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøt@©œ/Ÿ¾@©œp£× +@©œ/Ÿ¾@©œp£× @©œ/Ÿ¾@©œž í(Œ@©œ/Ÿ¾@©œ 6âê@©œ/Ÿ¾@©œœ¹#¢œ@©œ/Ÿ¾@©œžùÛ"Ñ@¡ª/Ÿ¾@¡ª/Ÿ¾@¡ª/Ÿ¾@¡ª^5?}@¡ª/Ÿ¾@¡ªÔ,<Ÿ@¡ª/Ÿ¾@¡ªPHð@¡ª/Ÿ¾@¡ª(õÂ@¡ª/Ÿ¾@¡ª¥ãSø@2}:’£@2|ú¬Ùè>@1Iº^5@@1"h Ô•@0A‰7KÇ@0:û~‘@0¡:’£S@0 HðŽ@0¡:’£S@0 ƒn—Ž@0¡:’£S@0 :û~‘?É^³Dw'?ÖÈ ¼?‘G¿yÛ?ï?‹¬àÌ’Ç?‘×´<î¯j?ÃwZL?ÐbMçê_x?’ÍîfÕ?ê‰O)AT?@§[*^?‘q1ýAt?ˆ9²0?€b¡´ñ@?ŒÂ§dß±?ƒ!A +mº¹?ƒ¦$H?‡gϵ’õ?‡ã ËÄž@@@@@,@$?ð?ð?ð?ð?ð?ð¿E½$Ø¿2dÓù ?Kö—ïZ8f?”Åq0;@©œž×Þf@¡ª,Äè?[>‹×¡É?"¯¬OJfA?±±kªõk?=ª9¥‡lÃ@ŸrýFêÊW@u@­‚çï²-@­‚ç+ K@­‚çï²-@­‚àIQ‚@­‚çï²-@­‚àhÛ‹¬@­‚çï²-@­‚ÜPHñ@­‚çï²-@­‚ÚCþ\’@­‚çï²-@­‚Ù#¢œx@¢ñ[¥ãSø@¢ñ[¥ãSø@¢ñ[¥ãSø@¢ñZŸ¾vÉ@¢ñ[¥ãSø@¢ñY™™™›@¢ñ[¥ãSø@¢ñS÷ÎÙ@¢ñ[¥ãSø@¢ñV_Ø­¬@¢ñ[¥ãSø@¢ñRÊW§‡@6cg ù l@6ca@N¥@3xr° Äœ@3wE8ï4×@2©Û"Ðå`@2§æšÔ,@2xDЩ*@2p–»˜Çã@2xDЩ*@2ooÒòå@2xDЩ*@2o·éùr?|öOÿÝ?‡åƒêM?‘£Ä›è?”6Wé=t?˜´1…9„?–ËÒÙI°?€‚ñêã ?’Ï>`Ï?“û#ÆGf?”ÑÓTœ?ƒ@…ˆAd?˜«ŒˆÀS)?„ËD(ºo?àQdËЈ?ƒ<Õp?ƒiñj6Â?Š*ÊÔQãú?‰Ü)@Jq«@@@@@,@(?ð?ð?ð?ð?ð?ð¿iЖIJ¿_×V?8¨›Pò€?=œ­›¶à@­‚á?|~@¢ñWå?o6?Wwú³;?[Ý`´D?´ÏU¸]Óv?·Õm>XUŠ@Ÿd¸Añ•<@v@¯K§l‹C–@¯K¶È´9W@¯K§l‹C–@¯K©^ž +@¯K§l‹C–@¯K¦ffff@¯K§l‹C–@¯K©“ àß@¯K§l‹C–@¯K¨Îp:û@¯K§l‹C–@¯K¥m\ú¬@ŸùcS÷ÎÙ@ŸùzáG®@ŸùcS÷ÎÙ@ŸùbMÒñ©@ŸùcS÷ÎÙ@ŸùiÇy¦µ@ŸùcS÷ÎÙ@Ÿùhr° Å@ŸùcS÷ÎÙ@Ÿùeœàu@ŸùcS÷ÎÙ@Ÿùg8}¿@8Ç>«6z@8²n—Oà@3Ï|í‘hr@3Ñ&éxÔþ@3²-V@3Žšu@2Š0U2a|@2ŠîcŠ @2Š0U2a|@2‹ŸU›=@2Š0U2a|@2quŽ"?«á¬å÷‰?‘_¦X ë +?”Uy*þÿà «›?¹Âþµ~B@ªF*²œ.û@šæ¶ÓÔì?ÃÇ•(ó0?4p×'±?I¿ÇQƪÎ?t‘s܋֫@Ÿf㺛O7@z@¨(®—Oß@¨(¯Ÿ¾w@¨(®—Oß@¨(¯–»™@¨(®—Oß@¨(¯'»/ì@¨(®—Oß@¨(°ÿ—$u@¨(®—Oß@¨(­ÅÖ8†@¨(®—Oß@¨(®!–R¾@§záG®@§záG®@§záG®@§{W>«6@§záG®@§{À6â@§záG®@§záG®@§záG®@§zÇË)@§záG®@§{quŽ"@3¯O „M@3Щ*0@/æ§ï²-@/çË)^ž@.ü¬1&ê@.üÓZ…‡”@.a-w1Å@.`'RT`«@.a-w1Å@.^«6z‘@.a-w1Å@.^ÒˆÎp:?}Ñ¿ž,?äm°û0Ž?‘SŸ[ÈÙ?‹ä†€{6è?‘'¬Å™» ?ý‰w'¬?|¬Çëý ?’ ÃCÀ`ú?£½:…?>\‰å‘?ñ«Ý„ Õ?ˆ9²0?‚nâwfÿ?ŒË›Í‡Çq?‚¯­Ù¤Á¶?‚éXëLL÷?†ÃÛSPã?†å·ÑfWà@@@@@*@,?ð?ð?ð?ð?ð?ð¿°Ð€? óžÃ?6×0­ó ? ê?SÐPp@¨(¯…Ä@§zûmè„?V¬ã§]#”?.~¾úª¢þ?»Çì6ò?h @•¸µ0@Ÿg=Û¼p@{@°q&éxÕÁ.„€@°q&éxÕ@°qbïP@°q&éxÕ@°t¼ÀÇQ@°q&éxÕ@°vz±C@°q&éxÕ@°o[z*Û@°q&éxÕ@°lþÁXÝ@”JÀƒoÁ.„€@”JÀƒo@”JSž·+@”JÀƒo@”<…í2à@”JÀƒo@”Gb“J,@”JÀƒo@”5—_oS@”JÀƒo@”C­Kp@6àØDЩÁ.„>¤µÜÆ@3û Iº^@3õäÄà¹@3ÐA‰7KÇ@3ÊÃü¿xF@3ÔmÅÖ8†@3Ȫpª@3ÔmÅÖ8†@3κÌY#z@3ÔmÅÖ8†@3Ë—":2°@8J¨?‘{?Ÿ–†¼éY?›Åeú©¤@8p÷?T¢#0¦?oŸt-kŠ?“$e±æ¤È?Ÿ‹–¥ÿq?›çž§&Ò€@*@(@(@9@6?ð?ð?ð?ð?ðøøøøøøøøøøøø|@¯Û A‰7L@¯Û @¯Û A‰7L@¯Û å ¾¿@¯Û A‰7L@¯Û Ž™ÿÝ@¯Û A‰7L@¯Û Á\{±@¯Û A‰7L@¯ÛË÷Râ@¯Û A‰7L@¯Ûê ¹@”ϾvÈ´@”Ï A‰7L@”ϾvÈ´@”Ï]LKJ@”ϾvÈ´@”ÏyÚ +@”ϾvÈ´@”Ï!DíŽl@”ϾvÈ´@”Ïb(¡@”ϾvÈ´@”Ï E!¤@4í¥œàv@4î‚b™R@0û Iº^@0û©Qà@097KƧð@09 wî@/úÇË)_@/ûY2OºX@/úÇË)_@/û´à±¤d@/úÇË)_@/û‹E2{L?|Ñb×¶@?ȶ¶ú# ?‘6ó4Y?µ?‹´M¢ÍÕ¼?ñ(Gâö¢?ÄÇÚÕ?|Ñb×¶@?’/èÞçq?©4Á?«ü?MCFn3×?éç Ã¤?d¨ã"“H?‚pDøïRg?Œ¹î äý»?‚‰’Í¡v?ƒŒhïú„?†¦9¸yt?†ÈH‚oÇ@@*@,@*@9@:?ð?ð?ð?ð?ð?ð>òSº¿Ì Æ ?VCl? NÈ;x@¯Û ¦Ê@”Ï +šçd?=-ËÒŸ!4?@U?‡:ò;òñ¤?Œ¯·B)Øè@ŸföDj¬„@}@­*^¸Që…@­*k…¸Q@­*^¸Që…@­*\C,¥z@­*^¸Që…@­*_ò䎊@­*^¸Që…@­*_|í‘i@­*^¸Që…@­*\žì¿±@­*^¸Që…@­*\¾ß¤@©jýó¶F@©j“t¼i@©jýó¶F@©jã¼Ó@©jýó¶F@©j_ö”@©jýó¶F@©jy=Ù@©jýó¶F@©jCþ\“@©jýó¶F@©j+jçÕ@8ºqÞi­C@8Áä÷eý‹@3@ Ä›¥ã@3AÊÀƒn@2d¼j~ùÛ@2eoi@2O „M@2'RT`ª@2O „M@2šu@2O „M@2($ x?3ßa=„?‘¸ü"ù€2?”‰oüq u?‡{@áè?“¦Æ_ÌdA?’—ØPö«?›’qvš°•?“H¼k#è?’Q½£a C?íu…XÚ?’˜£“µ~Ð?’›â¾Ð'µ?©'¾²[?Å9–o?…/‡ÙX·³?…<ò N ?‰©OO ¨?ˆ0&YÊEd@@@@@(@(?ð?ð?ð?ð?ð?ð¿k.™t~¿5(”à?D„=ù{‹?E²ˆÐtd(@­*`tòf@©jq¿r½?cú¾ÁsI?`v©ø!¿?ÂÚfĦ9Î?¶c|®[@Ÿm[V?K@~@Ÿ;dZ¬@Ÿ+@8Iç@8Ù?‰døëŽìÃ@8Î÷@8i§@8Å@8S@8û—?¡B€‹{Ü¡@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø‚@®ÊY™™™š@®ÊY™™™™@®ÊY™™™š@®ÊZw¶:@®ÊY™™™š@®ÊW3ú1K@®ÊY™™™š@®ÊXÛ)Wþ@®ÊY™™™š@®ÊWh.…@®ÊY™™™š@®ÊY2ÄÈ@”Ñ$Ý/@”щ7KÈ@”Ñ$Ý/@”Ñ› +²á@”Ñ$Ý/@”Ñ#à¤Q@”Ñ$Ý/@”Ñ9(›þ@”Ñ$Ý/@”Ðüâp,@”Ñ$Ý/@”Ðü!½ @4wâ‚@·€@4wÒ¸T:’@1æ‡+ J@1æåœ P©@1q‰7Kƨ@1q•Uà@1Þi­BÄ@1ÌÌš}@1Þi­BÄ@1þâÖï@1Þi­BÄ@1ðˆçÂ?€Ã{s°úi?<—àMt?‘+5xøªò?ŒA·qŒo?‘è¹í¡?‘2k…‡bð?|Ñb×¶@?’eCŒO?‡anØ¥?‡P°R²ß?‘¹xò(+?½„†æîÑ?‚•÷Çé¹a?Œîݺ?‚¼nž÷?ƒu3±ëX?†ü (Ÿ=d?†Î*OÌôû@@,@ @,@:@9?ð?ð?ð?ð?ð?ð¿0ÀC‘@¿BJõÙÞ?) AÐñ? ×jÌ}Ÿ@®ÊXøµ* @”Ðÿ"Ï4?HÜžÜ,yô?@—”2¡­=?­¦À¼ ?‹R#sÕc@Ÿgl`»vB@ƒ@«B 7Kƨ@«B +AÍá3@«B 7Kƨ@«B z`Ð@«B 7Kƨ@«B}höÆ@«B 7Kƨ@«B ý} @«B 7Kƨ@«B ó:@«B 7Kƨ@«BÔ''Å@˜Y +=p£×@˜Y –É‚@˜Y +=p£×@˜YO«ƒ@˜Y +=p£×@˜Y +©iå @˜Y +=p£×@˜Y <ù1@˜Y +=p£×@˜XÿÄ Ê¯@˜Y +=p£×@˜YñÂå@8 ]cˆe”@8 +FVMÙŒ@3‡ÎÙ‡+@3ˆ>þ‡n@2Àå`A‰7@2Âb¡ + @1ó&Á½¥@1ôZûܳu@1ó&Á½¥@1ô3>4¥@1ó&Á½¥@1ôÈq;${?–×ôäL™?ȱÿ²•c?’ú4vȺ?ŒÀ®ôB5 ?‘]Xýæä?‘—Ë™3HQ?›Q®úL§?’Îç9{»?‘ÁbNù|V?„Å÷Mª?‘^YZ8ÔÐ?äÔhÕ•Q?²PµU+D±?Ž"Çá¸x?‚½l1Y=3?ƒt'†Óß?‡dOõÃ@?‡˜Þ•+åç@@(@*@*@:@9?ð?ð?ð?ð?ð?ð¿<À”(À¿VdÍÄ?@UßÊ5M?Kf“ aXc@«B +`òë@˜Y!#;Æ?Y"€Å"î?d‹«á`ü?°³æ?åt +Îõí?¶D»J¥X?èŽìr¡-?’,ö´´Ï#?€s8rÅ?4–Ú‰3?Ë=̘ê_?PL·Dǽ?æ ýM¹<Ç?Œ²ÅŒÕ6?‚˜YªüÏF?‚ð'ã:ÂÝ?†Æ¸¹%?†‰~±.@@@@@@ ?ð?ð?ð?ð?ð?ð¿AIˆç8>ý8ßÓ@?-u+)3¨x?"hªÈ£?@žÓ„@;5@¯C´œRƒ$?<ÏîRp?¹[Í_?s/ꉄ6H?4¾~L3ø@Ÿs~ËR%ò@…@£ÎV“@£É7Kƨ@£ÎV“@£Ò{²þÅ@£ÎV“@£Ò•éá±@£ÎV“@£Ðå`A‰@£ÎV“@£Í5¨Xy@£ÎV“@£ÎzáH@«¾¸Ôýó¶@«¾¶“u@«¾¸Ôýó¶@«¾¼¹#¢œ@«¾¸Ôýó¶@«¾¼C,¥y@«¾¸Ôýó¶@«¾¼ÓZ…‰@«¾¸Ôýó¶@«¾¸bMÓ@«¾¸Ôýó¶@«¾´¢3œ@8D¯O „M@8JJŒL˜@2ør° Äœ@2ø­«ŸU›@2iÛ"Ðå`@2ju%F @1‡ ù kº@1ƒFÜ]cˆ@1‡ ù kº@1ЦL/ƒ{@1‡ ù kº@1‹’:)Çz?“Æ×q„nï?’ãy)­3c?‘=?ùKh?U›=ÈK?’ÒuèçxY?‘Ò\.:Ø@?«_$Øï†?—·f;m?¯éÊSÜ?‘W×ý°A?‘ÇmEB«?‘êey°úà?ÂðÏvÕûA?•ŠPç<}¨?ŠÇÿú?„•ˆG’Z¾?‰Ü)@Jq«?€=P|@@@@@*@&?ð?ð?ð?ð?ð?ð?J”¶VP¿`çùÍ€?O8¾ü1“?WXE¢uÊ@£Î«`@«¾¹=Òe’?k ÏejMß?kÃÚ+$v?Ñ©ïÜô°?Ì“?$©ÿ@Ÿp uÜÛ@†@ WH´9X@ WK¡‰ËÅ@ WH´9X@ WH:Wt@ WH´9X@ W‡‰·ÅJ@ WH´9X@ W_Ó$@ WH´9X@ WPJæ@ WH´9X@ WR´É§@¯ :^5?}@¯ )™H@¯ :^5?}@¯ ´ØÎ“@¯ :^5?}@¯ G¬Råb@¯ :^5?}@¯ ÂbÜ@¯ :^5?}@¯ $z˜Âq@¯ :^5?}@¯ i©@õý@904mÅÖ8@9>¶ @4ÇÎÙ‡+@4–™d–@@3§KƧïž@3†*'2!ö@3?ò䎊r@3)8–éˆ@3?ò䎊r@3(z­ã’õ@3?ò䎊r@3*Œ |3?ñ3<' ?’ŠïÏØ$? Ÿ£Qî´?–es1“xÕ?˜Ì›B—O/?–Ìù—ã¾µ?§ŸsX]?“,¯ë?£†úþ'±¯?•¾ìiÉ®?‘*Ex Áž?›mr)?ƒ‰"úÿŠì?›w+ã*ª?ˆ%AÉC±‚?‰8‹bÊ-Y?Ï2ÉN‹ü?‹keWP'X@@"@$@ @$@"?ð?ð?ð?ð?ð?ð?a9;j?—Åõ·?^Þ5’A +?¢x¿}=@ WSœs¾@¯ %¶øe¢?ƒž=½-ç?¢YPšd½?úr•sGÈ´@1³dÜ ï@@Ÿn?Žà¼Ð@‡@¨O^¸Që…@¨OaÊÀƒ@¨O^¸Që…@¨O`Ñ·Y@¨O^¸Që…@¨O_Š Þ@¨O^¸Që…@¨ObëC-@¨O^¸Që…@¨O`-à @¨O^¸Që…@¨O[=ÈK@¤ "Ðå`@¤ "MÒñª@¤ "Ðå`@¤ àuöý@¤ "Ðå`@¤ Ov`@¤ "Ðå`@¤ À6ã@¤ "Ðå`@¤ ã¼Ò@¤ "Ðå`@¤ _ö”@72ÃÉîËû@70ƒn—Ž@3û Iº^@3ý(Œç°@3ù7KƧð@4IQ‚ª@2ÙŒ~($ @2ÚW§†Â'@2ÙŒ~($ @2ÝÅÖ8†Z@2ÙŒ~($ @2Ý!ÿ.Hé?•²»UbB2?’‚€‡d_s?–Èó^ù„?“zRÈUÄ?”] +° ?•zWmoàí?Œs¤DÅÐ?£àÂ’âÿ?™ÐÈï£L?–…%j»a?“‚Û£0Î¥?“ù|ö[ÿz? t€4Â?üÓqÔN‰?¡è™è;?…J]j?Ž .0åv?€=P|@@@@@*@*?ð?ð?ð?ð?ð?ð¿R-·²¿]p(ï,?K® _WŒ?;¬'yÃ) @¨O`d´@¤ (°†p?h-y'bÁ@?\”ÂIâ½?ÅÁ§ûPe×?²§)”ï@ŸkÜñî­¯@ˆ@ Ð-‘hr°@ Ð*Àƒo@ Ð-‘hr°@ Ð-cåÜ@ Ð-‘hr°@ Ð.Î÷³H@ Ð-‘hr°@ Ð.˜zš_@ Ð-‘hr°@ Ð,¶øˆ@ Ð-‘hr°@ Ð,¤jhM@­V× +=p¤@­VÔÙ¾ˆ+@­V× +=p¤@­VÖ2ÃŬ@­V× +=p¤@­VÖÕ‚v\@­V× +=p¤@­VÖÆa/÷@­V× +=p¤@­V×ÿ=‚@­V× +=p¤@­V×ãxË@6­¥œàv@6¬s«ÉG@0ÜIº^5@@0Ü‘’…—F@/]ó¶E¡Ë@/]o—g2@.£¼ÓZ…ˆ@.¢jK•(@.£¼ÓZ…ˆ@.£H«EÓ@.£¼ÓZ…ˆ@.¢òù‡?û?ŽÕQp Î?)bÓºÉx?‘-[ÑÈo?‹±mcâcx?ÿor¢òÈ?ÃvURn*?ƒÔo"ë–?’-ä‹Ð?þ%›§Ä?9d‰Ù™Ä?é*’Ð_?cØ•ZI?‚o†#BpW?Œ¿Ïôq¼6?‚˜YªüÏF?‚ý› û¼?†œ!R#?†“[R¿vs@@,@,@&@8@7?ð?ð?ð?ð?ð?ð?Að!ÍH?F<"ž?9zY æ·Ý?PvÚî8©@ Ð,ms8n@­VÖˆîJ?Y ìF Ö™?5¥¬ÝÛÜ?¾êL(Ö¬?s +ÂzØd@ŸhÓ%…xI@‰@ ­•%@ ­× +=q@ ­•%@ ­Ø·f@ ­•%@ ­]èU@ ­•%@ ­ëî@è@ ­•%@ ­Þ¿ÖJ@ ­•%@ ­¯\Tä@ Z›¥ãT@ Z›¥ãT@ Z›¥ãT@ Z$PŒd@ Z›¥ãT@ Z±-éK@ Z›¥ãT@ Z[¯5@ Z›¥ãT@ Zµ$•@ Z›¥ãT@ ZÁÔ÷Ñ@2–»˜È@2|í‘hr@0×+ Iº@0ÛfW˜ +Ø@0ä¼j~ùÛ@0òzP·¦@08DЩ*@0H¨äº•Œ@08DЩ*@0Cîô&Y@08DЩ*@0@ØDЩ?É^¨¯Âj?ÏWº¤¯?“©’Qõ¾?Ž# 8ðÖ‘?“¾”c¼.?“Jq×s=?ÐbMÝn½?’7ÌÇû!?šµÂ%2Ù}? )Nk·@¤dÝ/ @¤b3œ¿@ªc»dZ¬@ªc»çl‹D@ªc»dZ¬@ªc·süP@ªc»dZ¬@ªcµ›=Ç@ªc»dZ¬@ªc¸*™0½@ªc»dZ¬@ªcº…‡“Þ@ªc»dZ¬@ªc·škP²@7`ØDЩ@7bZîcŠ@2i‡+ @2hï4Ö¡b@1È“t¼j@1Ç ù kº@1ý!ÿ.I@1R½<6@1ý!ÿ.I@1}¿H€@1ý!ÿ.I@1Ë)^ž?1·†Æjñ?‘€5{ºÎ#?“­læ>®€?Ça_b‹?‘˜¯ +`É?’ ÖMüõi?ˆÿÀ)T¿Æ?’‡Iš÷?–AuøG1?’.p»Cþ?’>H>d#?‘)]•\­?ŒR‹w#z?¨ ‰‹U)?…àú^Á?„ªÎZ´?ˆ”Tj«›ª?‰G±±ZÎ@@@@@(@(?ð?ð?ð?ð?ð?ð?&Aø ¿H%÷H?1,;@-?7ðÓ?‘™@¤ct/${@ªc¹ç¤(ð?RK­I¶Š?Wò‹†yã ?«Åò þ æ?²Œ\ÐìR@Ÿi&• +—Ë@‹@ ¸Ôýó¶@ ·ÎÙ‡@ ¸Ôýó¶Á.„€@ ¸Ôýó¶Á.„€@ ¸Ôýó¶Á.„€@ ¸Ôýó¶Á.„€@ ¸Ôýó¶Á.„€@ ‘@ îV“@ ‘Á.„€@ ‘Á.„€@ ‘Á.„€@ ‘Á.„€@ ‘Á.„€@6 ØDЩ@6`ªdÂù@3@ Ä›¥ãÁ.„M‰ûçm@2y7KƧðÁ.„QnÙ‡@1èè§æ›Á.„NÜC,¥@1èè§æ›Á.„NÜC,¥@1èè§æ›Á.„NÜC,¥?…ÅBðrç@8#˜@8¾:@8 >+@8Iç@8Ù?–ªÎ­¡@8Î÷@8i§@8Å@8S@8û—?§˜Áuf·@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøŒ@ ÿ|í‘h@ ÿ¾vÈ´@ ÿ|í‘h@ Tˆ¸@ ÿ|í‘h@ PÌ’N@ ÿ|í‘h@ ý–6‰Ö@ ÿ|í‘h@ þ•b’@ ÿ|í‘h@ þÈêbR@  +‰7KÇ@  +ÊÀƒ@  +‰7KÇ@  +~ߤ?ç@  +‰7KÇ@  +sR@  +‰7KÇ@  +ƒI}ÆŠ@  +‰7KÇ@  +‚Í=X|@  +‰7KÇ@  +”Ú !@1ÉÎ_oÒ@1ÉÀëíúD@0Š^5?|î@0‹ý¦çÍc@/òn—Oà@/óñG&À@/õ¨Xy=Ú@/üo០@/õ¨Xy=Ú@/ø£¡9î@/õ¨Xy=Ú@/ùäÁéI±?É^¨¯Âj?Ô­)?‘'æÚÄ ?ŒP4äq{è?‘s£Zò?‘!Ž ¸?ÐbQë„›¦?’½ò?„<ˆ6?húgÊÚö?ôO³â¾?·t7ôT?€bîF¾§?ŒôÊ“:$Ñ?‚´ÎtÎq£?ƒÅ#+Ïé?‡xý’’lÔ?‡>d»S@@$@$@*@6@5?ð?ð?ð?ð?ð?ð?@ùb8Æ¿F÷7øÎ?#úÓß{ÈF?(èÅ}ØX•@ þ>ÎÒ®@  +‚¢Òê?3.N%6?7~EHbeð?axf!@¨½?g‡óz§Ì@ŸsÇ+0w@@¡ý²° Äœ@¡ý·KƧñ@¡ý²° Äœ@¡ý½ÌcñA@¡ý²° Äœ@¡ýÅ`A‰7@¡ý²° Äœ@¡ý°ÿ—$t@¡ý²° Äœ@¡ý°¾ í)@¡ý²° Äœ@¡ý¸ï4Ö¡@ ï`A‰7L@ ïW +=p¤@ ï`A‰7L@ ïv“u@ ï`A‰7L@ ï€ƒn˜@ ï`A‰7L@ ïZ¹õY´@ ï`A‰7L@ ï[¥ãSø@ ï`A‰7L@ ï^¸Që…@7p4mÅÖ8@7l¹#¢œx@3æ‡+ J@3õY³Ð|„@2Ãt¼j~ú@2ØXy=Ù€@2œàu÷@2 ’:)Çz@2œàu÷@2HðŽ@2œàu÷@2 quŽ"?€‚ñêã ?”Øÿ4ÙKl?¡È‡ å? Í‹hÆ?–[À5ž¨?œ´‹ÛZ?|¬Çëý ? Í”{Í?”p¶I”“ž?‘~¬Àm?ó?“â¹Í[Óh?™"Ьç¿?Ÿ•"x*=k?¥*Û:'+)?Œó}?ï?éàQx˜?“aÑ#?˜!ÄD‘@@@@@(@(?ð?ð?ð?ð?ð?ð¿Qä@;.?VpÌÏÄ?O¢´†…?"Ng6Gj³@¡ý´½MéÁ@ ïY®ÀD?lÊ\­Ä{?A1tò–6?ÝÞ +“°è¢?‡õi]û¬Õ@ŸeÕx¸Ç@Ž@¡ýH´9X@¡ýH1&éy@¡ýH´9X@¡ý Ä›¥ã@¡ýH´9X@¡ýC¼ÓZ†@¡ýH´9X@¡ý-¸ºÇ@¡ýH´9X@¡ýFµ '@¡ýH´9X@¡ýG ù l@§\{dZ¬@§\{dZ¬@§\{dZ¬@§[¿¼@§\{dZ¬@§\]Vlô@§\{dZ¬@§[üí‘hs@§\{dZ¬@§\|£n0@§\{dZ¬@§\|£n/@4Bò䎊@4Bh Ô•@0×+ Iº@1 -à @01‰7Kƨ@0>Hè§ç@0ÚQÎ@0L/ƒ{J$@0ÚQÎ@0’:)Çz@0ÚQÎ@0²þÅm]?}Ñ¿ž,?©­ïáuùM?’,³Zêª?$¿ÀºÍ?‘˜¯ +`É?‘…Rgå.?|¬Çëý ?¶EŽù±Ò?¯éÊSÜ?›üfšˆ‚Á?‘C å;Ã?–’+¸¢d?ƒ{¬ÉV?¨ ‰‹U)?ƒÚ@êA²?–Ô¿»X¨?‡<û¡71?†ùadô|@@@@@,@,?ð?ð?ð?ð?ð?ð¿ZðÓP¿`58* ?kô ™îÒç?ƒZ ¸8¶N@¡ýBƒ9>@§\sø8p®?‹¡É–n+k?¤]æ3,Ù"@#z–ˆÔ%@SÒ½‚t@Ÿfú[á§@@¤œ@¤›ïß;dZ@¤œÁ.„€@¤œÁ.„€@¤œÁ.„€@¤œÁ.„€@¤œÁ.„€@¥ËËC•@¥Ë‘ë…¸@¥ËËC•Á.„€@¥ËËC•Á.„€@¥ËËC•Á.„€@¥ËËC•Á.„€@¥ËËC•Á.„€@9G>«6z@9H Ô•+@4µãS÷ÎÙÁ.„M‰ûçm@3ñ‰7KƨÁ.„QnÙ‡@3Š0U2a|Á.„NÜC,¥@3Š0U2a|Á.„NÜC,¥@3Š0U2a|Á.„NÜC,¥?Äâc9X@8#˜@8¾:@8 >+@8Iç@8Ù?îŠõ @8Î÷@8i§@8Å@8S@8û—?ĆpÑ,@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@¥ÓIº^5?Á.„€@¥ÓIº^5?@¥ÒÏ]yhì@¥ÓIº^5?@¥Òŵ¸ {@¥ÓIº^5?@¥ÒüxÉ[³@¥ÓIº^5?@¥Ó'_oÒ @¥ÓIº^5?@¥Ó7Oß:@˜•ÍÒñ©üÁ.„€@˜•ÍÒñ©ü@˜•¸¨éÙ@˜•ÍÒñ©ü@˜•ÊçôZž@˜•ÍÒñ©ü@˜•j2ÿÈã@˜•ÍÒñ©ü@˜•zxl"i@˜•ÍÒñ©ü@˜•„“t¼@8” xFÜÁ.„>¤µÜÆ@5° Ä›¦@4ÆüÙ_jK@4Ÿ²-V@4•ñbŽ&Â@4:Ô,<ží@4LΡÙm¯@4:Ô,<ží@3ùÛ"Ðå`@4:Ô,<ží@4 PHð@8J¨?·Uq‚dÏ??xÈÄ@?¹ýݧ·Þâ?ÁxܬiÍ?ªºŠY‡@8J¨?¼óC€TæÃ?µða¢–?Š?ºÙ¿f|‹?Æ"Q¾S–?¯UÌ•"¨–@8p÷?¬«ã-Ýq?´ói°ŒIÖ?Àƒ?ÃF›?Àñkú±0?»N£²›R\@(@$@&@*@$?ð?ð?ð?ð?ðøøøøøøøøøøøø‘@§þ“t¼j@§þ‡+ @§þ“t¼j@§þ1Å@§þ“t¼j@§þmÅÖ9@§þ“t¼j@§þŽóMj@§þ“t¼j@§þ[W>«@§þ“t¼j@§þbMÒ@¡~À@¡~Á‰7KÈ@¡~À@¡~Àƒn˜@¡~À@¡~Äg8~@¡~À@¡~ÅýŠÚº@¡~À@¡~Îp:û@¡~À@¡~Ò¼¢@6}:’£@6~óMj@2ë¥ãS÷Ï@2á×Ûô‡ü@1ˆ“t¼j@1ë…¸R@1a:’£S@1TêJŒL@1a:’£S@1RÃÉîËû@1a:’£S@1TêJŒM?‚á²Olºü?¥nÇx?)?–„6âpñ?ŽËÜ¿€?šòl? ¬?˜j@\"?€‚ñêã ?’§ioŠ?’€fç½Î?‘.“¥?ïeÑÙN¤?ž™<û!æ?ˆÌ7^|Â?Ó%y*£=?‡Ü̈- +?ˆš5|Gå?æšÔ,<ž?ˆ¾þúWZ‹@@@@@&@(?ð?ð?ð?ð?ð?ð¿;J+ð?fötóÑ?EŒƒD½ ?bä–¶ýÑ?É|‚ g–?ÄPÙflý²@Ÿe,¤ 5@’@¡ËdÝ/ @¡Ëe`A‰7@¡ËdÝ/ @¡Ëem\ú­@¡ËdÝ/ @¡Ëgl‹C—@¡ËdÝ/ @¡Ëe‡“ݘ@¡ËdÝ/ @¡Ëb‚@·€@¡ËdÝ/ @¡Ëa–R½=@  LÌÌÌÍ@  LÌÌÌÍ@  LÌÌÌÍ@  L˜_÷@  LÌÌÌÍ@  KC,¥@  LÌÌÌÍ@  Kûµt@  LÌÌÌÍ@  Np:û@  LÌÌÌÍ@  NËûµ@2Q|ÚQ@2Qhr° Ä@.û"Ðå`A@.ù=Ùb¶@.cn—P@.^¸Që…@.Vð¸»@.OÅo@.Vð¸»@.N_oÒ @.Vð¸»@.O „M;?ðO­W¬ÃÆ?%¼ÇÆÃ±?‘ŒQ®üX?,¡r×gÁ?‘úy«ôÊ%?’ ÖMüõi?ð„ƒ;0?’MœœN ?³2ºŽ'?‘aYZ†«q?’ÞH†<²?‘õe\Š«p?ð!̃?Œ¸†‡ÄÅ?‚‘´…=Cb?„ mŠmsi?‰©OO ¨?ŒÙ”!Çx‡?ð@@@@*@,?ð?ð?ð?ð?ð?ð¿\Ýá^?T¡Ü€?1ŒÔ{H²N?3JGZúÆ@¡ËcO¸7@  M¦Ó>?@vø8ûZã?Aù© +à?uŸ‡«ê³6?wÓ/Ÿ.#Ÿ@ŸsšgOx@“@­ C•@­å`A‰@­ C•@¬ÿÁä÷eþ@­ C•@¬ÿ˜bMÒ@­ C•@¬ÿ×éùr@­ C•Á.„€@­ C•@¬þ„ xH@¢}âMÒñª@¢}ß¾vÈ´@¢}âMÒñª@¢}ò¼£@¢}âMÒñª@¢}ý—ö+k@¢}âMÒñª@¢}ì¥zxm@¢}âMÒñªÁ.„€@¢}âMÒñª@¢}Ò£S%@8Ì]cˆe•@8¾_oÒ @4½‘hr° @4¦Ov_Ø@4U`A‰7L@49Q‚©“ @3ý!ÿ.I@3 šu&@3ý!ÿ.IÁ.„NÜC,¥@3ý!ÿ.I@2Ü篷é?ªÝ8Ⱥ™J?Ÿø5Õb&?Äüjl|Õ?³ïàó„âè@8Iç?ä<´3:‰?}Ñ¿ž,? >Ô±µR?—ÿfFº?•õ°­¿Èì@8S?æ¹ÎŸ=²?É*cˆº?¤Y¾Â,v?¨çTBÜôŒ?¥À¨@8 Ø?º6fe>¥º@@@@@,?ð?ð?ð?ð?ðøøøøøøøøøøøø”@®&È´9X@®&ËC•@®&È´9X@®&Ø“t¼j@®&È´9X@®&Ü£n/@®&È´9X@®&ëjçÕg@®&È´9X@®&Ölô!@®&È´9X@®&Ý}¿H€@©®—Oß@©®V“@©®—Oß@©xl"h @©®—Oß@©EãS÷Î@©®—Oß@©ÿ|í‘h@©®—Oß@©Ù‡+@©®—Oß@©˜*™0¾@6#g ù l@6%¸Që…@3³S÷ÎÙ@3š ÞÒ@3iÛ"Ðå`@3=²-V@3 +0U2a|@2Ë)^ž @3 +0U2a|@2Í—ö+jè@3 +0U2a|@2Ö»˜Çâ‚?…ÅBðrç?©Æßˆ J?°]!Àò\Ã?³üɹÀçà?±J¶‰jcJ?°0JeãÝÕ?„F/·ÿP5?³ý•‘|?Ä pÎôÛ“?ÍîI-ØU4?ÐÕ/xÿº?ÝBHÉ¿_?‚ÂÌ]å?œ]ŸFV”?¢³Žbtx=?¡ðc+þ™?¢&z²ÖQ³?²0Ãà÷ïŸ@@@@@(@,?ð?ð?ð?ð?ð?ð?qŒGŒ¿ªG–wY0?`j ÑX`?€ ·¬Ÿ%@®&Í_ݲ@©–Ð.ÉL?p¿¸M°?¤µÜÆ@3W+ IºÁ.„M‰ûçm@2A‰7KÇÁ.„QnÙ‡@2¿ò䎊rÁ.„NÜC,¥@2¿ò䎊rÁ.„NÜC,¥@2¿ò䎊rÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø–@¥FÚ¬1@¥FÚ^5?}@¥FÚ¬1@¥FÙõY³Ð@¥FÚ¬1@¥FÙrGE9@¥FÚ¬1@¥FÛdZ¬@¥FÚ¬1@¥FÚCþ\‘@¥FÚ¬1@¥FÛµsë@¬¨=ó¶E¢@¬¨>5?|ï@¬¨=ó¶E¢@¬¨=¥œà@¬¨=ó¶E¢@¬¨:Ÿ¾vÉ@¬¨=ó¶E¢@¬¨;"Ðå`@¬¨=ó¶E¢@¬¨6ý!ÿ.@¬¨=ó¶E¢@¬¨:¹õYµ@4N쿱[X@4OŸ¾vÈ@1Œí‘hr°@1:’£@1²-V@1 @1¨è§æ›@1¦Ov_Ù@1¨è§æ›@1®}Vlô@1¨è§æ›@1­í(Œç?|öOÿÝ?qÂ' +B›?‘RsÈW?ŒvHn&³?“2{Áw¸?‘£.'É?|öOÿÝ?’Dê™.x? Dñ£P?|Ø}Õ…?–›·†ø?’9ñ9¶ò8?‚Ì ÝŽ‚8? $gú‡v?‚Ì ÝŽ‚8?…J]j?ˆëÅoë?‡&üòI@@@@@(@&?ð?ð?ð?ð?ð?ð?"+½0¿Q'S,Ø? ‰ó) ?9 e¼yvÑ@¥FÚµÊîó@¬¨;ïËy–??§[>î_?YŽ‘ö‚Á?Š4ˆ†)²?½ u±™À@ŸfA,3ªã@—@©ý(õÂ\@©ý(r° Å@©ý(õÂ\@©ý(Îp:û@©ý(õÂ\@©ý+ I¹@©ý(õÂ\@©ý) 'RT@©ý(õÂ\@©ý'y¦µ @©ý(õÂ\@©ý)^ž@¥Pô¼j~ú@¥Pô9Xb@¥Pô¼j~ú@¥Pô9Xb@¥Pô¼j~ú@¥Pñ4êK@¥Pô¼j~ú@¥P÷ +=p£@¥Pô¼j~ú@¥PôðØDÏ@¥Pô¼j~ú@¥Põ›=È@5–šÔ,<Ÿ@5–1ø .@2Ò Iº^5@2Ðù k¹Œ@2v§ï²-@2u2a|Ú@2ý!ÿ.I@2µsê³h@2ý!ÿ.I@2”FsØ@2ý!ÿ.I@2ýó¶E¢?‚á²Olºü?ÎÁ¯‰t0?’ª®pµ?ŒÖ +Äȱ?’»–j˜ú?”ªEñeX?}Ñ¿ž,?’Òc§—Ûí?•ƒäôKwö?á>G]!?“£c”?“ÛKÂè• ?…/‡ÙX·²?]ÒivLÿ?†Æ‹™ÿ?„l¯¸‰ŒÎ?Š*ÊÔQãú?ŠEÝ‹N@@@@@,@*?ð?ð?ð?ð?ð?ð?š£??7ÁC¶X?0…ÅV9u?1öÈ_ùQ@©ý(º† t@¥Põ&=ÕI?Oží™pØ%?R+«üÙF?£½ËpN&³?« m‰*žc@Ÿg­»Ñ=@˜@§e Iº^5@§e Iº^6@§e Iº^5@§e´9X@§e Iº^5@§eéùs@§e Iº^5@§eÄ2ÊY@§e Iº^5@§eXâ@§e Iº^5@§e­«ŸV@©0£× +=@©6È´9X@©0£× +=@©#Š @©0£× +=@©0ÿ—$t@©0£× +=@©—$tU@©0£× +=@©E¼£n@©0£× +=@©CS÷ÎÙ@8¨†YJôñ@8¼ÚQÎ@5)‡+ @5,j~ùÛ"@4ä¼j~ùÛ@4ðÞÒˆÎp@45µsê³h@49º^5?~@45µsê³h@4"u%F +¦@45µsê³h@4Ëûµt?Ÿ‹‘+-/Ü? @u-I­?«ÍÏOø? ãçùÇùw?­rî9X”Y?ª $Μ$´?¨Ö_pP1?›¾³vÈ´9@¥(B\(õ@¥(>vÈ´9@¥(8}¿H@¥(>vÈ´9@¥(BëC-@¥(>vÈ´9@¥(>Ov_Ù@¥(>vÈ´9@¥(9Àëíû@¥(>vÈ´9@¥(;ô‡ü¹@8‰Î_oÒ@8…Â\(ö@3sS÷ÎÙ@3vOv_Ø@2Wï²-@2[ Iº^@2‚@·€5@2ï²-@2‚@·€5@2$Ý0@2‚@·€5@2F +¦L0?…ÅBðrç?™ér¨kÏ?šÿ»^ª@?ŽwX/8?”¶q fì?’*Mõis?—¤o„C?™ Ê£ð‡V?šœ‘9‹T‚?‘ݤ`Ìh?’Òc§—Ûí?•J佪™^?Ày»öô3?\{ÏïŽ?–]_«Q?‡v¯ªIì?ŒC ãSG?ŠEÝ‹N@@@@@*@*?ð?ð?ð?ð?ð?ð?D 0Ø¿Z²w¼º?"’ÆB ²¬?Cв_>Ò@£«)Nv]¸@¥(= ó-d?CzÁ¸V ?_ò`žJ®?‡HCK›¸?³ðÒ_k@ŸkÿÚv@š@ª'féxÔþ@ª'f§ï²@ª'féxÔþ@ª'e®æ1ú@ª'féxÔþ@ª'hõÂ\@ª'féxÔþ@ª'g+ I@ª'féxÔþ@ª'fšÔ,<@ª'féxÔþ@ª'fÁ½¥@£ºk…¸R@£ºkƧïŸ@£ºk…¸R@£ºj0U2a@£ºk…¸R@£ºk¬q ´@£ºk…¸R@£ºjW§†Â@£ºk…¸R@£ºl1&é@£ºk…¸R@£ºoªÍž„@47â‚@·€@47ÎÙ‡*@0¦‡+ J@0§+ Iº@0†“t¼@0†šÔ,<Ÿ@/ëjçÕfÐ@/ëàÞÒˆÏ@/ëjçÕfÐ@/éùrGF@/ëjçÕfÐ@/æYJôðÙ?|öOÿÝ?dYûë„{?‘&Øç?‘?‹ë¤½?‡á?‘VšÐ^Ø?‘<ƒÜ_õ?|öOÿÝ?’;µ” È?„¦Ô•]I?K·‘d]?‘x9ξÞO?‘]Ë™$ë>?‚|׿pY?Œþ%å_D?‚á²Olºý?ƒ=rµE=?†ùadô|?Š`½i=ÓØ@@@@@,@*?ð?ð?ð?ð?ð?𿦆#€?9Êg0?º?‚!&ã?<;•ëÝsÉ@ª'f¥ÃªK@£ºlap½Ë?:l`gòÜ‚?\o¸%R ?‚žµ+G9?Ä+An¸{@ŸfÁ¾î¯@›@§*àA‰7LÁ.„€@§*àA‰7LÁ.„€@§*àA‰7LÁ.„€@§*àA‰7LÁ.„€@§*àA‰7LÁ.„€@§*àA‰7LÁ.„€@•ÿ÷ÎÙ‡Á.„€@•ÿ÷ÎÙ‡Á.„€@•ÿ÷ÎÙ‡Á.„€@•ÿ÷ÎÙ‡Á.„€@•ÿ÷ÎÙ‡Á.„€@•ÿ÷ÎÙ‡Á.„€@9šÔ,<ŸÁ.„>¤µÜÆ@4!hr° ÄÁ.„M‰ûçm@3,j~ùÛ#Á.„QnÙ‡@2Ê0U2a|Á.„NÜC,¥@2Ê0U2a|Á.„NÜC,¥@2Ê0U2a|Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøœ@£×šŸ¾vÉ@£×šŸ¾vÉ@£×šŸ¾vÉ@£×›ô‡ü¹@£×šŸ¾vÉ@£×›quŽ"@£×šŸ¾vÉ@£×›"Ðå`@£×šŸ¾vÉ@£×™Œ~($@£×šŸ¾vÉ@£×™Î_p@®î Ä›¥ã@®î Ä›¥ã@®î Ä›¥ã@®î ù k»@®î Ä›¥ã@®î Ä›¥ã@®î Ä›¥ã@®î¡G®{@®î Ä›¥ã@®î¡|ÚQ@®î Ä›¥ã@®î ù k»@2-¥œàv@2-¥œàv@-ÂÐå`A‰@-ÂëC,¥@-/ß;dZ@-/–»˜È@,fL/ƒ{K@,e¼£n0@,fL/ƒ{K@,fffffg@,fL/ƒ{K@,eðoiDh?É^žQ5P‚?Òç{íj?‘=?ùKh?‹¦ ŸYÔ?òǹíT­?ÔCXsñ?ÐbMçê_x?’ ÃCÀ`ú?¯éÊSÜ?-õI¸`K?Ó%y*£=?J&d„?k?€bMÕky?Œ¬Çëý ?‚˜YªüÏF?‚äÍ“½E'?†–f_ÔŠŠ?†žóB» “@@@@@@"?ð?ð?ð?ð?ð?ð¿Dª[O°¿Ûû`?1ï•…ó·?!5nµ¡ÿ˜@£×šE19@®î¡@Î[y?A<á!ÏÊL?0K˜(ú?}Nˆk?WVd}j3ú@Ÿs:8¢†@@Ÿôó¶E¡ËÁ.„€@Ÿôó¶E¡ËÁ.„€@Ÿôó¶E¡ËÁ.„€@Ÿôó¶E¡ËÁ.„€@Ÿôó¶E¡ËÁ.„€@Ÿôó¶E¡ËÁ.„€@–%—Oß;Á.„€@–%—Oß;Á.„€@–%—Oß;Á.„€@–%—Oß;Á.„€@–%—Oß;Á.„€@–%—Oß;Á.„€@8²ÃÉîËûÁ.„>¤µÜÆ@4 Iº^5Á.„M‰ûçm@2â-VÁ.„QnÙ‡@2!:’£SÁ.„NÜC,¥@2!:’£SÁ.„NÜC,¥@2!:’£SÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøž@«–)ûçl‹@«–+ Iº@«–)ûçl‹@«–) 'RU@«–)ûçl‹@«–,1&é@«–)ûçl‹@«–,"h Õ@«–)ûçl‹@«–)ÞÑ@«–)ûçl‹@«–)“ àß@¡Á¸Që…@¡Á¸“t¼j@¡Á¸Që…@¡Á¸7´¢4@¡Á¸Që…@¡Á¶âëC@¡Á¸Që…@¡Áµ '»@¡Á¸Që…@¡Á·škP±@¡Á¸Që…@¡Á¶È´9X@5kµsê´@5kšu&@2Œí‘hr°@2V“@1H“t¼j@1H†YJôñ@1 +0U2a|@1 =ÈK^@1 +0U2a|@1 +¦L/ƒ|@1 +0U2a|@1 µsê´?}Ñ¿ž,?‘‘Ç`[?‘1f_¨Ï÷?Wø0 ¥?‘,IÝ Áé?‘C!ƒžÈ?|öOÿÝ?’V"y$R?‘4ãM^?EÇàÔPà?‘žˆ2}?‘Qïʾ?‚ÂÌ]å?Ž.]L ¼?ƒmÕ+&¬Š?„ mŠmsi?‡ã ËÄž?‰]³ß’Ý@@@@@,@(?ð?ð?ð?ð?ð?ð¿0îØ`¿=£ð?2ïßÛæ$l?5N4 +FZ@«–*š~Õª@¡Á·qª?RÝÜœ^Ì ?U›W¾£m`?²?k?·9u¡¬Ôy@Ÿfáva @Ÿ@ª7mVÁ.„€@ª7mV@ª7y0¾ í@ª7mV@ª7ŠÚ¹õ[@ª7mV@ª7€A‰7K@ª7mV@ª7FÏAò@ª7mV@ª7ŽcŠ @ l“t¼jÁ.„€@ l“t¼j@ kvâëC@ l“t¼j@ ktýó¶F@ l“t¼j@ kĵܯ?@ l“t¼j@ k³×Ûõ@ l“t¼j@ kÄЩ*@6p4mÅÖ8Á.„>¤µÜÆ@2GÎÙ‡+@1ýúCþ\’@1¹7KƧð@1jW§†Â&@1 ù kº@0³ä%®æ2@1 ù kº@0¾;Í5¨X@1 ù kº@1Òòä@8J¨?Á b¥—}/?Ã-ˆøº_?Á¯C :‡ò?Øþ¿ý†5}?Ì”ôJ>@(@8J¨?¸[:À|àQ?ÊË.%?Ír…£”?ǘ(ކßK?Ä%ÙÍ„ @8p÷?”É…ðoiE?–í +e˜›ð?›zYì3®?? ü‡—Üä?ô@éžî®@@@@,@$?ð?ð?ð?ð?ðøøøøøøøøøøøø @£¨öE¡ÊÁ@£¨íOß;c@£¨öE¡ÊÁ@£¨òT`ªe@£¨öE¡ÊÁ@£¨ô¼j~ú@£¨öE¡ÊÁ@£¨ùÎ_p@£¨öE¡ÊÁ@£¨ó×Ûö@£¨öE¡ÊÁ@£¨ñuŽ!–@¨Ò%`A‰7@¨Ò$›¥ãS@¨Ò%`A‰7@¨Ò'Ë)_@¨Ò%`A‰7@¨Ò& +¦L0@¨Ò%`A‰7@¨Ò$oi@¨Ò%`A‰7@¨Ò%o@¨Ò%`A‰7@¨Ò%m\ú­@8zqÞi­C@8{C•%@3«¥ãS÷Ï@3¬ú¬Ùè>@2Ë"Ðå`B@2Í:’£@1ÿò䎊r@1þ¸Që…@1ÿò䎊r@1ÿìVÕÏ«@1ÿò䎊r@1ÿªÍžƒä?гá‡}?‘€5{ºÎ#?•]˜P?ØTnçE?’Æ÷Xê†?‘6 '8?¢F^ì¼Sð?•yom?”Bœ<\ v?’GÎ>GÅ?’íßš?‘¡ë Þf?¤ŠíšÄ,+?\{ÏïŽ?†úŒz_–È?‡•ó¨–ˆ?‰Ü)@Jq«?‰]³ß’Ý@@@@@,@ ?ð?ð?ð?ð?ð?ð?S2¦O˜?/ýq¨?Wä±¶V=ß? ×Á@£¨ó™Xd@¨Ò$ÛU&v?xã^áã e?37ïßÑ÷?ð«=‹êç?^<–×i@Ÿn½è!^8@¡@¡gxQë…@¡gxQë…@¡gxQë…@¡gyM¼Þ[@¡gxQë…@¡gkŸúd@¡gxQë…@¡gW!Êçí@¡gxQë…@¡gaCqØÝ@¡gxQë…@¡gkÿÿF·@•Ç®zá@•Ìxéö©@•Ç®zá@•˜•@•Ç®zá@•Ë϶‰¬@•Ç®zá@•é¶Õ]@•Ç®zá@•·Xöû@•Ç®zá@•¨±×9@7>«6z@7 3ø÷ù¤@3uãS÷ÎÙ@3q}-Ð@2q‰7Kƨ@2ÔЭÅ@2Vý!ÿ.I@2g0ÏÐ-@2Vý!ÿ.I@2aâ +‹K°@2Vý!ÿ.I@2d1Hf" ?“x/0 ª?’‘a4ÅÞ¯?›•²’Æ›?—<é²–Wò?š|eˆÄP:?¡Ó!o “?~Ov_Ø­«?•xj~‚Á?“cG4W#?˜ð¢:˜&?–¹Œ¿Ú’?žÒ§|á +?¢a>1l¬?˜ÃÑ"ܰ?•Dô\e“‡?ž8É”Ó%.?œ*$]Ø+Õ?šu"I¢(@@"@&@*@7@:?ð?ð?ð?ð?ð?ð¿t`˜å¿^:÷?pÌ._+Ü?dåY ò™@¡ggírš@•ÅQlšô?€†ûµo?†zß¹Êî@!:@ü¼@ts¯$HR@Ÿh”¹ïÓ@¢@§m‚\(ö@§mc4åß@§m‚\(ö@§my­:.-@§m‚\(ö@§mŠb¡p†@§m‚\(ö@§mw£MÕ@§m‚\(ö@§mvA½A{@§m‚\(ö@§mtœ¿¨ö@“hbMÒò@“ho[Uï'@“hbMÒò@“h°;ˆà¾@“hbMÒò@“hÉØ‰Ø@“hbMÒò@“h¿ÞÓÈ@“hbMÒò@“h¸ö‘´@“hbMÒò@“hô'¿ù@8?–»˜È@80uä/p@4&‡+ J@4¤²[·i@3lj~ùÛ#@3R>ïІ@2Œ¿±[W?@2syÂÙZ9@2Œ¿±[W?@2hXÑ©;…@2Œ¿±[W?@2vÎ üˆ³?´C/àÐ?’jÒ¯•?—£‡;¯¡?Ÿ¡Wç§•?œ‚¶üí»³?žÆó©?­®£Õek?–Ón%»t?‘@^ó8"B?¨?ï¶„~? `øÒæ?Ÿõ2Òò?À1CWç6¤µÜÆ@1Œí‘hr°@1~Äk@+@1F“t¼@10gg£§U@0ž«6z‘@0ˆÿ€ÆÙf@0ž«6z‘@0‰£Ðy@0ž«6z‘@0‰Ë%ÿJ@8J¨?‘|ŒBnû‡?•üÎ?˜±w“J?“à¨e?’ý,XsGí@8J¨?“Fæ1ÚQ?’KcûŸUÿ?’ÎùïÛôÐ?‘mñwùÙ?Á–\qâ'@8p÷?%c+5 ?ƒ$4;›?ƒ¦/É>?†î§ZQêË?†ßÌ?€7Ô@*@,@,@<@:?ð?ð?ð?ð?ðøøøøøøøøøøøø¥@¬CŒIº^5@¬C‹Æ§ïŸ@¬CŒIº^5@¬C•%F +¦@¬CŒIº^5@¬CŒÌÌÌÍ@¬CŒIº^5@¬C“ê³g¡@¬CŒIº^5@¬CquŽ@¬CŒIº^5@¬CŒ~($ @¬#D“t¼@¬#K…¸Q@¬#D“t¼@¬#IùrF@¬#D“t¼@¬#;dZ¬@¬#D“t¼@¬#E¸Qì@¬#D“t¼@¬#C× +=p@¬#D“t¼@¬#A½¥@7™*0U2b@7ž±Ä2ÊX@3Ò Iº^5@3Ñ@N¤¨@3q‰7Kƨ@3oØ­«ŸV@2ãÉîËû@2ß±[W>¬@2ãÉîËû@2Ý\ú¬Ùè@2ãÉîËû@2Ü„µÜÆ??}Ñ¿ž,?”tcN~k?’‹»Ùï§?’³Žbtx=?•bJÖµæÿ?”"éã/åY?”¼íÒh??“¡ƒ[¤45?‘¡Kd·´+?”Â1`´?“‚Û£0Î¥?’µ~Yºì?¡D(¸ÿôn?àìÚJ>?†¼Š˜L¥ø?†ú#ѧ?‹Ûx§Þ?‘\,‚†!@@@@@&@$?ð?ð?ð?ð?ð?ð?D Ép¿_¿<r?MZWÉ ¡?)…ÚÕf½k@¬CØ%n&@¬#Eíñ¨6?q8œîc¬?GRDÚj?áˆã¥kû?…b‘¬7«@Ÿky–å@¦@§£@@§£>vÈ´9@§£@@§£>žš@§£@@§£>쿱\@§£@@§£;J#9Á@§£@@§£Bø7´¢@§£@@§£Aä÷eþ@£ X“t¼j@£ X“t¼j@£ X“t¼j@£ Z¹õY³@£ X“t¼j@£ Xâe,@£ X“t¼j@£ Y‡+@£ X“t¼j@£ Zxl"h@£ X“t¼j@£ ZÔ,<Ÿ@6½:’£@6»Í5¨Xz@2©‡+ @2©Ô•*™@1ÝV”@1Þ;Í5¨Y@1‘Þi­BÄ@1‘‰7Kƨ@1‘Þi­BÄ@1‘Þi­BÄ@1‘Þi­BÄ@1‘|ÚQ?€‚ñêã ?’Ç@Š)M?‘ojVrnû{Ñø~?“7ƒÆD +¹?‚á²Olºü?”ï©ÛÉ?‘t‰WZñ?‘< /0ç˜?‘–=û.e1?“ù|ö[ÿz?•ë þÅ?þxÖ?„ã¼ÓZ…ˆ?„2ÌôÏ?ˆ0&YÊEd?‡Õ˜]–GÄ@@@@@,@(?ð?ð?ð?ð?ð?ð?A%ã7¸?<ŠØ0?I é.q?é»õ*)‡@§£?*²€Œ@£ Y}Ÿ#¦?i{¯âq?8Þ²‰mÍÓ?Û-è畺?w&,ìYj@Ÿg‰\ñ¾€@§@®Š±&éxÕ@®Š–ê‹Ë_@®Š±&éxÕ@®ŠÑ ³Äö@®Š±&éxÕ@®‹_€A¦@®Š±&éxÕ@®Š¿ÀéÅG@®Š±&éxÕ@®Š¸G¾Ôu@®Š±&éxÕ@®Šª­‚œ@”ê‡+ J@”êÄW›‡Ñ@”ê‡+ J@”êŠ,U€e@”ê‡+ J@”êà‚‚2@”ê‡+ J@”êÏ図@”ê‡+ J@”ê¯ÂIëU@”ê‡+ J@”ê™}€£H@95S&Á¾@98Á^ø@^@3ør° Äœ@3àvÇá±@3²-V@2ç· ¼M«@2Þi­BÄ@1ö§An¢`@2Þi­BÄ@1í=Ŷ«Û@2Þi­BÄ@1ð+ª„à?—5ÅTêÚ?£®• HT|?¼ ='f?“u"˜L†‚?œ|¤¦.? Sj–±¶“?¬¤¶Î›Êô?™iå‚ùyš?·Ø´c‰Ž?¦À3…PD?žN‡´ä‚?§EYC:Ñ?Ì[hë¤ê ?˜M69!t¯?­NvÝ\b?†%&P)?›@›g¤ƒ?¡óÝYâ4–@@ @(@&@5@8?ð?ð?ð?ð?ð?ð?yɦÄ¿s¯nË?vNU º\?g²é©Èæ@®Š³všÕ @”ê·áÐt8?“s"®ZO?Â7†÷‰@[SY·õï?ÖgS{´¢ó@Ÿm„)kØ@¨@¦WRn—PÁ.„€@¦WRn—P@¦WR•éá²@¦WRn—P@¦WR×s@¦WRn—P@¦W]²-V@¦WRn—P@¦WUŽ!–S@¦WRn—P@¦WVlô!@¤¼Æ$Ý/Á.„€@¤¼Æ$Ý/@¤¼Ðå`A‰@¤¼Æ$Ý/@¤¼Ö_Ø­¬@¤¼Æ$Ý/@¤¼ØüPH@¤¼Æ$Ý/@¤¼Ûô‡ü¹@¤¼Æ$Ý/@¤¼ØDЩ@5Ñ|ÚQÁ.„>¤µÜÆ@1Ê^5?|í@1ÄSŽóMj@1ï²-@1hÛ‹¬q@0æYJôðØ@0Öz–¼@0æYJôðØ@0ׯ·é@0æYJôðØ@0Õzxl"h@8J¨?“Ãruöò²?•™Þ õ?’ñ¼wn-?Ÿ0 碽ü?£6|Obœ@8J¨?˜s˜»ì•?™0˱Á[©?”¡VòÄ\F?¤•éõ9ð?¢cšŠ5W@8p÷?iT£C~t?†úŒz_–È?‡¯½.SM?‹DVóö?Š|)-}í(@@@@,@*?ð?ð?ð?ð?ðøøøøøøøøøøøø©@§Öéûçl‹@§Öß¾vÈ´@§Öéûçl‹@§Öý}¿H@§Öéûçl‹@§×ÏAò@§Öéûçl‹@§×_oÒ@§Öéûçl‹@§Öú¬1@§Öéûçl‹@§×8ï4×@£óRñ©ûç@£ógl‹C–@£óRñ©ûç@£ó_Ë’:+@£óRñ©ûç@£ó_|í‘h@£óRñ©ûç@£óY0¾ í@£óRñ©ûç@£óc9Àëî@£óRñ©ûç@£ów€4mÆ@8?–»˜È@8A [À7@3sS÷ÎÙ@3kÀ6âë@3†“t¼@3|àuöý"@2Š0U2a|@2€ƒn—Ž@2Š0U2a|@2xè§æ›@2Š0U2a|@2lÚQÎ?}Ñ¿ž,?¥d`ÿwªÁ?¡P ÚI?—³Q+Ùv?šxœÏs´i?²’ñZ¶­˜?´Žé`m?¡–}y¢‘?™äú‚#ë?—QÀ–Íù?•’nî …?±aG=)? T®ãÌ…æ?*øT?‘yÃúCŠ?¥k2ïm?‘ÔþÆvI‡?§k‰ K)@@@@@(@,?ð?ð?ð?ð?ð?ð?‚ÿÅ!!@?rkh?gØøGê1?r9zP[ÀÐ@§Öüi÷´@£ó^ºš»ˆ?$#™W?¥íKd½>@v•f‚K?ãÈtYØú}@ŸmeBÐ%V@ª@¨”r-VÁ.„€@¨”r-V@¨—ß;dZ@¨”r-V@¨˜Em\ú­@¨”r-V@¨˜4ê@¨”r-VÁ.„€@¨”r-V@¨—•%F +¦@¢:=ó¶E¢Á.„€@¢:=ó¶E¢@¢;Â3œ¿@¢:=ó¶E¢@¢<“×Ûõ@¢:=ó¶E¢@¢¤µÜÆ@3c÷ÎÙ‡@2%ÜÆ?@2ñ‰7Kƨ@1žOv_Ø®@2=cˆe”°@1 Ùb¶®@2=cˆe”°Á.„NÜC,¥@2=cˆe”°@1…¡ÊÀƒ@8J¨?Þ°ôÕrQÅ?à†áz˜œ?Ý|ËJA]@8Iç?ÜØ/8èJ@8J¨?ÜŸ¯~Œyv?ã?p…—ç?åäÒÕà @8S?ã–`uý%l@8p÷?“&•Z÷˜#?’-BR1Å?¦wfà*-n@8 Ø?ø<È͸÷R@@@@,?ð?ð?ð?ðøøøøøøøøøøøø«@§‚o²-@§‚o²-@§‚o²-@§‚pý\@§‚o²-@§‚p?q`@§‚o²-@§‚pÎE@§‚o²-@§‚n¾¾k]@§‚o²-@§‚n® -¯@“Ïñ©ûçm@“Ïò-V@“Ïñ©ûçm@“Ïî—Z™š@“Ïñ©ûçm@“Ïò \@“Ïñ©ûçm@“Ï¼î@“Ïñ©ûçm@“ÏñžiÛŠ@“Ïñ©ûçm@“Ïò ô@3^Hè§æ@3^1xT²@0?|í‘h@00j+@.ΗOß<@.Î…ªVGL@.=Vlô"@.<¬kÛÏ(@.=Vlô"@.=e d`@.=Vlô"@.=?qÍrK?|¬h2:“?Ís§#?‘&„µ<àa?‹¦p¤?ôÄ ¬Oö?Éâ¦JV?|Ñb×¶@?’+ñßK"?!òEu?-õ=k™ž?Ö“jø?{p²}¸?‚†µ”g¬?Œ­Œl³J?‚{›ÜL’‚?‚â†Æ„µT?†–äÙ¼?†š·8˜ë @@$@&@@8@8?ð?ð?ð?ð?ð?ð¿#ÿ*¿ga‚?!YâR?"lÛßù@§‚oaWœ<@“Ïñ¢Ð[Ä?A­?OÎ?B½8)„®§?¸Sß7?’HK’°?@Ÿfði¯r@¬@®œÒñ©ûç@®œÒ° Ä@®œÒñ©ûç@®œÓœ¾ß@®œÒñ©ûç@®œÓê³g¡@®œÒñ©ûç@®œÔSŽóM@®œÒñ©ûç@®œÑÑN;Í@®œÒñ©ûç@®œÑ‚©“ @­‡+@­Ôýó¶@­‡+@­~ÿ–@­‡+@­5?|î@­‡+@­Ùb¶@­‡+@­ @­‡+@­&YJôñ@4쿱[X@4ߤ?åÉ@1ã÷ÎÙ‡@1á-w1Å@1lj~ùÛ#@1h­«ŸU›@1xDЩ*@1qhr° Å@1xDЩ*@1o!-w1@1xDЩ*@1q$Ý/?|öOÿÝ?‘j`cq?•Mq —¦?Œj6_?˜h†5+P?—ˆZêtü?|öOÿÝ?”¤P ƒË?—›P“o-?½¶³±×ò?™ïIÄè?ŸaùÓH?‚† SFñ?R©i»èi?…~ÆÎÇ$‡?ˆ6‘F:™Ê?‰Â“yä–ê?£ªS@Gd·@@@@@$@*?ð?ð?ð?ð?ð?ð>ÙË1X?aÕŠ5h?5˜Y£*¤?5É…]·A„@®œÒÛ~òÈ@­µ_%X?S@œTTF?S9÷ñþ—á?°·òpB’(?©›ÿ—Zà@Ÿd"nŽÄR@­@§ã²-V@§ãçl‹D@§ã²-V@§ã 4mÅÖ@§ã²-V@§ã#¼ÓZ†@§ã²-V@§ãb¶®~@§ã²-V@§ãHË’@§ã²-V@§ã—ö+k@¬)‰7KÇ@¬(þ5?|ï@¬)‰7KÇ@¬(ø_ö“@¬)‰7KÇ@¬(úu%F@¬)‰7KÇ@¬(þBZîb@¬)‰7KÇ@¬)›¥ãT@¬)‰7KÇ@¬)·€4n@7–šÔ,<Ÿ@7‘A [À@3áhr° Ä@3à@36§ï²-@32MÒñ©ü@2fYJôðØ@2jCþ\‘Ò@2fYJôðØ@2`–»˜Çã@2fYJôðØ@2`oiDg8?š•§q!U?’ñ¼õì?•]˜P?‘ƒZ)Àˆ?“K–ºé…/?•¿!— ö?žŒÝÙ›P?–ÖÀeªw?“Lé94?™Ücãgp?–žóB» ”?—vÑékÜ?‰ì ª# Ø?ŽõÕJ?ޏQë…¹?†¤c·Ó—1?ŠEÝ‹N?‹ì3åý@@@@@,@,?ð?ð?ð?ð?ð?ð?6H"gH?M…Ó¬ ?@ò¬]F[4?NÈ,¨>@§ãdqtÜ@¬)½W*ê?ZËά]?h÷„”~ÒÐ?ª,˜Õ3’?¿3-7¯O@Ÿmè»>@®@«<í‘hs@«<í‘hs@«<í‘hs@«=ÌcñA@«<í‘hs@«=Ùb·@«<í‘hs@«>š@«<í‘hs@«<64@«<í‘hs@«;²þÅm@¨ìŸQì@¨ìŸQì@¨ìŸQì@¨ìÅ+ÓÃa@¨ìŸQì@¨ìÅÉã@¨ìŸQì@¨ìÅm\ú­@¨ìŸQì@¨ìÅm\ú­@¨ìŸQì@¨ìÅ`A‰7@/j¦L/ƒ|@/j¦L/ƒ|@+žùÛ"Ðå@+žùÛ"Ðå@+¿;dZ¬@+¿.Hè§@*æL/ƒ{K@*æs×Ûö@*æL/ƒ{K@*æ?»@*æL/ƒ{K@*æ1ø .?É^žQ5P‚?Òç{íj?‘ÌË>¯f?‹²MÿAÿ8?îú/´`?¶*WFÑ?ÐbMçê_x?’#maЀ?ˆ9²0?>\‰å‘?ÚÌA B{?NÂò‚Ì`?€bMÕky?Œ¬Çëý ?‚|׿pZ?‚äÍ“½E'?†l&þ?†–f_ÔŠŠ@@@@@,@,?ð?ð?ð?ð?ð?ð¿QT«ÀV¾ôh5 ?+‡bTÍw>í"¸vF”@«<Ñ–ûf@¨ìÅi]M8?:zÊù¶~¬>û”Ú¯”¨’?q8ý¼=T>ð£­ÌÌ>@Ÿs ÌA0å@¯@§§ûçl‹D@§§ûçl‹D@§§ûçl‹D@§§ûçl‹D@§§ûçl‹D@§§ûô‡ü¹@§§ûçl‹D@§§ü£n/@§§ûçl‹D@§§ûÍ5¨Y@§§ûçl‹D@§§û²þÅm@­¨;dZ@­¨;dZ@­¨;dZ@­¨¼@­¨;dZ@­¨HË’@­¨;dZ@­¨|í‘h@­¨;dZ@­¨oÒó@­¨;dZ@­¨—$tS@.­5¨Xy>@.­5¨Xy>@(v“t¼@(v4êJ@(dZ¬@(~ÿ—%@&”`ªdÂù@&”mÅÖ8‡@&”`ªdÂù@&”mÅÖ8‡@&”`ªdÂù@&”`ªdÂù?É^žQ5P‚?ÉGãA­÷?‘ŸÇSñ?‹²MÿAÿ8?ëÎ@ A2?¸û:?ÐbMçê_x?’˜‰%F²?ŠA)Nîá?/ò×ÈZø?Ñ¡b£?¾?R g!Ú¢?€bMÕky?Œ¬Çëý ?‚oÁÆÜ§÷?‚ãaÎúvh?†ˆ#.÷?†ˆ#.÷@@@@@,@,?ð?ð?ð?ð?ð?ð¿!]%d ?pÂO`>ò8#L8e?•ß©•~@§§ûÚY¾$@­¨€_~[?„Ó!çÑ_?ˆzÔîG>þ'úÖ;½?)‰Eì1œ@Ÿsò åª@°@¦£ð£× +=@¦£÷ +=p¤@¦£ð£× +=@¦£óÃa@@¦£ð£× +=@¦£ðHð@¦£ð£× +=@¦£ïŸ¾v@¦£ð£× +=@¦£ó&Á¾@¦£ð£× +=@¦£ö+jçÕ@ žë Iº@ žðå`A‰@ žë Iº@ žæ¸ºÈ@ žë Iº@ žìô!-@ žë Iº@ žæ€IS@ žë Iº@ žà4mÅÖ@ žë Iº@ žã¼ÓZ†@8è†YJôñ@8êxl"h +@3û Iº^@3ù¦µ (@3Ðå`A‰@3Xâe,@2µµsê³h@2¶âëC-@2µµsê³h@2´¯O „M@2µµsê³h@2³a@N¥?¤I~Óy‘?“+ÄWè?’÷˜–Èä?“1ÕËt?•Äí¥×?’ß5n?Ñ[NÑé#é?ѱRÇC@Ÿn¤Pwã@±@©ØbMÓ@©ØQë… @©ØbMÓ@©×éùr@©ØbMÓ@©ØFÜ]@©ØbMÓ@©Ø7´¢3@©ØbMÓ@©Ölô!@©ØbMÓ@©ÖÈ´9X@¦]þùÛ"Ñ@¦]ÿ|í‘h@¦]þùÛ"Ñ@¦]þÒˆÎp@¦]þùÛ"Ñ@¦^'RTa@¦]þùÛ"Ñ@¦^'RT`@¦]þùÛ"Ñ@¦]ÿò䎊@¦]þùÛ"Ñ@¦]ÿåÉ@4­¥œàv@4­ÌcñA @0sS÷ÎÙ@0sS÷ÎÙ@0'KƧïž@0'süPH@.ð‰ 'RU@.ðå`A‰8@.ð‰ 'RU@.ðØDЫ@.ð‰ 'RU@.ñ&éxÔþ?|öOÿÝ?Ï[äe+@8Iç@8Ù?©W»¥ÿ$B@8Î÷@8i§@8Å@8S@8û—?§ Tò"Å@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø³@«ˆâÐå`B@«ˆù_‡Š$@«ˆâÐå`B@«ˆÒ{çmK@«ˆâÐå`B@«ˆÓn—Ž@«ˆâÐå`B@«ˆÜXU~½@«ˆâÐå`B@«ˆÜCV@«ˆâÐå`B@«ˆÖø]@™#|í‘hs@™#†d@y£@™#|í‘hs@™#o!> V@™#|í‘hs@™#jhKÉI@™#|í‘hs@™#ƒ: ù@™#|í‘hs@™#vÏ=šŸ@™#|í‘hs@™#‡øÝy@8„¯O „M@8tÅ*wc@4+ Iº@4àÆÆÐL@3 ²-V@3 5K'y@2£ÉîËû@2άÝÄB@2£ÉîËû@2¢zjL,@2£ÉîËû@2›­ÑΊ?š7¼ˆŒ ?’heÀSœÕ?‘®]|ޝ??‘w•ìõ?“ûä)6?˜gV„ä?—5ÅTêÚ?” µ9~ç?‘ãÐös^q?×äÈÝ ?”(?†ŠúЀ>(@@@@@,@*?ð?ð?ð?ð?ð?ð¿[¶J>û, ÞÀ?:+¦ÇÖ/?*f£~V@¢~óq#é¼@­4n¬6,?I?–‡Âýþ?–išî³[?Ž™ú»Ì ?4d¿µ{ü²@Ÿs '˜Í…@µ@®Y²° Äœ@®Y²ñ©ûç@®Y²° Äœ@®Y³¶E¡Ê@®Y²° Äœ@®Y³ê³g @®Y²° Äœ@®Y³Ý—ö+@®Y²° Äœ@®Y°ò{³@®Y²° Äœ@®Y± ²•ê@¨Jú^5?}@¨JôzáG¯@¨Jú^5?}@¨Jú^5?}@¨Jú^5?}@¨JúîcŠ@¨Jú^5?}@¨Jú’£S@¨Jú^5?}@¨Jú¬Ùè=@¨Jú^5?}@¨JúCþ\’@5ý:’£@5ù­BÃÉï@1’ Iº^5@1‘ò×s@0È“t¼j@0Èï4Ö¡b@0‡ ù kº@0‡®záH@0‡ ù kº@0‡ÈK]Ìd@0‡ ù kº@0‡»/ìVÖ?1·†Æjñ?W[†?‘âTÀÊS“?Aš%ðï?‘@@Nßo9?æöæ×t?–ªÎ­¡?’j•×›c?‘C\ºÕ¶?]bËn~?‘c3¸cÜ(?«àÓ RÆ?œÁXÙðÿ?Å9–o?ƒ{¬ÉW?ƒ=rµE=?†Ë¢L1Ù?†å·ÑfWà@@@@@,@*?ð?ð?ð?ð?ð?ð¿50ýú0?QÀ·&?2.ÏrŸÇP?AÝ ¾Ÿåx@®Y²0àC‚@¨Jù.• Î?TåP˜ùa”?]Nᩨ?°‹½7Ñ“Ž?´¢íoRf«@ŸloN‚|D@¶@¢ë-V@¢ë0bMÒò@¢ë-V@¢ë,²•éâ@¢ë-V@¢ë1N;Í5@¢ë-V@¢ë2•éá±@¢ë-V@¢ë*³g ø@¢ë-V@¢ë14êK@¤Åüj~ùÛ@¤Åú¬0@¤Åüj~ùÛ@¤ÅùÛ"Ðå@¤Åüj~ùÛ@¤Å÷ +=p¤@¤Åüj~ùÛ@¤ÅüC,¥z@¤Åüj~ùÛ@¤Åý¿HÌ@¤Åüj~ùÛ@¤Æ·€4n@7¯O „M@7§ï²-@2ðÄ›¥ãT@2í¿HË’@2v§ï²-@2t9XbN@1³&Á½¥@1°-à r@1³&Á½¥@1°ù k¹@1³&Á½¥@1®Ov_Ø®?˜ž^ƒÿ*ˆ?­hX™*?”ÓKÒì"?ŒÇQ´«6@¯ó(õÂ@¯ó!ä÷eþ@øß;dZ@øæéxÔý@øß;dZ@øà'RTb@øß;dZ@øß;dZ@øß;dZ@øç8}À@øß;dZ@øà qu@øß;dZ@ø×Xâf@6[¹Œ~($@6[²þÅm]@2óS÷ÎÙ@2ó× +=p¤@2v§ï²-@2všÔ,<Ÿ@1õµsê³h@1ö‡+ J@1õµsê³h@1õ¼£n/@1õµsê³h@1õ '»0?|öOÿÝ?‘" Á°–•?–Èó^ù„?‹û…†_?’?;Áƒè?ø·-/ge?гá‡}?“?xr¢I?”¿?>‚#§?ª/íÈ«?’êJ>áý?·t¤¢‚K?„‘Za¹P?Ž*JŠË?†' +³}÷C?„l¯¸‰ŒÎ?‰®ââP\?ˆ0&YÊEd@@@@@,@ ?ð?ð?ð?ð?ð?ð?Ovíq ¿Uòʼ??ÀÔ>$Yb?DÒbHŒŠ@¯ó"õ} +@øâõÕ +?`ò¢w?dYãg{÷?Éí¡ì¹Ó?ÉÎzä­@Ÿis·Ò¦@¸@¥§«…¸R@¥§ª³g ú@¥§«…¸R@¥§ª+Õ¢{@¥§«…¸R@¥§«¸0T@¥§«…¸R@¥§¬€kQ@¥§«…¸R@¥§©…x E@¥§«…¸R@¥§ªÒ"NÑ@“ÐaG®{@“Ð`A‰7L@“ÐaG®{@“Ðd–U>@“ÐaG®{@“Ð`ä ˜o@“ÐaG®{@“ÐdYÄœP@“ÐaG®{@“Ð`\A ’@“ÐaG®{@“Ð`sŒÖÑ@5àØDЩ@5àæ¤:è@2+ Iº@2Îóƒ@1M²-V@1N1ø .@0°–»˜Çã@0±w*hÉ@0°–»˜Çã@0°rÆ~_ˆ@0°–»˜Çã@0°ºÉr n?|çµB &€?A«IžÕ?‘º3)½?‹È]SØ&n?‘BŸcõ^?ÚÉMõ‚L?~ì“?ÕÒJ?’bãsÊâí?‘e`Ф?-õGBžö?‘x;¸qÎ?s Ge©í?„”v,ÿ«?‹m$ˆf?‚ç…š(´®?ƒ {7?‡,G]ÜLk?‡43#õC@@&@&@"@8@3?ð?ð?ð?ð?ð?ð>øìâ¹?Àq›p?3ҌLJ‹m?/¨áǦû@¥§ªæïàš@“Ð`ÿ0ÿu?SÒûB)¤?P œíJG?µ{ÕX„\?©—Ü"çßp@Ÿg2± 3Ÿ@¹@ ÿéxÔýô@ ÿé7Kƨ@ ÿéxÔýô@ ÿëvj@ ÿéxÔýô@ ÿì–ZÎ @ ÿéxÔýô@ ÿì d@ ÿéxÔýô@ ÿçwžZ@ ÿéxÔýô@ ÿçÝe}Ÿ@ªÁvE¡ÊÁ@ªÁw +=p¤@ªÁvE¡ÊÁ@ªÁw~ï[ä@ªÁvE¡ÊÁ@ªÁwõtÏ@ªÁvE¡ÊÁ@ªÁwWå@ªÁvE¡ÊÁ@ªÁv-N$Õ@ªÁvE¡ÊÁ@ªÁvñ_@4Ç>«6z@4ÇÏL§Ð<@1ÎÙ‡+@1;kšüb@0;Ƨï²@0U;ÌX@ ÿé;×rð@ªÁv¯f?`)êËÏ µ?2“}sûX¹?ÌŠ‹•sJC?qÿs°XXì@ŸfòÆWy@º@¥ôÌÌÌÌÍ@¥ôÌÌÌÌÍ@¥ôÌÌÌÌÍ@¥ôÍ\ú¬Ú@¥ôÌÌÌÌÍ@¥ôÎV“@¥ôÌÌÌÌÍ@¥ôÌ¿±[X@¥ôÌÌÌÌÍ@¥ôÌVÕÏ«@¥ôÌÌÌÌÍ@¥ô̲•éâ@£;Ÿ;dZ@£;Ÿ;dZ@£;Ÿ;dZ@£;ž5?|î@£;Ÿ;dZ@£;žÒˆÎp@£;Ÿ;dZ@£;ž«6z@£;Ÿ;dZ@£;ž5?|î@£;Ÿ;dZ@£;žžš@5(†YJôñ@5(ºÇË*@1» Iº^@1ºû~ÿ—@0îùÛ"Ðæ@0î쿱[W@05µsê³h@05µsê³h@05µsê³h@05ÜÆ?@05µsê³h@05®æ1ø¡?€‚ñêã ?]àÛ‘?‘4!Ÿ•p’?Œ‚èõЊ?‘1 °µv¦?æöæ×t?€‚ñêã ?’`5žña?ŽËÜ¿€?Ä…à6 +æ?‘&”T¦mÂ?›ªU3Îp?ˆ©CwBÅÉ?)‰€Zw?ƒ{¬ÉW?‚ð'ã:ÂÝ?†Óß +tõ?†Ü‘ °Ô@@@@@,@*?ð?ð?ð?ð?ð?ð¿ +¨€¿&æ¦i€?ŒÃI +3? Cq÷N®@¥ô̯¤Žp@£;žÎæ+(?%œf{yr„?.&ƒ ‹tg?VP¸-"Ê?d–sl\@ŸgÙQc¨@»@ ±E¸Qì@ ±E¸Qì@ ±E¸Qì@ ±FD1‚û@ ±E¸Qì@ ±F2w—@ ±E¸Qì@ ±F“?tþ@ ±E¸Qì@ ±D£ù B@ ±E¸Qì@ ±D¿ízÝ@¢Á‰7KÇ@¢Á‰7KÇ@¢Á‰7KÇ@¢Á[‚ç*@¢Á‰7KÇ@¢Áaä÷f@¢Á‰7KÇ@¢ÁqŸ@¢Á‰7KÇ@¢Á(åý@¢Á‰7KÇ@¢Ác1@1žHè§æ@1žYâ:F@*á‰7Kƨ@*áA [À@)cn—P@)b¶®}Vm@(…oi@(„¨ÁTɆ@(…oi@(„•*™0@(…oi@(„™Ì¢Ü?É^ÈmÔ d?ų6¨¹?‘tÂÍu?‹®úÄD?æ°Ù1%(?¼üï?ÐbMÝn½?’ +i*.˜I?~4pŽU?/ˆ´¯éd?Ía´ï?M›)á?€g"ÆeÖ)?Œ­‡¡ÑSg?‚p„æÁ7?‚ã9©wTÍ?†ˆ=„Ì>(?†ˆâ3`±†@@*@,@,@2@5?ð?ð?ð?ð?ð?ð¿Kw0‡,¾ôR÷,€?4;W·ñ'‰? .ü²‘¤@ ±Et†CÞ@¢Ávq?CrSyœ`±?§Ý@íì?‚—sQº ?(™ÊÔ‘@Ÿsý”Ø@¼@«4nzáH@«4b Iº^@«4nzáH@«4†$Ý/@«4nzáH@«4~š@«4nzáH@«4;dZ@«4nzáH@«4z¬1@«4nzáH@«4€A‰7M@§ëTýó¶F@§ëy‡+@§ëTýó¶F@§ëb\(ö@§ëTýó¶F@§ëJŒL˜@§ëTýó¶F@§ë[~ÿ—@§ëTýó¶F@§ëT9Xb@§ëTýó¶F@§ëYÎ_p@9|ÚQ@9›=ÈK@4f‡+ J@4PØDЩ@3çKƧïž@3Öö”Fs‚@3Œ~($ @3ð¹@3Œ~($ @3¼£n/@3Œ~($ @3÷ÎÙˆ?£G± *Ç‚?›ŽÊ–SS? +*¢«¸u?’m’‹}©9?•³™»7…?–+‚`N?­g;+³ût?¬—ÔŒ,¾?¢W@3tå²?•Œ ;qí?”Þ¨Ëèoé?•)ALŒÀ%?°#ÃIÓ¨&?Ÿ$Ìj½BÙ?›bO—ç†?Ž3lê]0?”NtyÞ"§?“aÑ#@@@@@$@$?ð?ð?ð?ð?ð?ð?qeH4€¿p£k[œ€?h@ÝB_“?i°_ø¦Rz@«4{tRËØ@§ë[@드?€g w¸¹?W9Mj)?ðê™ä¤?é 0ã¸Ë@Ÿp erd@½@¤49Xb@¤/ß;dZ@¤49Xb@¤ÕfÏC@¤49Xb@¤G®zá@¤49Xb@¤·éù@¤49Xb@¤TÒ=¦@¤49Xb@¤uûZ@œêËÆ§ïž@œê×W˜;@œêËÆ§ïž@œê™‡+@œêËÆ§ïž@œêÔ,<žî@œêËÆ§ïž@œê`ù k»@œêËÆ§ïž@œêi]  @œêËÆ§ïž@œéx>G@77â‚@·€@7ÖŽÜ@2sS÷ÎÙ@2@å`A‰7@1Ͳ-V@1·Xâe@1QÞi­BÄ@19…ðoiD@1QÞi­BÄ@1*Û›–ؽ@1QÞi­BÄ@11ÄDíŒà?’Á ˆ|Ί?ÁgÿV¼)¢?®´ËÄt|*? Ð ÷Ž ?š€t]½2?‘;Xïbá?€Z=ú‚¡?ÀLí}ŽÄ?° @çSº¤?“ÅÒÏPÉä?œ•™sù8:?¦ß¼K?Œ@#‹£ôˆ?ª»‡¾X{?ÁeðN ?¤wúb¼?•˜Ùõé=?‰gØ;d7@@@@@0@,?ð?ð?ð?ð?ð?ð¿p_<~€¿—(×é@?p}ìbM#?{lRPÛp8@¤¾^nÜ@œêpžñ©å?Žù_§•mT?œQOÍ6Ûì@¡lh.@,ù±T6Z@Ÿgà-MN@¾@©+ƒn—@©+ƒS÷ÎÙ@©+ƒn—@©+‚\(ö@©+ƒn—@©+„“t¼@©+ƒn—@©+ƒn—@©+ƒn—@©+ƒS÷ÎÙ@©+ƒn—@©+|í‘i@¯r¹XbN@¯r¹™™™›@¯r¹XbN@¯rº^5?}@¯r¹XbN@¯r»dZ¬@¯r¹XbN@¯r»dZ¬@¯r¹XbN@¯r¹‡+@¯r¹XbN@¯r¹Û"Ðæ@3m¥œàv@3m¥œàv@1³S÷ÎÙ@1³&Á½¥@1_²-V@1^«6z@0…œàu÷@0…oi@0…œàu÷@0…m\ú¬Ú@0…œàu÷@0…%F +¦L?1·†Æjñ?ð}óßd?ð’FB:?ð_ŒB?éDEâ©×?À­Õß}º?|öOÿÝ?ð¢dx/?ð‡äR³s?ð‚àÓÁ?ÏtP°*?ˆ9²0?‚nâwfÿ?ðfÁbÂô?ð*wjs—?ð,’Ú|‚?†Ü‘ °Ô?†‡+œC@?ð?ð?ð@@?ð?ð?ð?ð?ð?ð¿@;Poü¾ìÓæ¢?4Ï¿Zˆ#²?­l‚Ý(@©+‚]%5þ@¯r¹öL,?VYYª9ø ?4sá tØA?´—Ÿœ*»&?r`ŠrÅß:@Ÿfjhßèu@¿@¯4åãS÷Ï@¯4áÊÀƒ@¯4åãS÷Ï@¯4æÀ +õ@¯4åãS÷Ï@¯4ã(SBl@¯4åãS÷Ï@¯4ålZÞA@¯4åãS÷Ï@¯4ãSézŒ@¯4åãS÷Ï@¯4ã•>н@™\¿|í‘h@™\¿|í‘h@™\¿|í‘h@™\¿óxR@™\¿|í‘h@™\¾© 8M@™\¿|í‘h@™\Äžýn’@™\¿|í‘h@™\ÂGX»ß@™\¿|í‘h@™\à ph@7+µsê´@72n—Oà@3ahr° Ä@3`ÙÜØË@2Õ`A‰7L@2Õ½Wç³@2«6z‘@2¸Sÿ‘¸@2«6z‘@2­6ƒ¿:@2«6z‘@2± +Vh)?„`™ˆ/.~?ð å??‘œ‚L +v?Œ0Eke?‘©×„Ç¿?‘ùÛCF?‚n—OߤµÜÆ@4¸r° ÄœÁ.„M‰ûçm@3Æ“t¼Á.„QnÙ‡@3L¿±[W?Á.„NÜC,¥@3L¿±[W?Á.„NÜC,¥@3L¿±[W?Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøÁ@£ß[¥ãSø@£Þ¦E”þ§@£ß[¥ãSø@£ßZHe8@£ß[¥ãSø@£ß»§ S³@£ß[¥ãSø@£ßO™N@£ß[¥ãSø@£ßEàÒÇ@£ß[¥ãSø@£ßOšÑ’2@š:D›¥ãT@š8úáG®@š:D›¥ãT@š:­S[@š:D›¥ãT@š:‹AѦ@š:D›¥ãT@š:’¡p@š:D›¥ãT@š:ypÙ‰$@š:D›¥ãT@š:”UàÐ@7” xFÜ@7I×Ü“7W@2ý‘hr° @2òs¤¥Í‡@2F“t¼@2A¢Á±‹@1úÔ,<ží@1ð·tqß–@1úÔ,<ží@1÷4~“1@1úÔ,<ží@1ö]ZNh?ݪû†îíø?Ÿýå‘:«?žÌñé‘ÝÌ?’§éŸÏƒ2?’ +4:è~?–`åXÅ÷O?Ü-Õ¸6?¬8%¢Š?”XˆhÉÊÿ?“ýp¼Á€á?•, Gq]?¤E?¹#Ÿ?Þ ‰ ­>Ë?¡I|[ôO¿? •B%M‹?›uS1‹**?™ÒÖ¦Ãbð?–’ã0¸Už@@*@&@$@.@7?ð?ð?ð?ð?ð?ð¿Eð•ª?fÄ-Ö?tr‚¼»à_?wäT“ŠÔ@£ßK„4ä«@š:ª˜’Ä?‚B±?+òi?ƒ†ƒÔBl"?ôãžB¾ŠA?ï¬!ñlëÇ@Ÿr0ulÙ@Â@©‘t¼j@©‘t¼j@©‘t¼j@©‘ +=p¤@©‘t¼j@©‘+jçÕ@©‘t¼j@©‘âëB@©‘t¼j@©‘÷ÎÙ@©‘t¼j@©‘>«6z@¯ ,1&é@¯ ,Iº^5@¯ ,1&é@¯ /²-@¯ ,1&é@¯ /v_Ø®@¯ ,1&é@¯ 1&éxÕ@¯ ,1&é@¯ .V“@¯ ,1&é@¯ *™0¾@7}:’£@7ƒþ\‘ÑO@4}‘hr° @4zqÞi­B@497KƧð@45+ÓÃa@2ÜÚQÎ@2ÚJŒL™@2ÜÚQÎ@2Ù…ðoiE@2ÜÚQÎ@2Ú#9Àëî?€‚ñêã ?•tæïá,•?¤.#ÓYæ?’úˆ_šª?ôê÷º»â?“‡SË{d—?”¼íÒh??”ŸÚ²t©?—cG‰‹o?•†¾N6?‘+ùÔ!½‹?“ÛKÂè• ?‹´¡`Ƕà?–ÞqëJ??¡ÏEqû†»?ˆx»€ñö2?‡×7°º?‰®ââP\@@@@@@?ð?ð?ð?ð?ð?ð?B»ß90¿'³Ãžð?7¨¾º™°¨?MÇ¿tÿF³@©‘ ƒ@¯ -¢ *?[…¯‘oT?jköK > ?·§Jó© ?̧£Eе@Ÿk‚HaÞ@Ã@­Ð0 Ä›¦@­Ð1©ûçl@­Ð0 Ä›¦@­Ð0å`Aˆ@­Ð0 Ä›¦@­Ð0:û~‘@­Ð0 Ä›¦@­Ð7Oß;@­Ð0 Ä›¦@­Ð7>«6z@­Ð0 Ä›¦@­Ð:QÎ@¬e¡ÊÀƒ@¬e»"Ðå`@¬e¡ÊÀƒ@¬e–È´9X@¬e¡ÊÀƒ@¬eޱÄ2Ë@¬e¡ÊÀƒ@¬e›À6ã@¬e¡ÊÀƒ@¬eŠôðØE@¬e¡ÊÀƒ@¬e“3333@8Bò䎊@8@ quŽ@45ãS÷ÎÙ@4.¸Që…@3¾V“u@3º=p£× +@3\ÚQÎ@3XXy=Ù€@3\ÚQÎ@3JçÕfÏB@3\ÚQÎ@3JÀƒn˜?“Æ×q„nï?‘u:|ñ²¨? AoÈöxÎ?‘ÔþÆvI‡?¡Á1ÈBZí@­H1&éy@­Fs×Û@­H1&éy@­Hð@6Ñ|ÚQ@6иºÇ@3›¥ãSø@3 Ä›¥ã@2±‰7Kƨ@2®;Í5¨X@1«xFÜ^@1ª–»™@1«xFÜ^@1©e+ÓÃa@1«xFÜ^@1¨Xy=Ù€?|öOÿÝ?‘‹PƧ¢$?”4 bà5?‘£ºáõÑ?’êÔÒ?”"éã/åY?€‚ñêã ?—Œ,T®?’€fç½Î?“P?Bn¬F?“¹ ¾´î?“IëH!w?„W;RS?Ž•ýÙ—±?‡š¿]b?ƒ­=aÊw%?ˆ©{2¡Î?Ž•w “w„@@@@@*@*?ð?ð?ð?ð?ð?ð?<<пHÒö~X?J,!zv?,ç=Ú”'@£ì =ƒ@ŸfbOm™Ë@Å@¡àÄ›¥ã@¡àÄ›¥ã@¡àÄ›¥ã@¡á!îgQ@¡àÄ›¥ã@¡áBöÕ@¡àÄ›¥ã@¡áe/ƒ@¡àÄ›¥ã@¡à·óèä@¡àÄ›¥ã@¡à 1óu@¬ùl1&é@¬ùl‹C•@¬ùl1&é@¬ùkë1@¬ùl1&é@¬ùl9¾]5@¬ùl1&é@¬ùlm0Ìö@¬ùl1&é@¬ùl“Æäz@¬ùl1&é@¬ùl‰¡É@.V+jçÕf@.VOv_Ø@*™Û"Ðå`@*š“ò«µ@+éxÔýô@+Xâe,@*­úCþ\’@*®ç°¹Î@*­úCþ\’@*®—Oß<@*­úCþ\’@*®µ×>r?É^ž6õP?Â\ófú?‘ØÆì2k?‹´ø:M€ß?éÁ¬èš?¸= +éÑM?ÐbMÝn½?’ q“Àb@?±¸Øÿ?5ߨ“¹?ÌæÝjéÖ?RZ8òp?€bîF¾§?Œ¬3U:?‚pëí’ŸÐ?‚æòõć8?†‹t¾µ.?†‹—ð +«@@(@*@(@4@5?ð?ð?ð?ð?ð?ð¿&Üa¿ð? +lj·@?äiV´Ž?¹,­ÿ@¡àÐL÷ @¬ùl³‚3?3Ó-d·É?P†c˜W?©?)ôOá­N@ŸsÓK©¶@Æ@¤€bMÓ@¤€ùòñ@¤€bMÓ@¤€÷ÎÙ@¤€bMÓ@¤€+ I»@¤€bMÓ@¤€@N¤©@¤€bMÓ@¤€C2º@¤€bMÓ@¤€ 1Ùs@¡ÊÀƒ@®Ûci@¡ÊÀƒ@«ÓÃa@¡ÊÀƒ@¸ -à@¡ÊÀƒ@µ¨Xy>@¡ÊÀƒ@›`)¦õ@¡ÊÀƒ@¦v¿@‘@7£g ù l@7¬$Êò`@2ÞÙ‡+@2ߨ­«ŸV@26§ï²-@2!A [À@1ó&Á½¥@1ß²-V@1ó&Á½¥@1îZ›SUZ@1ó&Á½¥@1ò¶Ëà?‘ɱb)Q?”žP1²"?’à©GMõ?¤3Òƒ°?™ŽåŸîU»?‘Þ½/1üc?•Ö/ê€÷Æ?”zòžÕÿ?”Ï3½fvI?¢ŒZzˆZ”?”ªÝ5yS¢?“rC2¹¢Ú?‘†¹TÈ»L?›9WTêW?¨3 ¤qâ?ŸñK쯎?•¤^'ü³?‘t^“]7]@@@@@0@.?ð?ð?ð?ð?ð?ð?R.ÈοUh>f?7_,ç¡?TybZ•@¤€=nÄá@§O¯~?YKã寮«?t„gøÉ?¥znÚÉJ†?ØÌ==®™ @Ÿl¶ÍNÁð@Ç@¦%÷ÎÙ‡@¦%øbMÓ@¦%÷ÎÙ‡@¦%öøè¸Ž@¦%÷ÎÙ‡@¦%øÁd­@¦%÷ÎÙ‡@¦%õÃ1áH@¦%÷ÎÙ‡@¦%ò‘•Pß@¦%÷ÎÙ‡@¦%óe¤@—V“@—Ù‡+@—V“@——…æ›@—V“@—¡4¹@—V“@—‚e@—V“@—”1@—V“@—îŠMç@2 Î_oÒ@2 Î_oÒ@0‡ÎÙ‡+@0‡”µÏ@0q‰7Kƨ@0p´9Xb@0ý!ÿ.I@0rÉ®ÙÅ@0ý!ÿ.I@0Üÿ]•@0ý!ÿ.I@0ÃÝö¾?É^¨¯Âj?‰©†$Ÿ?‘SÕ24€A?ŒnŠhW¨?‘®q÷¼€Š?ðü²ßGÚ?ÐbQë„›¦?’zé,ìÀ?ˆ¿REÿÉ?ƒîöñr?‘Þ:i”Û?ê'šaJ’?€bMÕgô?ŒÈ”­™ß?‚´“À +?ƒÌØN§†‰?†ÍñàÌÈ{?‡?ÿ¸Å§@@,@$@$@3@,?ð?ð?ð?ð?ð?ð¿UK‡?6ìÂ@¯?A'fæ~8?- qM‘9@¦%ô +£á@—Š¡c?P‰–ë?;À2 U©?™¶Œxâ'b?ol×wi9@Ÿrþ¹ø †@È@¨¦ffff@¨¦$Ý/@¨¦ffff@¨¦šÔ,>@¨¦ffff@¨¤êJŒ@¨¦ffff@¨¤g8~@¨¦ffff@¨£n—@¨¦ffff@¨žì¿±[@¤d;dZ@¤d;dZ@¤d;dZ@¤d¾vÈ´@¤d;dZ@¤d"u%F @¤d;dZ@¤d"œwšk@¤d;dZ@¤d%ðoiC@¤d;dZ@¤d,篷@4÷â‚@·€@4ø7´¢3œ@1Ò Iº^5@1ÑuŽ!–R@0±‰7Kƨ@0°-à r@0}cˆe”°@0z³g ù +@0}cˆe”°@0záG®{@0}cˆe”°@0vÕϪ͞?|öOÿÝ?Kb½™×?‘°&޲P?Ú¾ÉÛ²º?“”>C,4?’ŒZzˆZ”?}Ñ¿ž,?’;µ” È?’¤šÜI«?”pè·FÌs?“£c”?’µ~Yºì?„³3Z\ð„?u/®Xã?ƒ´],m=?„Ö©Ú0?‡ø¢:›¸1?$Ìj½BÙ@@@@@*@*?ð?ð?ð?ð?ð?ð¿Riž¸?b–Ž‚?4„f­’·?@w èúuÏ@¨£ôù¸i@¤d#¾·48?Tý~W?`¬Ýî°Z?³Âq˜¬‡?ÇÅØ i1…@Ÿf65a\9@É@©øQë…@©úŸ¾vÉ@©øQë…@©÷€4mÆ@©øQë…@©ö4é@©øQë…@©÷Xâ@©øQë…@©ôýó¶G@©øQë…@©ø -à@ªÞOß;dZ@ªÞMÒñ©ü@ªÞOß;dZ@ªÞTSŽóN@ªÞOß;dZ@ªÞQë…¸@ªÞOß;dZ@ªÞQ4êK@ªÞOß;dZ@ªÞY¦µ @ªÞOß;dZ@ªÞV8†YK@7L]cˆe”@7MÅÖ8†Z@3° Ä›¦@3Á£n.±Ä@3)Û"Ðå`@3+quŽ!–@2s&Á½¥@2s¼ÓZ…ˆ@2s&Á½¥@2s&Á½¥@2s&Á½¥@2që…¸R?„F/·ÿP5?•@K/Ùz?˜zjÊ©Øi?Hð¹?’Æ÷Xê†?”|„¥&?ˆÿÀ)T¿Æ?”ÇtæMPÐ?œÕ4FégI?’k­ªì¢H?–kš‘ž?”V.·H?‚‹¡8*ùÿ?3ßa=„? t€4Ã?†¤c·Ó—1?‹DVóö?‹ú èNÆö@@@@@*@*?ð?ð?ð?ð?ð?ð¿Lœ ]?`~¾M,?>iP™=;1?E6Fõ5 @©ø<¼IY@ªÞRŠDˆå?^wØg^½°?e5ä¶d?¿E2>oá#?Ç»«(±Ž@ŸhÆçê36@Ê@¢íV@¢ëƧïž@¢íV@¢í‘hr°@¢íV@¢ïùrGE@¢íV@¢ú6âë@¢íV@¢óüPI@¢íV@¢ø7´¢4@£g§ï²@£gÊÀƒ@£g§ï²@£gšu%@£g§ï²@£g C•@£g§ï²@£g¸Qì@£g§ï²@£fó@N¤©@£g§ï²@£fïiDg7@6:qÞi­C@6:QÎ`@2À Ä›¥ã@2ºŸ¾vÈ´@2RÐå`A‰@2AÊÀƒn@2mÅÖ8†@1öR½<6@2mÅÖ8†@2\‘ÑN<@2mÅÖ8†@2 +Ov`?„F/·ÿP5?‘Ü„ Þ(£?§¶Øöƒ.Ò?¦ S~?”k¸!¯eÕ?£P;røp?|öOÿÝ?’{cü€øõ?ž(?{k4?šWl¬Ëz?”Ï#:d ?¦¤Wë'?„‘Za¹P?Ž`ŸÝïöF?•ýÿLîO?›zYì3®??˜§zy?—ã ËÄž@@@@@ @*?ð?ð?ð?ð?ð?ð?bYÁO¿ilTü#?GÐ +Én‚?U×ó…Ô@¢ð/ Q@£füQÊx?f·í?tzbûý?Æz]ÿpî?ëhò[J@Ÿdô¨•j@Ë@¢ º^5?@¢´9X@¢ º^5?@¢÷ÎÙ@¢ º^5?@¢Ë’:@¢ º^5?@¢y¦µ @¢ º^5?@¢ …ðoi@¢ º^5?@¢ +¦L0@©“$Ý/ @©“,‹C•@©“$Ý/ @©“:áG®@©“$Ý/ @©“5?|í’@©“$Ý/ @©“1Þi­C@©“$Ý/ @©“.V”@©“$Ý/ @©“)á°‰¡@7Ç>«6z@7ÁohÛŒ@3T›¥ãSø@3I¦µ (@2A‰7KÇ@2Ь1'@1æYJôðØ@1ß±[W>¬@1æYJôðØ@1áA [À@1æYJôðØ@1á4êJŒ?|¬Çëý ?–(ëR¤?•|®6zj?Œ'õ‚$5ñ?š<¨¸ÆÐ?•½0 +Žø?®í©@Šþ?“?xr¢I?–S•|¡þ?øQñĨó?šâ6¿°P?–,}úºoJ?‰~}œ…o^?Žƒä%®æ2?\ÍÅ“¢?†ÞåØÜÓ?IÏáå$?‰©OO ¨@@@@@,@$?ð?ð?ð?ð?ð?ð¿7è"Ü¿am…‚ +€?/Îy0®:?VQ¶ðzÜ@¢‰‰åð@©“/@Õuh?U"›¦R¸?jMÑ~<Št?£{“¤&Ü‹?Âõ“èT@Ÿnúù­<@Ì@ r° Äœ@ rn—P@ r° Äœ@ oE‘v@ r° Äœ@ jˆñU1@ r° Äœ@ q8É+Û@ r° Äœ@ kp0…@ r° Äœ@ jË×Óí@¦å49Xb@¦å4záG®@¦å49Xb@¦å1¡(Ë1@¦å49Xb@¦å5äýÜÄ@¦å49Xb@¦å]Ð)X@¦å49Xb@¦å@,»g@¦å49Xb@¦å@kAlK@4ÉÎ_oÒ@4Ê1¤½º +@0¦‡+ J@0¥K·y@0ï²-@0­â4¯Ù@/½Vlô"@/—@;„§@/½Vlô"@/´™)ýZ=@/½Vlô"@/Æ0IF?|Ñb×¶@?¼.Mô4?‘Iˆ¾…ƒH?Ž%š´?’H«fk¸V?’&5Ê2¡?}õ¬#„­?’_3µ¨NU?ùa@ÔNy?‘©½XËh?’=UÄ¡¸µ?‘™³XK?‚o†#BpW?s"òYš?‹^`F‡“?ˆïß8ûÚg?‹Ä{^½ï?–dÇ£·@@$@@$@6@8?ð?ð?ð?ð?ð?ð¿W¡Ûâ^?p«ˆä5€?;$+ÕE?pR‰ë¿Z@ o”Ç/¯@¦å?J O8?ZÑ\"3öÂ?}¿d#Óù?Á–kÞµßù@)js‡ÞY@Ÿf­9Ëÿ@Í@žšl‹C•@žšdÍ«Ì@žšl‹C•@žšnÐâ„@žšl‹C•@žšˆL‡·@žšl‹C•@žšp:û~’@žšl‹C•@žšf=®à"@žšl‹C•@žšfõx9@¡¡G®{@¡š€õÊB@¡¡G®{@¡—…Nµ@¡¡G®{@¡¬.ƒø@¡¡G®{@¡±Î_@¡¡G®{@¡œjJJ@¡¡G®{@¡•ÀÈ8Î@6è†YJôñ@6×±}Üyö@23S÷ÎÙ@2¢±†`@1®ùÛ"Ðæ@1•·¼œãÅ@0õµsê³h@0à-à @0õµsê³h@0íº²Êh@0õµsê³h@0çǺ|®r?„ÜNó7·å?•a±F¿§ý?“HÛ.ó//?”ª.#Äç÷?‘ty^µ?’ªzÇÆ`?‹ÖFÔÜÚ$? N²þóá?‘C5ï`½5? HkY¸­?‘äý£0?“•4v/¢Î?“Ü·îDÂ?ލB=â?ƒX+ƒøè?„Ö©Ú0?‰Ý-àλ?‰«œ^tÓŸ@@"@@@1@1?ð?ð?ð?ð?ð?ð?:›éH¿3¡*?Do5Dy*?b%à(Œ%@žšg¸@¡›²ë¼)?e6†wòj?‚ûð»IÖÀ?ÌÏÀ í@槉@ûl@Ÿiâ£1¦Ò@Î@£ŠïŸ¾w@£ŠÔýó¶G@£ŠïŸ¾wÁ.„€@£ŠïŸ¾wÁ.„€@£ŠïŸ¾wÁ.„€@£ŠïŸ¾wÁ.„€@£ŠïŸ¾wÁ.„€@•DšŸ¾vÉ@•Dñ`tÃ@•DšŸ¾vÉÁ.„€@•DšŸ¾vÉÁ.„€@•DšŸ¾vÉÁ.„€@•DšŸ¾vÉÁ.„€@•DšŸ¾vÉÁ.„€@7#g ù l@7.Ò‘œÿ¶@4pÄ›¥ãTÁ.„M‰ûçm@3çKƧïžÁ.„QnÙ‡@3‡ ù kºÁ.„NÜC,¥@3‡ ù kºÁ.„NÜC,¥@3‡ ù kºÁ.„NÜC,¥?~ì“?ÕÒJ@8#˜@8¾:@8 >+@8Iç@8Ù?“ +„L.1Î@8Î÷@8i§@8Å@8S@8û—?¸?–?;•@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøÏ@¢§©ûçl‹@¢§©ûçl‹@¢§©ûçl‹@¢§«àÞÒˆ@¢§©ûçl‹@¢§ª~ùÛ#@¢§©ûçl‹@¢§©Ô•*@¢§©ûçl‹@¢§¨Xy=Ù@¢§©ûçl‹@¢§ªqÞi­@¤Õn—Oß@¤Õn—Oß@¤Õn—Oß@¤Õm‘hr°@¤Õn—Oß@¤ÕlÙè>B@¤Õn—Oß@¤Õr¼£@¤Õn—Oß@¤Õo'»/ì@¤Õn—Oß@¤ÕnV“@4G>«6z@4GKƧïž@1W+ Iº@1W®záH@1Z~ùÛ"Ñ@1\j~ùÛ#@1(è§æ›@1+‹¬q ³@1(è§æ›@1*Ov`@1(è§æ›@1(ï4Ö¡b?}Ñ¿ž,?Čۨ1A?‘½ÉaR º?Œ¸ðËb?‘ …É¿¼?‘m×e\»?|¬Çëý ?’ ,øÕC©?ð{¥âdú?EÇàÔPà?‘áÙž­ò?‘ƒZ)Àˆ?‚yî8Á#?ŒÂ§dß±?„ã¼ÓZ…ˆ?ƒv_.^?ˆ‹”âó?ˆ¾þúWZ‹@@@@@*@&?ð?ð?ð?ð?ð?ð¿%<À?'Ë/;?)–ó~åo†?;­ÎS™C@¢§©Äú+@¤Õo7 +Ž+?IQ“¸(?[?”³Ïÿà? i‡^Ç!?ÂDˆÍm +³@Ÿf»8ôøÕ@Ð@¥Š Iº^5@¥Š +=p£×@¥Š Iº^5@¥Š(K]Ìd@¥Š Iº^5@¥Š4!-x@¥Š Iº^5@¥Š +ŒL˜@¥Š Iº^5@¥Šu%F @¥Š Iº^5@¥Š ‘hr°@¢¢xQë…@¢¢{dZ¬@¢¢xQë…@¢¢„“t¼@¢¢xQë…@¢¢˜“t¼j@¢¢xQë…@¢¢wÁ½¥@¢¢xQë…@¢¢U?|í’@¢¢xQë…@¢¢mà q@7}:’£@7wXâe@4ã÷ÎÙ‡@4òZîcŠ@4•`A‰7L@4«/ìVÕÐ@3úÔ,<ží@4ðoiDh@3úÔ,<ží@4¡ÊÀƒ@3úÔ,<ží@4ëC,¦?—¤o„C?’ãy)­3c?¡  è+î~?¦d†€¹?¡ áãà³? i]½x[?Œs¤DÅÐ?—¿ºÖ÷?¡WŒÒ‚?¤Q ®Q2?› °Ö7?£:ó;Ãç?¥±ŽBÏÄ?¨:!;Ù‰à?¢g`¥uà‹?’Ò=Ù!Wþ?”þ5.¸žÊ?¤L¿€‡4@@@@@&@&?ð?ð?ð?ð?ð?ð¿$Šja ¿xÎOŒ@?TÇôo ?iºåX6P@¥Š ^&Ϧ@¢¢l”;?u—U8'&¶?‹¥r…CÇW?ÎA×áD]Ê@Ì˜ÈØ½–@Ÿh÷Bö@ @Ñ@¢âñ©ûçm@¢âð£× +=@¢âñ©ûçm@¢âçï²,@¢âñ©ûçm@¢âô`ªdÃ@¢âñ©ûçm@¢âæµ '@¢âñ©ûçm@¢âùJôðØ@¢âñ©ûçm@¢ãëC-@¡‡¤Z¬@¡‡¦§ï±@¡‡¤Z¬@¡‡›ô‡ü¹@¡‡¤Z¬@¡‡±œàu÷@¡‡¤Z¬@¡‡½—ö+k@¡‡¤Z¬@¡‡¹XbN@¡‡¤Z¬@¡‡µ2a|@6šÔ,<Ÿ@6Xâe@3…?|í‘h@3tÝ/Ÿ¾@2¬j~ùÛ#@2žì¿±[W@2p–»˜Çã@2ZOv`@2p–»˜Çã@2ZdÂø7´@2p–»˜Çã@2^;Í5¨Y?}Ñ¿ž,?™mv¯rÇ…?¦=Àöw<¸?±j–8K +?®‡›ajÒø?¤sb-ý?žˆ2}?š…FÌ«Ø*?­ ßåG?¬]~ɺ¶@?®wcÈ~Y?°)œpwe ?‚Ö˜>µDà?‘Žèã&!+?š6v;vî?ˆx»€ñö2?’3¨£„È?°+—ߎ @@@@@,@,?ð?ð?ð?ð?ð?ð?g^mÅn?r›C?§?WPQ4Ö{Õ?X™|Ã3L[@¢âóÌSäA@¡‡«ùOpô?n´7ý^U?o5‚‚ràâ?ÓÅ,zcè•?ʦ•.~WÃ@Ÿ^ß~ùË@Ò@§ÂuÂ\)Á.„€@§ÂuÂ\)@§Äš@§ÂuÂ\)@§Ä[µsë@§ÂuÂ\)@§Ä®¾ß¤@@§ÂuÂ\)@§Ä­(Œç@§ÂuÂ\)@§ÄÂø7´¢@ UÏß;dZÁ.„€@ UÏß;dZ@ WŒÌÌÌÍ@ UÏß;dZ@ X²-V@ UÏß;dZ@ X/Òòå@ UÏß;dZ@ X9#¢œx@ UÏß;dZ@ X1Ä2ÊX@6åöý!ÿ.Á.„>¤µÜÆ@2ã÷ÎÙ‡@2Ë’:)Ç@2~ùÛ"Ñ@1P–»˜Çâ@1‚‚@·€5@0µœàu÷@1‚‚@·€5@0²:)Çy§@1‚‚@·€5@0¶È´9X@8J¨?ÑNöŸ:'—?ÞÅDwÜhg?ÙÑ» è°Ô?Ѧ›ó9ÔH?ÓÔ=J7@8J¨?Ý_;Îê$?Þsr±lV?ÛÐGJéÂ?ÔÁ“b)Û‘?Øûo¼@8p÷?’K•ªQ5?Ž;øÑNô?’Ž_½‹Éc?™GXêâ?“!S{uu@@@@,@*?ð?ð?ð?ð?ðøøøøøøøøøøøøÓ@®ã-‘hr°@®ã.Ù‡+@®ã-‘hr°Á.„€@®ã-‘hr°Á.„€@®ã-‘hr°Á.„€@®ã-‘hr°@®âü64@®ã-‘hr°Á.„€@ "Ðå`B@ !$Ý/@ "Ðå`BÁ.„€@ "Ðå`BÁ.„€@ "Ðå`BÁ.„€@ "Ðå`B@ J~ùÛ#@ "Ðå`BÁ.„€@6Û¹Œ~($@6ÚCþ\‘Ò@5º^5?}Á.„M‰ûçm@3Ͳ-VÁ.„QnÙ‡@4(è§æ›Á.„NÜC,¥@4(è§æ›@4éxÔýô@4(è§æ›Á.„NÜC,¥?|öOÿÝ@8#˜@8¾:@8 >+?¾ ¬rLæÛ@8Ù?žˆ2}@8Î÷@8i§@8Å?·*ç*É«S@8û—?¶,1õ'®@8 * @8p÷@8¶?°Í=üi@8 Ø@@(?ð?ðøøøøøøøøøøøøÔ@¤‹ŒÌÌÌÍ@¤ŠÒ-V@¤‹ŒÌÌÌÍ@¤‹poiDg@¤‹ŒÌÌÌÍ@¤‹z–¼@¤‹ŒÌÌÌÍ@¤‹†Â&€@¤‹ŒÌÌÌÍ@¤‹”,<ží@¤‹ŒÌÌÌÍ@¤‹ˆr° Å@¬ù²° Äœ@¬ú7ÎÙ‡@¬ù²° Äœ@¬ù¤êJŒ@¬ù²° Äœ@¬ù¦1ø @¬ù²° Äœ@¬ù¬¥zxk@¬ù²° Äœ@¬ù°©*0@¬ù²° Äœ@¬ùºu%G@9 ØDЩ@8JáG®{@4”›¥ãSø@4™è>BZî@3d¼j~ùÛ@3dÂø7´¢@35µsê³h@3V»˜Çâ‚@35µsê³h@3^šv@35µsê³h@3UÖ8†YK?àíò‡ä9?¤iedA¾?•í¤®Èq{?¡sâ½ë?ª–yHªÃ?ž»‚>äÚ>?á…pn©³?¢ÉÓDý?–v”׆7Ê?´ '³~À?³ÍÂ]%ž®?ž*“ÀMõL?õ¿Ð™8?Û?¡Ê$̤T?¨?õ:Lö]?®íÇ[ÌíY?°È-ìÉB?¡_—‚×! @@@@@,@$?ð?ð?ð?ð?ð?ð?\±Lu@?lââ%?väG¤ã\q?{¢>›z@¤‹‰›—»@¬ùµÅg²?‡¤}ù0Xy?‰×<Ô3ð²?änÏ–ì9?Ô#“½,»@ŸuRrh@Õ@ ß“t¼@ ß qu@ ß“t¼@ ß ˆ=Ö@ ß“t¼@ ß³Qµ‹@ ß“t¼@ ßòb@ ß“t¼@ ß›89i@ ß“t¼@ ßÜŒ+@¬¾€ƒn˜@¬¾‡ï²-@¬¾€ƒn˜@¬¾{‘žX•@¬¾€ƒn˜@¬¾}ìÖ9¶@¬¾€ƒn˜@¬¾zæ†@¬¾€ƒn˜@¬¾}iGt@¬¾€ƒn˜@¬¾‚û‰Ðy@7kµsê´@7eÈ@ àò@3 Ä›¥ã@3&å`@2{Ƨï²@2~öC/‘¢@1£ÉîËû@1©]Óòû@1£ÉîËû@1©ˆÃNÐ@1£ÉîËû@1©o¸Œ¾?|çµB &€?‘tÛŒ?•Êð=éx?é*„4Ie?’]çñÆ[?‘ð0~Wš?’ÌRû ã?’Q?4kÞu?’]ÍdM•J?’é +lr¬·?’Z›ðŸ“?‘>pú—±Â?¢¾•´é?Ž­#³³q?ƒ1B«ð¡!?…aiJ‹k?ˆÁã Tn?ŠüÀ]  @@(@,@,@8@3?ð?ð?ð?ð?ð?ð¿\sª·T¿Sýƒ¬?11tfº?]€“7Ç@ ßPf¸¬@¬¾€í[#²?S‹Ÿ—À³?{ Vs¹?¬ì}ð}±?ñAWƒ@Ÿk!œ83 @Ö@§Ò¥ãSøÁ.„€@§Ò¥ãSø@§Ó‰7KÇ@§Ò¥ãSø@§Óc× +=q@§Ò¥ãSø@§ÓB\(ö@§Ò¥ãSø@§ÓªÍž„@§Ò¥ãSø@§ÓÓZ…‰@ öÈ´9XÁ.„€@ öÈ´9X@ ì<žìÀ@ öÈ´9X@ µéá°Š@ öÈ´9X@ À'RTa@ öÈ´9X@ …m\ú­@ öÈ´9X@ ¤Âø7µ@8·â‚@·€Á.„>¤µÜÆ@4£÷ÎÙ‡@2$Ý/@3Æ“t¼@2Ö8†YK@2úÔ,<ží@1ªÍžƒä@2úÔ,<ží@1ˆ§æšÔ@2úÔ,<ží@1™Ô•*š@8J¨?¨E‹¨¹“‹?·éo‘" +?¯ð~aäí?ÁÚuës`c?§ùä´~«G@8J¨? ¬q¶™?ÁåòÊ(TÅ?ÆfáY|h?ÕNMpÄZ&?Ë@!"‹Š@­µ²-V@­µ·¾S8@­µ²-V@­µºw;/b@3õS&Á¾@3óÉîËû@/”¼j~ùÛ@/‹'µ¡@.mOß;dZ@.cn.gJ¹@-#¼ÓZ…ˆ@-^5K@-#¼ÓZ…ˆ@-ZÑv×@-#¼ÓZ…ˆ@-mÚÎï?€‘gQÚÃ?õ­r ?‘KI4ê?Œ'õI Š?‘&J—œ?ÊûVh +”?}@T˜ÁÎ¥?’§h‰ª?‘Ç}%“ '?RL„óBÛ?‘1b?\š÷šU½?ƒY¥„ûkd?ŒÆò-Ük?‚Â!Üb?ƒ?Âù?†—ò« «?†Žþí}ê@@@@@4@4?ð?ð?ð?ð?ð?ð¿IúÍ1D?UfÎd°?ÝBŠ&’»¨qŠL?MÚÍóüz?‡ ´4õ'f?¦r48ñõþ@Ÿgh¡tZñ@Ø@­8U$Ý@­8R° Äœ@­8U$Ý@­8,VÕϪ@­8U$Ý@­8U?|í‘@­8U$Ý@­8jJŒM@­8U$ÝÁ.„€@­8U$ÝÁ.„€@–ÖOß;dZ@–ÖHìžÑ‹@–ÖOß;dZ@–Ö+P°ò}@–ÖOß;dZ@–Õè$ x@–ÖOß;dZ@–ÖK]Ìcñ@–ÖOß;dZÁ.„€@–ÖOß;dZÁ.„€@8 xFÜ@8ˆNi°@7° Ä›¦@71ohÛŒ@5Ë"Ðå`B@6©ûçl‹@5._oÒ @59JôðØE@5._oÒ Á.„NÜC,¥@5._oÒ Á.„NÜC,¥?“x/0 ª?Æ\5Ÿ#àk?ÀÆÜF¡v?©ßìE½u]@8Iç@8Ù?‘ 1˜Ó ?ÏV Áè?ÄCÚ¶’ú?ºrßpв@8S@8û—?‚·˜²#–n?ÊM#’Ž?µÎ%×€Ý_?³ÓÑžoh@8 Ø@8 Ø@@@@?ð?ð?ð?ðøøøøøøøøøøøøÙ@¬eÞ¸Që…@¬eÞùÛ"Ñ@¬eÞ¸Që…@¬eà·€4o@¬eÞ¸Që…@¬eߨ­«Ÿ@¬eÞ¸Që…@¬eà'RTb@¬eÞ¸Që…@¬eÝó¶E¢@¬eÞ¸Që…@¬eÝ—ö+k@¢Âœ(õÂ@¢Â›çl‹E@¢Âœ(õÂ@¢Âœ(õÂŽ@¢Âœ(õÂ@¢Âš¹õY´@¢Âœ(õÂ@¢Â›~ÿ—@¢Âœ(õÂ@¢Âœ„µÜÆ@¢Âœ(õÂ@¢ÂœÚQ@4įO „M@4ļj~ùÛ@08r° Äœ@08Që…¸@/&éxÔþ@/Î_p@-”`ªdÂù@-”!-w2@-”`ªdÂù@-”êJŒ@-”`ªdÂù@-“×Ûôˆ?|öOÿÝ?êÚÏ$?‘$Cê¡@í?Œ ßõIyû?ùª¨?ÃwZL?|öOÿÝ?’0nà=Q“?ŠA)Nîá?‡@Cvì×?õ<úU?M\³Ù“@?ƒmÕ+&¬‰?Œ».êxóÚ?‚‹¡8*ú?‚ð'ã:ÂÝ?†¯Mž684?‡ã ËÄž@@@@@*@"?ð?ð?ð?ð?ð?ð¿&[ ? E½ï@?0f$ÇC^Q?¹<'5ª@¬eÞÅ5+§@¢Â›þ›è?PYPžBK?6ÿåthg1?¬ßÁ´¦»Ž?{L‡ +?Ì1@Ÿfþ¶NÎU@Ú@©¼äZ¬@©¼éTŸÏÙ@©¼äZ¬@©¼ß‰Ý í@©¼äZ¬@©¼ß~ï:@©¼äZ¬@©¼ÛL!@@©¼äZ¬@©¼ßª-Ú›@©¼äZ¬@©¼ÜädpÅ@›«ÎÙ‡+@›«×Øßá@›«ÎÙ‡+@›«Í¨‰Ñ~@›«ÎÙ‡+@›«ÎRHúg@›«ÎÙ‡+@›«Ðòe@›«ÎÙ‡+@›«Î}ëø@›«ÎÙ‡+@›«Ïïùxç@7*0U2b@7Ø©ãÐ@2sS÷ÎÙ@2sYjÖq@1Ãt¼j~ú@1Â5xΆ@1._oÒ @1,Ý/Ÿ¾@1._oÒ @1,Ü)&$@1._oÒ @1,ÄXCœ +?ƒÔo"ë–? +"ùûü?‘ð¿xÀ‘?°ÿËûÖ?’ +EÜàõ?‘ªÖ¸ÿ†™?¨Sp*?’ ñó«Î?‘ú&:η?­ºRçþ?‘TþòÇÀ?†'ô’U©?û놱_•?CÏR"?„&ÑÄÜC?ƒPo”ž™{?†ÑÜ uv?†ú{j½ì@@ @(@&@1@1?ð?ð?ð?ð?ð?ð¿f訛<¿O£w@?Q¥¹Ò"9?)‘²¨ý@©¼á©w¹Q@›«Òþkî†?q€¤Bj‡F?JŒƒº§s?èSaõ3=?žÌôûúb@Ÿh„Ç:@Û@žhr°!Á.„€@žhr°!Á.„€@žhr°!Á.„€@žhr°!Á.„€@žhr°!Á.„€@žhr°!Á.„€@¦ˆ$Ý/Á.„€@¦ˆ$Ý/Á.„€@¦ˆ$Ý/Á.„€@¦ˆ$Ý/Á.„€@¦ˆ$Ý/Á.„€@¦ˆ$Ý/Á.„€@3¨†YJôñÁ.„>¤µÜÆ@0—+ IºÁ.„M‰ûçm@/÷Oß;dÁ.„QnÙ‡@/87´¢3œÁ.„NÜC,¥@/87´¢3œÁ.„NÜC,¥@/87´¢3œÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøÜ@¯$G+ J@¯$C× +=q@¯$G+ J@¯$EÖ8†Y@¯$G+ J@¯$H1&éy@¯$G+ J@¯$EýŠÚº@¯$G+ J@¯$F¸ºÇ@¯$G+ J@¯$Em\ú­@£hõÂ\@£f$Ý/@£hõÂ\@£gâ‚@¸@£hõÂ\@£gl‹C–@£hõÂ\@£iº^5?@£hõÂ\@£hÛ‹¬q@£hõÂ\@£iîËû@7‰Î_oÒ@7„•*™1@23S÷ÎÙ@23MjO@1ˆ“t¼j@1ˆšu%F@1=cˆe”°@1=<64@1=cˆe”°@1<žì¿±\@1=cˆe”°@1<Æ??–ªÎ­¡??ÖCã ?‘œÁùãJC?‹ÑqÔ@vÿ?’êÔÒ?‘‚ÊŸû©?óA[ØïF?’Ȳõa®?‘twæ³?EÇàÔPà?‘–=û.e1?r¼Jsž?‡~ ~ã? $gú‡v?ƒÚ@êA²?ƒ^ ›¨¬a?ˆCns¥ ?‡æê7²zE@@@@@*@ ?ð?ð?ð?ð?ð?ð?5sýïÐ?Gfš-¼?3™¶ãG@¦†ƒn˜@¦…ÿË’:*@«)Å¡ÊÀƒ@«)Å¡ÊÀƒ@«)Å¡ÊÀƒ@«)ÆL/ƒ{@«)Å¡ÊÀƒ@«)ÅãS÷Ï@«)Å¡ÊÀƒ@«)Ƨï²@«)Å¡ÊÀƒ@«)ÅÖ8†Y@«)Å¡ÊÀƒ@«)ÅðoiD@0«µsê³@0ª³g ù @*û"Ðå`A@*ûµsê³@*XÔýó¶F@*Xï4Ö¡b@* +#9Àëî@* ûçl‹E@* +#9Àëî@* +Ov`@* +#9Àëî@* +0U2a}?É^žQ5P‚?Òç{íj?‘"žæÆó¡?‹²MÿAÿ8?ðÌÇßgé?ºª$Ð?ÐbMçê_x?’ ,øÕC©?¹º–Èj?1ð'7éÃ?ß’ºèh!?Z˜°,aÝ?[Éh(?Œ²ÅŒÕ6?‚q6tNø7?‚äÍ“½E'?†‰Oú|q?†ŠúЀ>(@@@@@,@,?ð?ð?ð?ð?ð?ð¿AF–º¼¿4ÕÓ0?)/„kÛré?#lE „Œ@¦†9 ¦ÿ@«)Æ0?89*uM?2cـ߹Ü?lÌõt3BÝ?]—ãÏßÑÈ@Ÿsêkœª@à@©î”záG®@©î…{q¶@©î”záG®@©î˜|+Nƒ@©î”záG®@©î–]¬V„@©î”záG®@©î–›æ½ò@©î”záG®@©î–njV @©î”záG®@©î•H¦q@”B\(ö@”9Û"Ðå@”B\(ö@”AʉB@”B\(ö@”SÐÜ;@”B\(ö@”?,Í¡i@”B\(ö@”Dã¿@”B\(ö@”EàèÆ@82ÃÉîËû@80ø¯õMÙ@4Lí‘hr°@4M@v©Æ¨@3¬j~ùÛ#@3®?èKž@2ÔmÅÖ8†@2Ó®×2ür@2ÔmÅÖ8†@2ÓÇqÛ‘¤@2ÔmÅÖ8†@2Õ ÒG-ú?€Z=ú‚¡?“H9Ÿ‰?–8¥NJH±?¤ÝÿÏ?’ š¬ ç?“ƒµ†s5t?˜@þà>¨?–ç7!,%ä?‘,e±ò¼É?DìQ |?‘¹Y*.?’$'^ Y?’¶Èñr“?›wºÎ?ï& d?„"æUx?ŠbewFA0?‰ñ{Õ<K@@,@,@"@8@9?ð?ð?ð?ð?ð?ð?p¸ ž?UF.ºó?R*ó-øe?'zׇdmå@©î‘ñ®ŒŽ@”@°XZj?t»nþÙÂ?B´/^4Ÿ?ì˜1Ì$??Ž"Ê_‘@ŸlJ Þ@á@®É9XbN@®É9¿a+ì@®É9XbN@®É:–¼@®É9XbN@®É9XbN@®É9XbN@®É9Œ~(#@®É9XbN@®É8üPN@®É9XbN@®É9 ~1C@œ_;dZ@œ_;dZ@œ_;dZ@œ^5?|ï@œ_;dZ@œ]/Ÿ¾@œ_;dZ@œ^Ov_Ù@œ_;dZ@œ^ƒä…@œ_;dZ@œ_:Ç­x@1‚ò䎊@1‚&€IR@,kƧï²@,k’:)Çy@+E¡ÊÀƒ@+Ov_Ù@*æL/ƒ{K@*æL/ƒ{K@*æL/ƒ{K@*æ$Ý/¡@*æL/ƒ{K@*æbîž=?É`U8ŒrÌ?ÉGãA­÷?‘Ûü†Nã?‹½XQê>æ?íOýï8?¼_ˆæ?ÐbMÝn½?’ ,øÕC©?|™,Ž!?4–Ú‰3?Ö§¬ÙO?H+õm6?€bîF¾§?Œ¯þuõí?‚yî8Á$?‚äÍ“½E'?†ŠúÐv?†Žÿ󰉋@@@@@,@0?ð?ð?ð?ð?ð?ð¿/3q–@?(ª¶ÙÎ?wy +hO +?{ÄÌ×5@®É9;k@œ^¥l(u?&¹Ü‰©?ϧŽü¨?Hõ>[õó0?3€óËpw@Ÿs kXƒg@â@¡hRñ©ûç@¡hT¼j~ú@¡hRñ©ûç@¡hKjçÕg@¡hRñ©ûç@¡hL²•éâ@¡hRñ©ûç@¡hPË)^ž@¡hRñ©ûç@¡hNóMj@¡hRñ©ûç@¡hM«ŸU›@¬ž‰7Kƨ@¬ž‹C•@¬ž‰7Kƨ@¬ž…Ö8†X@¬ž‰7Kƨ@¬ž~($ w@¬ž‰7Kƨ@¬ž„êJŒ@¬ž‰7Kƨ@¬žŽ!–R½@¬ž‰7Kƨ@¬ž„Z¬@5Ì]cˆe”@5ˬq ²–@1î5?|í‘@1ëjçÕfÏ@1~V“u@1zdÂø7µ@0ÜÚQÎ@0Ö¡aä÷f@0ÜÚQÎ@0×â‚@·€@0ÜÚQÎ@0ÔohÜ?1·†Æjñ?–MSMÓ®¬?’à©GMõ?ޝ“¶¶ÒÍ?‘ÏX¼ãs~?’?=ÆþÎò?}Ñ¿ž,?”n‹rÕ|?’€fç½Î?’F—T \*?—QÀ–Íù?’Âuþ!BÖ?‰~}œ…o^?Å{¿Ž<º?„ËD(ºp?Š>ÚµÕ?Œúq‘?‰ö±«tï@@@@@*@ ?ð?ð?ð?ð?ð?ð¿W¼*,h¿Pç§)T>öžÇ?K$7?M¤µÜÆ@3µãS÷ÎÙÁ.„M‰ûçm@3H“t¼jÁ.„QnÙ‡@2µµsê³hÁ.„NÜC,¥@2µµsê³hÁ.„NÜC,¥@2µµsê³hÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøç@¡ÝÕ%@¡Ý¾¸Që…@¡ÝÕ%@¡ÝÇÈK]Ì@¡ÝÕ%@¡ÝÉá°‰ @¡ÝÕ%@¡ÝǓݗö@¡ÝÕ%@¡ÝÄЩ*@¡ÝÕ%@¡ÝÂø7´¢@¤ï²-@¤Û¥ãSø@¤ï²-@¤øl"h @¤ï²-@¤öÈ´9X@¤ï²-@¤ðHð@¤ï²-@¤ò䎊q@¤ï²-@¤ïƒ{J"@8è†YJôñ@9í‘hr°@2&‡+ J@2"e+ÓÃ@1²-V@1û~ÿ—@0ëxFÜ^@0çKƧïž@0ëxFÜ^@0äêJŒM@0ëxFÜ^@0ä•*™1?¯oÝ ÷6}?½Ë9ØŠ§?‘,fŸCô6?Œj6_?“Œ4f(Rú?•(Ï¢Uÿ?¢Æ÷Xê†?“í +Âô‚?³2ºŽ'?]bËn~?–å·ÑfWâ?•ŒSˆw?­‹©(ÓDÊ?ï7è-ÖR?‚ù…žÄ`x?‚ð'ã:ÂÝ?Œ˜ˆTÙ8ª?ˆ¾þúWZ‹@@@@@,@*?ð?ð?ð?ð?ð?ð¿P%d6Å?h¯<¶Ù€?Tk‰áÐ’˜?a×ÚW@¡Ýźz@¤îð#^–?eË‘ÛI>Ä?wîsŠK±D?Âã{ý @Í?ã±î˜H~‡@ŸoÏšOnn@è@«ŒIº^5@«ŒIº^5@«ŒIº^5@«…j½@«ŒIº^5@«„—­”@«ŒIº^5@«{¥<{–@«ŒIº^5@«{e¸O@«ŒIº^5@«€ µ‘ @”« Iº^5@”« Iº^5@”« Iº^5@”ªö€‰R@”« Iº^5@”ªôëë)£@”« Iº^5@”ªú}ýƒT@”« Iº^5@”«bOß¡@”« Iº^5@”«"l—c@3|ÚQ@3ohÛŒ@1Š^5?|í@1zpJ¨@0’Ðå`A‰@0Ž…Ð Ób@0QÞi­BÄ@0CÃfÂkó@0QÞi­BÄ@0Hº0,@0QÞi­BÄ@0I¶0˜àÈ?|¬h2:“?.ƒFI‡?‘%ja •a?‹¯^ÆÅ‹Ú?“v–j“–?“Ø„„1ð…?|¬h2:“?—™‘•³ì4?‡6Ƴ?©€Ù~nY?”d°´}ê¡?“ÿÀ³þ§?‚qÑ9Ð?0ét:äm?ƒÏòt„´&?ƒ8;°­é?z‹!?C¦i;ã@@$@@"@<@8?ð?ð?ð?ð?ð?ð¿o%µ! ?RÃAJ?U•|5T²d?]wl“Bë@«ƒÐ¿à@”«-`z2?t‹…Cœ£?|¿»„¦{û?ôþ¨d>¶@[_ÂÕQ@ŸeÊâ¯Qê@é@¤±n—OßÁ.„€@¤±n—OßÁ.„€@¤±n—OßÁ.„€@¤±n—OßÁ.„€@¤±n—OßÁ.„€@¤±n—OßÁ.„€@Ÿè‡+ Á.„€@Ÿè‡+ Á.„€@Ÿè‡+ Á.„€@Ÿè‡+ Á.„€@Ÿè‡+ Á.„€@Ÿè‡+ Á.„€@9šÔ,<ŸÁ.„>¤µÜÆ@5©‡+ Á.„M‰ûçm@4È“t¼jÁ.„QnÙ‡@4…œàu÷Á.„NÜC,¥@4…œàu÷Á.„NÜC,¥@4…œàu÷Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøê@ªp¢MÒñª@ªp±&éxÔ@ªp¢MÒñª@ªp¡-w1@ªp¢MÒñª@ªp«C,¥@ªp¢MÒñª@ªp IQ‚@ªp¢MÒñª@ªp¡:’£@ªp¢MÒñª@ªp¡–R½=@§ð¬1@§ðýó¶G@§ð¬1@§ði­BÄ@§ð¬1@§ðOv_Ø@§ð¬1@§ð;dZ@§ð¬1@§ðkP°ó@§ð¬1@§ð—ö+k@8Bò䎊@8?²-V@3«¥ãS÷Ï@3­æšÔ,<@2Ú~ùÛ"Ñ@2Þÿ—$t@1½cˆe”°@1¾}Vlô@1½cˆe”°@1¿ò䎊r@1½cˆe”°@1¿Ë’:)È?îŠõ ?ÎÁ¯‰t0?•=ÛtQ¾F?‹û…†_?’Z†Ažj?’€ú¤ˆ4 ?}Ñ¿ž,?” Á lŸž?“5ñ µ?Níú¾?’pP‡È»?“êXÔ #{?Œ¢yëjk±?)‰€Zw?ŠÌ÷7Õ}?ƒGϵ¨í'?‡Ä­‹›Ü?ˆ +¿„r©Ý@@@@@,@,?ð?ð?ð?ð?ð?ð¿c6Q;?_É~Öd?\B0°a ?IœÿÆï@ªp£JÓ +m@§ðÎ-Ü?s°k \õ?oOÕêšZÖ?áîꜵRk?Ü|ð3Í„@ŸmMI@ë@®ÉŽV“@®ÉŽV“@®ÉŽV“@®ÉŽÙ‡+@®ÉŽV“@®É\(õÄ@®ÉŽV“@®ÉŽÙ‡+@®ÉŽV“@®ÉÅÖ8†@®ÉŽV“@®ÉÅÖ8†@¡Îýó¶F@¡Î?|í‘@¡Îýó¶F@¡Î¼j~ù@¡Îýó¶F@¡Îýó¶F@¡Îýó¶F@¡Î¯O „@¡Îýó¶F@¡Î¢3œ@¡Îýó¶F@¡Îã¼Ó[@0­¥œàv@0­¥œàv@*ÍV“@*Í(Œç¯@*†éxÔýô@*†éxÔýô@)”`ªdÂù@)”mÅÖ8‡@)”`ªdÂù@)”záG®@)”`ªdÂù@)”mÅÖ8ˆ?Éa—Ã(Ê?Ì&ÏøHÃ?‘"žæÆó¡?‹ÁË…ÉT?îú/´`?¸û:?ÐbV‡,?’r/BÖ?|™,Ž!?6) }’ë?ÔÒ@úˆ‘?M\³Ù“@?€b¡´ñ@?Œ­·Ž~('?‚s@ˆaÛ?‚ãaÎúvh?†‰Oú|q?†‰Oú|q@@@@@,@(?ð?ð?ð?ð?ð?ð¿@0ø ?zƒrX?$ÍŒ¼`)?ú]Ž=÷@®ÉŽ5â.@¡ÎºÜ®¢?4•ØãP?DBãpA¤?cœû¹A½?4;?׊@Ÿs ¤­Ö7@ì@­–$Z¬@­–'®zà@­–$Z¬@­–%—Ñãb@­–$Z¬@­–(Á=ã@­–$Z¬@­–'a\Ø@­–$Z¬@­–"Ç’k@­–$Z¬@­–$—‡ý@™û}ó¶E¢@™ûgòƃ@™û}ó¶E¢@™ûp¨žŠ@™û}ó¶E¢@™ûo-«é7@™û}ó¶E¢@™ûr+¤o™@™û}ó¶E¢@™ût¬¤Å@™û}ó¶E¢@™û„QHtz@8–»˜È@8}™¬@3‡ÎÙ‡+@3„{5Œ]¶@2Ú~ùÛ"Ñ@2ØP˜æ–`@2 +0U2a|@2”Õ)Ð@2 +0U2a|@2~Ýwn†@2 +0U2a|@2 +äÀÉ‹z?¦¸Ùûu‘?’™SBx®ê?’¨4°¼Ã?ޤUõ{þ?“â÷óÿž?‘¿¿l% ?®Au £8?•+efó†Þ?”Y¿ˆq‹‘?‘0€eä?”p:_j°?‘—Y=OÿD?¡Žá,97?‘Z„­OMŠ?‰ýÅ­LcŒ?…ǹÛ)?;ñ1¼1›?‰1D +"r™@@$@,@*@5@2?ð?ð?ð?ð?ð?ð¿T`Š8ç?k:Á¹¥€?GÆ0!?@Ä?SÎ*’f ª@­–%i!¡É@™ûvÒVHW?]àð¾ù?g= +éZ‚?±súµVH?Âù-kÿÃ@ŸpµÍjΕ@í@¯œ½p£× +@¯œãn—@¯œ½p£× +@¯œ¼C,¥y@¯œ½p£× +@¯œ¿ò䎉@¯œ½p£× +@¯œ½p£× @¯œ½p£× +@¯œ»W>«7@¯œ½p£× +@¯œº¹õY³@¦¤®—Oß@¦¤Ÿ¾vÈ´@¦¤®—Oß@¦¤²T`ªe@¦¤®—Oß@¦¤®æ1ø @¦¤®—Oß@¦¤¶âëC@¦¤®—Oß@¦¤±[W>¬@¦¤®—Oß@¦¤¯·éù@7cg ù l@7Uoi@3‚° Ä›¦@3‚° Ä›¦@2ˆ“t¼j@2ˆ1&éxÕ@1õµsê³h@1õ$Ý/@1õµsê³h@1õF +¦L0@1õµsê³h@1õ¸Që…?¾lO»x#?¦Ì '?“ºo½Ô€? Ð ÷Ž ?’¥.Kn Í?‘f]£àG?±ÿ}ö?’?Á• ñ:?“÷Š>õª?‘’â·ýÅ?’l{9ÙŽ?‘ƒZ)Àˆ?µûįJ˜?†¡HŸÊç?„›‹ÖO?…<ò N ?ˆ +¿„r©Ý?‡<û¡71@@@@@,@&?ð?ð?ð?ð?ð?ð¿`ŧìC€¿Rá?^ÃV @w\?d¸J·\L,@¯œ¼{‰œ@¦¤²t‹ÍÜ?nìQÊ[3É?viò,¿?ÓQ¬H”?ã†#׉@Ÿr*!²e¾@î@¤ Ä›¥ã@¤ Ä›¥ã@¤ Ä›¥ã@¤ !ÿ.Hé@¤ Ä›¥ã@¤ ù kº@¤ Ä›¥ã@¤ !°‰ '@¤ Ä›¥ã@¤ |í‘h@¤ Ä›¥ã@¤ |í‘h@¨Ýž5?|î@¨Ýž¸Që…@¨Ýž5?|î@¨ÝžÑ·@¨Ýž5?|î@¨ÝžOv_Ù@¨Ýž5?|î@¨ÝžvÈ´9@¨Ýž5?|î@¨ÝžÒˆÎp@¨Ýž5?|î@¨Ýžß¤?å@3#g ù l@3#Z…‡“Þ@/³t¼j~ù@/³Ãa@N@/DZ¬1@/D›¥ãSø@.Ǔݗö,@.Ç»/ìVÖ@.Ǔݗö,@.Çâ‚@·@.Ǔݗö,@.Ç8}¿I?|¬Çëý ?ZÁ».œ?‘$Cê¡@í?Œ:Z2‚b?‘çG¸?æöæ×t?|¬Çëý ?’0nà=Q“?–ÐO(·Š?3.Ylî?‘!U?Ð{Ò?e¾DQ„Q?‚|׿pY?Œ¾»•lŽ?‚‘´…=Cb?‚ìxqC?†¼Š˜L¥÷?‡´*žZ}Õ@@@@@,@,?ð?ð?ð?ð?ð?ð¿(Â|°>ïŽP?-øR€¹0?Id1@¤ }¦ÚP@¨Ýžºä+?LòôlîX?$é ïø­?¦¦Å$à ú?VÆbäÃ~@Ÿfà¬!u@ï@¥Õýó¶F@¥Õ$Ü@¥Õýó¶F@¥Õ”Fs‚@¥Õýó¶F@¥Ôÿ±[W?@¥Õýó¶F@¥Õ4mÅÖ@¥Õýó¶F@¥Õã¼Ó[@¥Õýó¶F@¥Õéá°Š@¨Ä“t¼@¨ãS÷ÎÙ@¨Ä“t¼@¨Ãn—@¨Ä“t¼@¨¶R½<7@¨Ä“t¼@¨¾Ñ·@¨Ä“t¼@¨¼C,¥z@¨Ä“t¼@¨ºû~‘@8ºqÞi­C@8Á [À7@4º^5?}@4n—P@34“t¼j@3! ²•éâ@2Ç ù kº@2Ó©*0U2@2Ç ù kº@2Ãê³g ù@2Ç ù kº@2Ã@N¤¨Â?´Žé`m? @u-I­?¤MD¢e?Ÿ¥oí¬Èž?“eð7Õ@?”éëÀÍ?³‰ÑpEIt?•N¬Ÿª`Ž?¦² ͉«?žÎ"”`ù†?“Æ×q„nð?Ÿ¥O[õÆ?³ÿ®Üå/ï?œFg*V¿3?“„*0x)Æ?¢ú5×_ð?Œ8¸wx¯?¡‘8²™ç@@@@@"@*?ð?ð?ð?ð?ð?ð?s´1·§€¿uò„"ê€?q“híãÊw?iHl­]x@¥Õ£E¯N@¨¾½¤H?ƒ,p¿x¯p?z•„ô?í} ú{[Ó?Øù ‚ìì@Ÿq¡äbÇ^@ð@«’‹Æ§ïž@«’‘©ûçm@«’‹Æ§ïžÁ.„€@«’‹Æ§ïžÁ.„€@«’‹Æ§ïžÁ.„€@«’‹Æ§ïžÁ.„€@«’‹Æ§ïžÁ.„€@¬FÖ‡+ @¬FÚŸ¾vÉ@¬FÖ‡+ Á.„€@¬FÖ‡+ Á.„€@¬FÖ‡+ Á.„€@¬FÖ‡+ Á.„€@¬FÖ‡+ Á.„€@8ÞHè§ç@8؆YJôñ@4Ùº^5?}Á.„M‰ûçm@4H“t¼jÁ.„QnÙ‡@3uµsê³hÁ.„NÜC,¥@3uµsê³hÁ.„NÜC,¥@3uµsê³hÁ.„NÜC,¥?¢F^ì¼Sð@8#˜@8¾:@8 >+@8Iç@8Ù?™™™™™™š@8Î÷@8i§@8Å@8S@8û—?²eˬÊup@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøñ@¦Ã‰7Kƨ@¦Ã‰xÔýõ@¦Ã‰7Kƨ@¦Ã‰“ àÞ@¦Ã‰7Kƨ@¦Ã‰ûçl‹@¦Ã‰7Kƨ@¦ÃŠqÞi­@¦Ã‰7Kƨ@¦ÃˆõÂ]@¦Ã‰7Kƨ@¦Ãˆ>BZî@¢ˆ‰º^5?@¢ˆŠ~ùÛ#@¢ˆ‰º^5?@¢ˆ‰“ àß@¢ˆ‰º^5?@¢ˆ‰º^5?@¢ˆ‰º^5?@¢ˆˆ1&éy@¢ˆ‰º^5?@¢ˆˆXy=Ù@¢ˆ‰º^5?@¢ˆˆÁTɆ@5™*0U2b@5˜Ôýó¶F@1{ Iº^@1zû~ÿ—@0®ùÛ"Ðæ@0¯ö”Ft@0n_oÒ @0mÌcñA @0n_oÒ @0m«ŸU›=@0n_oÒ @0mÙb¶®?|öOÿÝ?Čۨ1A?‘\H{gX ?ŒGZ0eê;?‘\Žýµ€7?âé¨ë7F?|öOÿÝ?’uß¿çÒ?ð{¥âdú?’GÎ>GÅ?‘„ÅMè?ƒÁþGEÛ?‰¢Ò+ÜÝ:?Å9–o?‚¸“Îè ø?ƒR¨º“JÞ?‡ã ËÄž?‡2[síç@@@@@,@*?ð?ð?ð?ð?ð?ð¿ “-À¿>¤‘ïˆ?*´|.Ðs-?$z\ÙR@¦Ã‰WÂø@¢ˆ‰ceã`?J•Òï±Ï÷?D߬È?É?¢Øls×–Ð?–hÑ=t@ŸfáýGÜÍ@ò@¦a["Ðå`@¦aVÈ´9X@¦a["Ðå`@¦aIùrH@¦a["Ðå`@¦aQA [¿@¦a["Ðå`@¦aU*™1@¦a["Ðå`Á.„€@¦a["Ðå`@¦aZ)Çy§@¡­¡ÊÀƒ@¡­#S÷ÎÙ@¡­¡ÊÀƒ@¡¬ö+jçÕ@¡­¡ÊÀƒ@¡­:û~‘@¡­¡ÊÀƒ@¡­"©“ à@¡­¡ÊÀƒÁ.„€@¡­¡ÊÀƒ@¡­ /ƒ{J@8ð4mÅÖ8@8ôM:’£@4Yº^5?}@4FÏAò×@3Ãt¼j~ú@3°ò{²þÆ@2øDЩ*@2íV”@2øDЩ*Á.„NÜC,¥@2øDЩ*@3-à ?¢F^ì¼Sð?§½yKÖú? éÞÝí»?‘sNX„êÒ@8Iç?–ËÒÙI°?Ÿ‹‘+-/Ü?¦À o]?£¡Í¾8+ã?§²Ñ’ÂÏ@8S?•÷f¸D¦?ÃË÷–Ç1ó?’Эs_ª`?¡7‡V/Žr?™/#ÕË®r@8 Ø?šÙ,yf’Y@@@@@"?ð?ð?ð?ð?ðøøøøøøøøøøøøó@©˜bMÓ@©ÍOß;d@©˜bMÓ@©?kEø@©˜bMÓ@©IROìœ@©˜bMÓ@©K¨gò@©˜bMÓ@©|E¡€@©˜bMÓ@©•Ët.o@˜5?|í‘@˜vE¡ÊÁ@˜5?|í‘@˜ëdìá7@˜5?|í‘@˜r3DZ]@˜5?|í‘@˜8 !T@˜5?|í‘@˜8X(S@˜5?|í‘@˜<]‹?ê@8zqÞi­C@6ÊÀƒn@30Ä›¥ãT@1Åx^ª»@21‰7Kƨ@0ÓZ>Ũ@1¸DЩ*@0UõU F2@1¸DЩ*@0XÒ¿x@M@1¸DЩ*@0VÇ|_?€Ã{s°úi?’S†­ÍË?“w>Zò«?‘€YãFŸ?²Ýé+i‰?´]lþmY?‡©½(‡üÐ?¢güQ÷?¢bGöF?«ˆß7€G?̽±…Vo??ÇK]°{f?—˜²åe¦?¾á¼¢Ú?‡«tºÛ=?†š<òA$¢?”]Ô4KÖ?‘~³1î@@@@"@;@9?ð?ð?ð?ð?ð?ð?§Â´d»¿¸-ÊЕà?`(×fû?õ…÷Ú@©÷šÅ¤'@˜Éø: l?rÁcþ0Ã@?ŸÔZ¡’.?çvÆ.@gîf!IÚ@Ÿ]N/ÿÍ@ô@©7¥ãSø@©7(õÂ@©7¥ãSø@©7~ÿ—@©7¥ãSø@©7ÇË)@©7¥ãSø@©7cˆe•@©7¥ãSø@©7­«ŸU@©7¥ãSø@©7è>B[@ªóèõÂ\@ªóê~ùÛ$@ªóèõÂ\@ªóå8ï4Ö@ªóèõÂ\@ªóçE8ï6@ªóèõÂ\@ªóí\ú¬Ú@ªóèõÂ\@ªóéQ‚©”@ªóèõÂ\@ªóêŒL˜@6 ]cˆe”@6 ‘ÑN;Í@2€ Ä›¥ã@2\(õÂ@2"-V@2" Iº^5@1TmÅÖ8†@1T!-w2@1TmÅÖ8†@1TÝ/Ÿ¿@1TmÅÖ8†@1Usê³g¡?€‚ñêã ? ¸×KG?’#ç}iïë?‹Æ úJ-M?’»–j˜ú?‘PÊÑ<Ýl?€‚ñêã ?’r/BÖ?“Ú%¿»8?Ò–‚h±n?’8,²ñ±T?‘ ‡#é +´?‚íWçé„?Žâç.¡È?„ò—TËÄ?ƒì%­¹Ï‘?‡Õ˜]–GÄ?ŠEÝ‹N@@@@@*@(?ð?ð?ð?ð?ð?ð¿<~¶|À?2Fm?<{ V¡ô{?:^€J1þð@©7r8ï"@ªóêËn?\L[7t²Á?[ r© ’u?¡*{0±?À½¦´ÓÝ@Ÿg’Ûlq1@õ@¤]¥`A‰7@¤]§l‹C–@¤]¥`A‰7@¤]ž5?|î@¤]¥`A‰7@¤]™Û"Ðå@¤]¥`A‰7@¤]žùÛ"Ñ@¤]¥`A‰7@¤]“Ý—ö+@¤]¥`A‰7@¤]’:)Çz@ ‡|í‘hs@ ‡~vÈ´9@ ‡|í‘hs@ ‡|¬1'@ ‡|í‘hs@ ‡y‡+@ ‡|í‘hs@ ‡}/Ÿ¾@ ‡|í‘hs@ ‡…”¯O@ ‡|í‘hs@ ‡„?åÉ@6?–»˜È@67§†Â&€@2.5?|í‘@2+’:)Çz@1t“t¼j@1iè>BZî@0î_oÒ @0ëJ#9Àì@0î_oÒ @0ã,¥zxl@0î_oÒ @0âÞÑ·?3ßa=„?qÂ' +B›?‘ÓKñá»Ù?‹¯eU5?Ÿ0 碽ü?£eÂÌtµ?}Ñ¿ž,?“-N•I`(?ß‹…&?ð{¥âdû?›†þ.D?ŸèØŸ#ߦ?°ón÷°E”?Œ°¶.Ä+Æ?¨À°ÒÞ@?…ÇóÏ€9"?‹ì3åý?‹¼`’ i2@@@@@(@(?ð?ð?ð?ð?ð?ð¿pÎÚGR?K?H ?JiAçäl„?I1AÌm@¤]Ÿd-Ù5@ ‡€®ïË?d°ßÖ +y?h¶pmùi?Â;)[Õƒ6?Ð&‚ÚÙº@Ÿf¼J­-Z@ö@¦’ë Iº@¦’Ê~ùÛ#@¦’ë Iº@¦’ðË)^ž@¦’ë Iº@¦’Øï4Ö¡@¦’ë Iº@¦’Öý!ÿ-@¦’ë Iº@¦’é­BÃÊ@¦’ë Iº@¦’èÎp:û@£©bMÓ@£©“u@£©bMÓ@£©-V@£©bMÓ@£©&éxÔþ@£©bMÓ@£©»˜Çä@£©bMÓ@£©uŽ!–@£©bMÓ@£©9Xb@8ÿ–»˜È@9Åo@4\Iº^5?@4NvÈ´9X@3´“t¼j@3¢@·€4n@33&Á½¥@3ò䎊r@33&Á½¥@34êJŒM@33&Á½¥@33× +=p¤?²Æ—ÕŒ?¡x¡´BÇ?¨=ŠÂ£¥–?œÖ,?™'Ö™:0í?˜s˜»ì•?º¯*RœÃ¥?§D¾12£?¦\ª‹×›Ý?§*ÅÌö¡?–kš‘ž?˜I­}ý½Ä?®›©L Ý/?œ]ŸFV”?‰ZaizÚD?ϯ<«¬í?‘ ê$4 ?–Mí\{WÐ@@@@@,@,?ð?ð?ð?ð?ð?ð?}™OÒÏÀ¿9È?d%æ¨Èh?V8õ³ÉQ×@¦’âå”È@£©naõ»?wO~ß¹™B?fÚNÖd-Î?Ôg¨¿i?¬à +ˆåD@ŸrrrJ5@÷@¦1µ?|í‘@¦1´†’@¦1µ?|í‘@¦1Âim,@¦1µ?|í‘@¦1Ž@_@¦1µ?|í‘@¦1ôœì@¦1µ?|í‘@¦1žºˆ¨@¦1µ?|í‘@¦1«³Îx@”Š$Ý/@”Š+ J@”Š$Ý/@”ŠDÙ+¿ø@”Š$Ý/@”ŠNÒ2J3@”Š$Ý/@”Š57Ø®e@”Š$Ý/@”Š(ÿ.ž¬@”Š$Ý/@”‰ûÂvæ@7:qÞi­C@7;<üQÂ@3B° Ä›¦@3Êr®©@2Ct¼j~ú@22š¼†à@1xDЩ*@1hs|3ZÓ@1xDЩ*@1ik51ö‚@1xDЩ*@1q2;3Ç?™û-™,Èß?°&Íwh?ŸÜeÜUô?˜Ú|Þ„^?˜®±4¥vã?˜…ÖŸ1¬?}@T˜ÁÎ¥?³eöÕ—S~?¢iÙúÍuh?¦=ÀÝû?Ÿ?AªôËÔ?™ùhr•2¼?–™ªÊN?“èZè¥@Ä?‹ÚÙÿ•+?ˆý¯ŒðòÞ?“ÃÃàž:?»éhO@@,@(@,@8@6?ð?ð?ð?ð?ð?ð¿dŒ®?N¾z:Ø?iE¾2—°?c}(±Ÿ†@¦1§V®=|@”Š èps«?†®ÓMCͽ?ˆ%ªy Œê?ùúÙI¶bÀ@ƒ5ùaÊu@ŸjŒ¥‰Ó@ø@¡ƒ,‹C•@¡ƒ,Iº^5@¡ƒ,‹C•@¡ƒ0©*0@¡ƒ,‹C•@¡ƒ/Åo@¡ƒ,‹C•@¡ƒ.±Ä2Ê@¡ƒ,‹C•@¡ƒ)á°‰ @¡ƒ,‹C•@¡ƒ*JŒM@£ mV@£ mV@£ mV@£ poiDg@£ mV@£ lcñA @£ mV@£ mjO@£ mV@£ lÌÌÌÍ@£ mV@£ l<žìÀ@5VšÔ,<Ÿ@5Wl‹C•‚@2k¥ãS÷Ï@2oùrGE9@1¤¼j~ùÛ@1¥Ö8†YK@1(è§æ›@1,PHð@1(è§æ›@1)b¶®~@1(è§æ›@1*³g ù +?1·†Æjñ?‘6 '8?‘D&»ä?$Ìj½BÙ?‘2A¥Ø?’Ýå"çX?}Ñ¿ž,?’ñ©ûçlŒ?ŽËÜ¿€?Ë{4æk?‘+ùÔ!½‹?‘«VTÓ?„ã¼ÓZ…‡?ŽõÕJ?ˆìûIè÷˜<(À?Hè&ã?&ÞõŒX;â@¬½½zºs>@¬»]Wý A?+b* Kª?5¦!«tÐ?Qñ±þ‡Zì?dy3Qò&L@Ÿs‹Š@ú@«ñ©ûçm@«ñ©ûçn@«ñ©ûçm@«òÖð'J@«ñ©ûçm@«ñÓíR~@«ñ©ûçm@«ò9ü½^@«ñ©ûçm@«ð¼Õ]T@«ñ©ûçm@«ðÂíM•@“qS÷ÎÙ@“qSt¼j@“qS÷ÎÙ@“qP¸#…Ø@“qS÷ÎÙ@“qR.üHÕ@“qS÷ÎÙ@“qTèz@“qS÷ÎÙ@“qRâL@“qS÷ÎÙ@“qS8ý ¥@2VšÔ,<Ÿ@2V€IQ‚@.³t¼j~ù@.³@¨¸ââ@-?;dZ¬@->¨ù˜¤@,Aò×t@,èÑQ®@,Aò×t@,æ1ø ‘@,Aò×t@,Ö5÷ Ñ?É^ÈmÔ d?Ã{TV½‹?‘Èþ× ?‹¬E[ÄØ?ì”:r§þ?µÿ ÎÜ?ÐbQë„›¦?’>pÞª|?„^<+ø?/#ͤ†Â?Ö“jø?P ±pà?€bîF¾§?Œ²/éýòÐ?‚yñìÏòø?‚ãD³Ð²î?†Œîa€?†‰~±.@@$@&@&@8@5?ð?ð?ð?ð?ð?ð¿FÁÆ@¿4ˆÛ2ô?-üO(?%|CËtñ@«ñXû>o@“qS©Šïè?;õ…T´©¬?4Vꇑœ?s8¯«$­&?b(»É @Ÿsötn@û@¦Ï\(õÃ@¦ûdZ¬@¦Ï\(õÃ@¦úŸ¾vÉ@¦Ï\(õÃ@¦?åÉ@¦Ï\(õÃ@¦3@N¤ª@¦Ï\(õÃ@¦ÇË)@¦Ï\(õÃ@¦qø -@®–vE¡ÊÁ@®–†fffg@®–vE¡ÊÁ@®–'ÕfÏB@®–vE¡ÊÁ@®–=—ö+k@®–vE¡ÊÁ@®–Ö¡aä@®–vE¡ÊÁ@®–CFÜ]d@®–vE¡ÊÁ@®•—$tT@9¹Œ~($@9"MÒñ©ü@5Š^5?|í@5eF +¦L/@4¹7KƧð@4’ÞÑ·@4O „M@4L˜_ö”@4O „M@4HõÂ\)@4O „M@4<¿±[W??îŠõ ?·Õ[ÿG£?¦ dW÷Bþ?Â+3ß#Iú?ºFILòXT?¹¢{ãJÂ?ÀÊ»d9\?Àʳ·Ûêy?¨Î×>ÀÉ?×áp:Y_?ÑB¿ú†­Ç?©¥váÛ$>?™Jz¬Uf?š/¶íê¯?˜Ð™Q$Ò?¢{_@j§?¢VÂÀ?–¨¬:­÷@@@@@@?ð?ð?ð?ð?ð?ð?’»ˆŠ/À¿«—3‚$ ?w³ âãG?…[n”d@¦/´3ƒô@®•ò¨1p¾?Ÿ?Ú ’t?¦X·kŠï?í=ç)Qð”?ðÃ1B¯@Ÿl}~¥¸@ü@¯"£S÷ÎÙ@¯"ºŸ¾vÉ@¯"£S÷ÎÙ@¯"£Yõ£<@¯"£S÷ÎÙ@¯"šRÒêÚ@¯"£S÷ÎÙ@¯"¡K p@¯"£S÷ÎÙ@¯"œdp<@¯"£S÷ÎÙ@¯"œ—O@–¥µ?|í‘@–¥ÊvàD{@–¥µ?|í‘@–¥ÓuxJ@–¥µ?|í‘@–¥Îg‡¿˜@–¥µ?|í‘@–¥Íà r@–¥µ?|í‘@–¥¾“òä@–¥µ?|í‘@–¥À“ t@8¨†YJôñ@8‹Õz9.@48r° Äœ@41,”ï@3V”@3˜“¾êŸ@2Œ¿±[W?@2‰‰ËþÊ@2Œ¿±[W?@2‹ö[s#2@2Œ¿±[W?@2‰ð&H|?|¬h2:“?•q»-u1?”ÈÄš\´?:±„@Zt?’æj³úÃ¥?’qPü?†…„â8 ?–À€/À?‘!dxD³?“|˜R2?’·—éÓù‘?’aØ5Ut¬?¼å†W)¶?•¬³´oëº?Ú«4›C?†7Ź œ?ŠGOe”?‰ÄÑ|=†@@$@$@*@5@5?ð?ð?ð?ð?ð?ð¿}½‚"¿QE²é?Q˜M?EbÀ'ê@¯"©zº˜@–¥Æxà†˜?r_ˆlxð ?eÀÅp5Ç?íO H; ¼?Î/`, +>@Ÿh):e…i@ý@«Hýp£× +@«I ®18c@«Hýp£× +@«HíÞÕ;@«Hýp£× +@«H×,—#<@«Hýp£× +@«IæÙ¦@«Hýp£× +@«I jyó^@«Hýp£× +@«I•¦od@•(E¡ÊÀƒ@•(@Âçó@•(E¡ÊÀƒ@•(r^z˜i@•(E¡ÊÀƒ@•(nY¦Ð@•(E¡ÊÀƒ@•(hò–¿Ê@•(E¡ÊÀƒ@•(sÙ2ç@•(E¡ÊÀƒ@•(„¼Ólº@7įO „M@7ÌZL"râ@3|í‘hr@3”ÊYp/Ä@3gKƧïž@3yF^˜`@2ÜÚQÎ@2¿óþDÿñ@2ÜÚQÎ@2½u,† ¨@2ÜÚQÎ@2õjÖÞM? Úïõ¥Ú?îÙ—êà˜?œýÜÁfk?˜ÃíþN?›SPǹ??š_ÅL¥ Q?œÆæXÆd?“Ç€S™k ? oTð?¤Ò]\}aŸ?¢‚$á¡?ŸÎ35MQS? Ópf?‘ Ï¿‰Á?””„ÝÌA??“¤Ê#‚»?¡è VÛ?˜oGÈGû,@@ @(@(@8@7?ð?ð?ð?ð?ð?ð?P¯/Ê?}:U‚DÀ?a«"FM³o?B|Ú„E@«I §r%Ö@•(kd«§f?}pý!g^?bOåT¤ÛB?áq4ÐË*?¢}7ʺg@Ÿl¾b\²@þ@§f|í‘h@§f}p£× +@§f|í‘h@§fu$Ý@§f|í‘h@§fiã½@§f|í‘h@§f„“t¼@§f|í‘h@§fl²•éâ@§f|í‘h@§fiDg8@¦GÝ/Ÿ¾@¦GÓ3334@¦GÝ/Ÿ¾@¦GЉ 'Q@¦GÝ/Ÿ¾@¦GÍV@¦GÝ/Ÿ¾@¦Gé“ àß@¦GÝ/Ÿ¾@¦Gý¿HÌ@¦GÝ/Ÿ¾@¦GäÂø7¶@8VšÔ,<Ÿ@8TÂø7´¢@4 Ä›¥ã@4GE8ï5@3]V”@3w»/ìVÖ@2Ç ù kº@2ÎùÛ"Ðæ@2Ç ù kº@2…ãS÷ÎÙ@2Ç ù kº@2Åo?Ÿ‹‘+-/Ü?™Æ‰©·?«HFÈCý?“gã_$ô?·fl®…?ÀLìTO˜?˜ž^ƒÿ*ˆ?’š'†­`í?VÇ·Þóï?•¯TÒV?ÀÒ›–Óv?Á¤?ŽâS[ÞDí?¬µöÂ};?°ærÂÏ?¤÷™ïy\,?—1©±Æ›n?—ã ËÄž@@@@@,@*?ð?ð?ð?ð?ð?ð?[÷¦£Ì?€ƒÞ 7€?d§V£?Xl&7O™@§fÅ!@¦Gã²cò?ybðsÁ¼?q;9SR…A?Ó¿ÏLh…;?ÀÝn­² 2@Ÿe€”NûH@ÿ@£½€@£½€A‰7L@£½€@£½-w1@£½€@£½€ƒn˜@£½€@£½†L/ƒ{@£½€@£½}Vlô@£½€@£½~i­BÄ@¡µLÌÌÌÍ@¡µK…¸R@¡µLÌÌÌÍ@¡µGÕfÏB@¡µLÌÌÌÍ@¡µL~($ @¡µLÌÌÌÍ@¡µJÀƒo@¡µLÌÌÌÍ@¡µEœàv@¡µLÌÌÌÍ@¡µBÞѸ@3àØDЩ@3ßò䎊r@0‡ÎÙ‡+@0…ÜÆ?@/mOß;dZ@/g ù kº@/oi@.üàuöý"@/oi@/Ä›¥ãT@/oi@/IQ‚ª?|öOÿÝ?“‹ë÷?’,³Zêª?—;±C??‘ÇöÃÞ`?‘ø)±'3?|öOÿÝ?–ÖÀeªw?‘S1Êz?¤µÜÆ@4Ùº^5?}@5#àGC¶@3¶§ï²-@3Þäu@0|ÚQÁ.„>¤µÜÆ@)Š~ùÛ"Ð@)Œæ …Î@(h1&éxÕ@(iAâpÞ\@(3üPH@(49ftE³@(3üPH@(4²ÀüSê@(3üPH@(36Í@8 +Näy?Ãw<5Û™?‘'D —ò?‹« +»w"?õL&VB?Ó{£y@82rê?’Ï|F ?„&ZÆ?8+œ¾ ?ç*Sk?+×n9u@8L?ŒÃ6vJ«?‚½èÔ +?‚ñØ€6>?†“’z^ýj?†º|‘ §@4@2@1@D@D€?ð?ð?ð?ð?ðøøøøøøøøøøøø@©ó–“u@©ó¡$Ý.@©ó–“u@©ó•¨Xy>@©ó–“u@©ó¢Ðå`B@©ó–“u@©óž\‘ÑO@©ó–“u@©ó—Á½¥@©ó–“u@©ó˜DШ@¢õfffff@¢õe`A‰7@¢õfffff@¢õt¢3œ@¢õfffff@¢õp Ä›¦@¢õfffff@¢õmà q@¢õfffff@¢õjOv@¢õfffff@¢õi“ àß@7uS&Á¾@7sä%®æ2@3Ù‡+@3a|ÚQ@1éÛ"Ðå`@1àoiDg8@1YŒ~($ @1Q ²•éâ@1YŒ~($ @1WsüPH@1YŒ~($ @1VÈ´9X?„F/·ÿP5?—µ”öŒqÒ?ñAaú[?–Ë„&³ƒ.?‘ÇöÃÞ`?“lP {“›?…ÅBðrç?˜&§dU(?»Þ‹"è?—×:`‰?“£c”?”µìSõüS?¢4£!– j?–®UÒ.?ƒíÈm½!¿?ˆÝíá‰?ˆ +¿„r©Ý?ˆk! ¨l@@@@@*@*?ð?ð?ð?ð?ð?ð¿_¼ª“Ä?RlÚ?9èéµEI?E[7õÓ÷@©óœˆ$N@¢õh…/:?Z>:­û–?fMÆv–ÿu?¶$—=/u?Ì *A&@ŸhzIW˜•@@Ÿ¼Ü(õÂ@Ÿ¼¹Û"Ðæ@Ÿ¼Ü(õÂÁ.„€@Ÿ¼Ü(õÂÁ.„€@Ÿ¼Ü(õÂÁ.„€@Ÿ¼Ü(õÂÁ.„€@Ÿ¼Ü(õÂÁ.„€@žÉJÀƒo@žÉ;çl‹D@žÉJÀƒoÁ.„€@žÉJÀƒoÁ.„€@žÉJÀƒoÁ.„€@žÉJÀƒoÁ.„€@žÉJÀƒoÁ.„€@6ÞHè§æ@6ì¹#¢œx@5° Ä›¦Á.„M‰ûçm@4$¼j~ùÛÁ.„QnÙ‡@4&YJôðØÁ.„NÜC,¥@4&YJôðØÁ.„NÜC,¥@4&YJôðØÁ.„NÜC,¥?æ ç«Z–@8#˜@8¾:@8 >+@8Iç@8Ù?æ ç«Z–@8Î÷@8i§@8Å@8S@8û—?æ¡‚á¾A@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@¥>å`A‰@¥>—­O Ù@¥>å`A‰Á.„€@¥>å`A‰Á.„€@¥>å`A‰Á.„€@¥>å`A‰Á.„€@¥>å`A‰Á.„€@œÌ\(õÃ@œÌÚ¬1@œÌ\(õÃÁ.„€@œÌ\(õÃÁ.„€@œÌ\(õÃÁ.„€@œÌ\(õÃÁ.„€@œÌ\(õÃÁ.„€@7£g ù l@7-FC¾ž@3^Ù‡+Á.„M‰ûçm@2t“t¼jÁ.„QnÙ‡@2a:’£SÁ.„NÜC,¥@2a:’£SÁ.„NÜC,¥@2a:’£SÁ.„NÜC,¥?Ÿ—Bp±È@8#˜@8¾:@8 >+@8Iç@8Ù?‘w×vHf@8Î÷@8i§@8Å@8S@8û—?¦ÍÌ-ˆ‹@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@­s3333@­w®i¤.@­s3333@­„ „.@­s3333@­rR*%ë@­s3333@­sª"¡¢@­s3333@­r5en@­s3333@­s^Þ×@’é~ùÛ"Ñ@’é²ïqm@’é~ùÛ"Ñ@’ég½ÖI|@’é~ùÛ"Ñ@’émM@$´@’é~ùÛ"Ñ@’éjÍÿ&ç@’é~ùÛ"Ñ@’é{ ,¤›@’é~ùÛ"Ñ@’és’Q@92ÃÉîËû@8ø eBwS@4n5?|í‘@4i1ѵ³Å@3V”@3¶Ch@2fYJôðØ@2a_wæžš@2fYJôðØ@2b_MKý@2fYJôðØ@2_Òòä?±ëg)nÖ”?f)Y™’?‘æ5ç–í?Œw)¸(;ž?‘È5t?‘]\Œ¤¡x?–…­à Ø—?’>í£™í?µ“‘ƒÅM?ic ù`?’ýR¦!ý?Ü=.AŒ?’GÌl´?‘£¥Çæ$?Š/÷)Rÿ?ƒ:|Ãä=·?оî5g‚@?‰o=)þ´@@"@@"@3@.?ð?ð?ð?ð?ð?ð¿A†Š`¿v7Ñ¡?5ðºR#•?lÒn|1ú@­sP—ÊD@’ézPWy‚?GHÚ1zÏ?‡×_fAÇ?ˆ«ªfò¦@ +£Vyv‰Ð@ŸpËR]Âõ@@¨Öë…¸R@¨Öë Iº@¨Öë…¸R@¨Öí5¨Xy@¨Öë…¸R@¨Öî_oÒ@¨Öë…¸R@¨Öî.±Ä3@¨Öë…¸R@¨Ö빌~(@¨Öë…¸R@¨Öéá°‰Ÿ@§£záG®@§£zŸ¾vÊ@§£záG®@§£}—ö+k@§£záG®@§£|¾ß¤@§£záG®@§£zu%G@§£záG®@§£{çl‹D@§£záG®@§£{À6ã@5í¥œàv@5íquŽ"@2›¥ãSø@2L˜_ö@1_²-V@1_¤?åÉ@0zÔ,<ží@0zôðØDÐ@0zÔ,<ží@0y0¾ í)@0zÔ,<ží@0xè§æ›?}Ñ¿ž,?Čۨ1A?‘Ëü²ü ?Œ:Z2‚b?‘ŠR%¨(0?ø·-/ge?|öOÿÝ?’j%ÓRa?‘S1Êz?Ñ·@ ¡(õÂ\Á.„€@8åöý!ÿ.Á.„>¤µÜÆ@4€ Ä›¥ã@4— ù k¹@3Õ`A‰7L@3ËC•%@3Œ~($ @3;˜Çâ‚A@3Œ~($ @3($ x@3Œ~($ Á.„NÜC,¥@8J¨?À»-•d?š®ìZ-­l?½":ãLi?g;+³ûu@8Ù@8J¨?Ê€˜+àŸ?«Òo¹÷?±ø³®°h³?¦ñ5ÜnM8@8û—@8p÷?ÊFŒQãá?¼ÝÒ—Q¿;?³©Èu}+?£¶â€B@8 Ø@@@@&?ð?ð?ð?ðøøøøøøøøøøøø @¡`A‰7L@¡`A‰7L@¡`A‰7L@¡aä÷eþ@¡`A‰7L@¡aÿ.Hé@¡`A‰7L@¡a [À@¡`A‰7L@¡`ëíúD@¡`A‰7L@¡f¸ºÇ@¢HOß;dZ@¢HO²-@¢HOß;dZ@¢HIûçl‹@¢HOß;dZ@¢HJ#9Àì@¢HOß;dZ@¢HEÉä@¢HOß;dZ@¢HM¸ºÇ@¢HOß;dZ@¢HM¸ºÇ@2” xFÜ@2”%®æ1ø@1&‡+ J@1$g8}¿@0Àå`A‰7@0¿ö”Ft@0p–»˜Çâ@0m¸ºÇÌ@0p–»˜Çâ@0l‘ÑN;Î@0p–»˜Çâ@0h´9Xc?É^žQ5P‚? ¸×KG?‘jh¨qã9?ŒÖ +Äȱ?‘|†³„¸?“¾§²~Î?ÐbV‡,?’Q_Ú¸FN?‘´"«Õa?‘Nw]6»ô?’˜£“µ~Ð?”F„t*•5?€‰Äƒ$æ?îŠõ ?ƒ>ZÌw?„•ˆG’Z¾?ˆÔÞÑ—æJ?ŽÜÂÎÛÖa@@@@@&@$?ð?ð?ð?ð?ð?ð?`3Sƒ?mŠw$—?Q×ÀsÍ?U‰KD@¡b‹»½"@¢HJ~­ž~?`Ñ_WÆÂ?d"À–±T?¸qi4ÉV?»ÛÛmc¡$@Ÿr ›îý1@ +@¦…?|í‘h@¦…?¾vÈ´@¦…?|í‘h@¦…=p£× +@¦…?|í‘h@¦…=¿HÍ@¦…?|í‘h@¦…=ó¶E¢@¦…?|í‘h@¦…BÐå`B@¦…?|í‘h@¦…Cn—Œ@¡eãS÷Ï@¡g+ J@¡eãS÷Ï@¡dŽŠqÞ@¡eãS÷Ï@¡i“ àà@¡eãS÷Ï@¡dµÜÆ?@¡eãS÷Ï@¡eðoiD@¡eãS÷Ï@¡hÁTɆ@5rÃÉîËû@5qò×s@3=‘hr° @3:îcŠ @2ñ‰7Kƨ@2îV“u@2Œ¿±[W?@2‡y¦µ @2Œ¿±[W?@2‡RT`ªe@2Œ¿±[W?@2‡_oÒó?|öOÿÝ?‘¡çL¤?–Èó^ù„?Ž˜ùš®E`?•bJÖµæÿ?‘f]£àG?|öOÿÝ?’V"y$R?“ + ½æD/?’ü#q\-v?™x9ÿ¥l?äqÅYÈ?‚˜YªüÏE?iT£C~t?Š[¦Råb?„l¯¸‰ŒÎ?‹ú èNÆö?‹DVóö@@@@@,@ ?ð?ð?ð?ð?ð?ð??·ß?sºÊ?>îObQ¹?8à‹Alê-@¦…@zxŠ@¡gkŒþ?^~ða€7“?YK×w‚Q?Æ¡t¼"€?»û‰Y°`m@Ÿf±àޝ@ @¢Sã× +=qÁ.„€@¢Sã× +=q@¢Sñ{+ù @¢Sã× +=q@¢T=ަÝó@¢Sã× +=q@¢T®¡µT@¢Sã× +=q@¢SýÝPí1@¢Sã× +=q@¢TFó©Ü@˜Ÿ9XbNÁ.„€@˜Ÿ9XbN@˜žäiuÁ*@˜Ÿ9XbN@˜Ÿð„¡E@˜Ÿ9XbN@˜ž±ÕŽÿ@˜Ÿ9XbN@˜ž·% Í—@˜Ÿ9XbN@˜ŸÃeN@8ãg ù lÁ.„>¤µÜÆ@4R Iº^5@4GOÿŒÄ@3@å`A‰7@2ûh,åÕ@2uµsê³h@29r€¼@2uµsê³h@2]çGˆÒÛ@2uµsê³h@2U‹‚¡¡@8J¨?•é³M¼è?°*õZó»×?¦†qB_?¡õi L%?¨8éPßA@8J¨?’“{¾ åó?¦’z1V?²àÉѽ”?¡•˜•«ÜG?™å ?X‹@8p÷?–šNz…´?©spæß?¤Höð?–Ógç< +I?šB¦À«’@$@&@,@;@9?ð?ð?ð?ð?ðøøøøøøøøøøøø @¡èr° Å@¡é7Kƨ@¡èr° Å@¡æê$G+@¡èr° Å@¡çëv± @¡èr° Å@¡æÄ*¹u@¡èr° Å@¡æÅ$#@¡èr° Å@¡æú`<ð@¦W +=p¤@¦Xº" 6@¦W +=p¤@¦X )”.@¦W +=p¤@¦S'£`<@¦W +=p¤@¦XÇøâæ@¦W +=p¤@¦W| ÿ@¦W +=p¤@¦WV;ŽP@5£g ù l@5¢ÆÌ:ÖK@2”›¥ãSø@2•òRe;—@2“t¼@2 K…4@1xDЩ*@1xƒ…zzI@1xDЩ*@1{@‡ìÅ@1xDЩ*@1zxRW×ã?}õ¬#„­?¾¢ Hù?‘˜Š­ú?‹¯ïIA½?‘‡Q¤ð\?‘¾YD=¤"?€Z=ú‚¡?’×Ô"f?“ó~í?Q—¸ï[$?‘a]6˜ß?‘‚•ôë ƒ?†/ó€‡pÍ?F‚½fÅ?„¼ÃÕ$Â?‹të?+;b?‡‹œ?–?ˆgœÕÿ@@"@ @"@5@4?ð?ð?ð?ð?ð?ð¿Cx(¿0ér ?%M#Ú‹?}}©itŽ@¡çÑÈ}g@¦X8ƒ!?DàL,¤£·?;Ëüsô$¢?•î pL¦?+ö. @Ÿg@Աݘ@ @®K›¥ãT@®K ªw@®K›¥ãT@®J;"Ðå`@®K›¥ãT@®JÇ_oÒ @®K›¥ãT@®Jо í)@®K›¥ãT@®KTÉ…ï@®K›¥ãTÁ.„€@0 Ä›¦@I·zo@0 Ä›¦@À@0 Ä›¦@9 k¹‹@0 Ä›¦@cñA \@0 Ä›¦@Ãa@N@0 Ä›¦Á.„€@8àØDЩ@8ÚMÐàK@3õãS÷ÎÙ@3—†Â&€@2Ͳ-V@2“Ãa@N@2ž«6z‘@2;ŸU›=@2ž«6z‘@2WæšÔ,@2ž«6z‘Á.„NÜC,¥?°¿:úç?»ÁÏ"-f?Ãàæ€¯8S?ÎÁzêù]œ?ÃÜí±&Z†@8Ù?­-a(Ê^?Ì‹è0‘ì?ÃøâhK?ÖCRn™?R?ѶÝ×=(H@8û—?ÆbåµÒÈ?§Y+®„£:?™Jz¬Uf?¦êÉŠYÏ?¤MÏ}td@8 Ø@@@@@,?ð?ð?ð?ð?ðøøøøøøøøøøøø@­k=ó¶E¢@­k2ñ©ûè@­k=ó¶E¢@­kBh Ô•@­k=ó¶E¢@­kD÷eý‹@­k=ó¶E¢@­k@'RTa@­k=ó¶E¢@­k?b¶®}@­k=ó¶E¢@­k>žš@¢ Òñ©ûç@¢ ¼í‘ht@¢ Òñ©ûç@¢ Ñhr°!@¢ Òñ©ûç@¢ ÑÎ_@¢ Òñ©ûç@¢ Ò×s@¢ Òñ©ûç@¢ о í)@¢ Òñ©ûç@¢ Ò×s@8 ØDЩ@8šJŒL˜@2¦‡+ J@2£@N¤¨Á@2F“t¼@2B×sü@0Ì¿±[W?@0Ëšu%@0Ì¿±[W?@0ÊçÕfÏB@0Ì¿±[W?@0˵sê´?„F/·ÿP5?4ë©$è‰?˜g± ÓË?‹¬àÌ’Ç?‘§›ßÉîj?‘)]•\¬?µ”Zm?’ ,øÕC©?”_й@’?0ÜN :s?‘C å;Ã?·t¤¢‚K?Æà„ž2m?’®ã‘\’? t€4Ã?†ÞåØÜÓ?‡´*žZ}Õ?†ÃÛSPã@@@@@(@(?ð?ð?ð?ð?ð?ð?gŒ¸Ö?K…Üôþ?P@¸>»?X}‘Ti|e@­k>jÉÛ@¢ Ñ)ÔR×?s|£ñÀ?iÑ«“û„?äÛ;(áõ?ËMøã×@Ÿq/}ÁS„@@¢Øæffff@¢ØÕ?|í‘@¢Øæffff@¢Øß¾vÈ´@¢Øæffff@¢Ø¼¾ß¤@¢Øæffff@¢ØÔ¯O „@¢Øæffff@¢Ùí‘hs@¢Øæffff@¢Ù\(õÃ@¢½0 Ä›¦@¢½(r° Æ@¢½0 Ä›¦@¢¼ŽV“@¢½0 Ä›¦@¢¼«ŸU›@¢½0 Ä›¦@¢½'l‹C–@¢½0 Ä›¦@¢½\PHð@¢½0 Ä›¦@¢½Y‡+@904mÅÖ8@9+"Ðå`A@4®5?|í‘@4ƒ©*0U2@4,j~ùÛ#@3Öð¸»@3œàu÷@2çy¦µ @3œàu÷@2úŒL˜_@3œàu÷@2ú–»™?»ö#°€Ô[?£-Ÿ56æ+?´+¤Ùž-?«u {NÉ?·çó¿©/?¦£@óiÖ?§Ò¸ùBz3?”ŸÚ²t©?ÕÃäj1À»?£µ@$v5¬?±‚[ñçc?®e•…,Z?•ýÿLîO?¨ ‰‹U)?·|p–&?¡Ê2ñHÆD?«v³Û‹7?°_;‘èG@@@@@,@&?ð?ð?ð?ð?ð?ð?‘d»`› ?„~껤?€FRyߦ¥?y;Ħ@1}@¢Øî¦ b¦@¢½=lË[?™‚×÷…A?–òãÖF6?òWáš??÷c @Æé@Ÿn +gE@@¬»;çl‹D@¬»;çl‹E@¬»;çl‹DÁ.„€@¬»;çl‹DÁ.„€@¬»;çl‹DÁ.„€@¬»;çl‹D@¬»;dZ¬@¬»;çl‹D@¬»8Ôýó¶@¯¢Ðå`B@¯£•&@¯¢Ðå`BÁ.„€@¯¢Ðå`BÁ.„€@¯¢Ðå`BÁ.„€@¯¢Ðå`B@¯£× +=q@¯¢Ðå`B@¯Ÿ;dZ@5kµsê´@5j³g ù +@0ÞÙ‡+Á.„M‰ûçm@0>V“uÁ.„QnÙ‡@/”`ªdÂùÁ.„NÜC,¥@/”`ªdÂù@/“MjP@/”`ªdÂù@/“×Ûôˆ?}Ñ¿ž,@8#˜@8¾:@8 >+?ðŽºJ+½?ð‹Ið˜ ?|öOÿÝ@8Î÷@8i§@8Å?ðÅìq?ð„‰p„Ã?ƒ<Õp@8 * @8p÷@8¶?ð?oÚ•¼?ð?oÚ•¼@?ð?ð?ð?ð?ðøøøøøøøøøøøø@©9[¥ãSø@©9mV@©9[¥ãSø@©9RÊW§ˆ@©9[¥ãSø@©9_U›= @©9[¥ãSø@©9VÕϪÎ@©9[¥ãSø@©9R-V@©9[¥ãSø@©9TÖ¡aæ@ l‰7KÇ@ l|í‘hs@ l‰7KÇ@ lˆXy=Ù@ l‰7KÇ@ lŠ™0¾@ l‰7KÇ@ l‘Þi­C@ l‰7KÇ@ l‹ŸU›=@ l‰7KÇ@ lŽcŠ @8#g ù l@8)Q‚©“ @3xr° Äœ@3ncŠ @2;Ƨï²@24Ö¡aäø@1³&Á½¥@1«µsê³@1³&Á½¥@1ª™0¾ í@1³&Á½¥@1ªW§†Â'?ð°–Ž]?‘‘Ç`[?—¯}_ƒÜ»?‘sNX„êÒ?›ÿËRÈ?˜ñ<óâg…?ð°–Ž]?“oÆ †ä?œlôU °?¢€ÝÅp?Ÿ Î;g¶?˜¿Df©v=?ð*wjs—?iT£C~t?Š[¦Råb?‡9 ƒ–’”?Ž .0åv?Œ8¸wx¯?ð@@@@*@(?ð?ð?ð?ð?ð?ð¿SµUiÔ¿RöAâ?PŽonŽ_¦?YˆÁïH‚@©9Tí}0¿@ lŽ›°Ñö?`ýC‚.—Î?gw ºü«6z@®û&éxÔþ@®û±[W?@¤bŠ=p£×@¤b²-V@¤bŠ=p£×@¤brT`ªe@¤bŠ=p£×@¤c)ùrG@¤bŠ=p£×@¤bðò{²ÿ@¤bŠ=p£×@¤bÚ6âë@¤bŠ=p£×@¤bï²-@8¿–»˜È@8¸ð¸@5™º^5?}@5nÑ·Y@5@å`A‰7@4õ2a|Ú@4Ç ù kº@4~V“u@4Ç ù kº@4ƒ÷ÎÙˆ@4Ç ù kº@4ŠJŒL˜?«_$Øï†?¾95€\?Ù’7IDu?»{osG'Ý?´(Ôx±/È?°¨¸ß%$Š?¦Ï±úQm‡?»G¾Z?ÐÂä­â²[?»‰~'zã?»V,À™Ò?»ðªÝû?´Ö‘ì—±š?¥ð¡T³÷ñ?³"i]äPö?´!èÄÌi?®†ø.ìP´?¿ª'wÊ#T@@@@@*@,?ð?ð?ð?ð?ð?ð?JT¿IH?’3AœÁ ?iÞPÞ@8„?sŸ¬d„3@®ûpc B@¤bÊ5‚È|?‹vÑ»pn?”Uz¶Ž$?Ó-´bÃÖT?݇¾¿˜1@Ÿh€Àäd@@¦¸QìÁ.„€@¦¸Qì@¦oi@¦¸Qì@¦&€I@¦¸Qì@¦Ü]cˆ@¦¸Qì@¦þÑ·@¦¸Qì@¦ùÀëíù@¨¸5?|í‘Á.„€@¨¸5?|í‘@¨¸7eýŠÛ@¨¸5?|í‘@¨¸3Ð|„¶@¨¸5?|í‘@¨¸3g ù +@¨¸5?|í‘@¨¸1ÑN;Í@¨¸5?|í‘@¨¸+]Ìcð@4m¥œàvÁ.„>¤µÜÆ@2+¥ãS÷Ï@2(­«ŸU›@1Õ`A‰7L@1ÓMjP@1ž«6z‘@1”M:’£@1ž«6z‘@1“MjP@1ž«6z‘@1’½<64@8J¨?ôÊ_?‘ojVrn@8·â‚@·€@8§škP°ò@2Ê^5?|í@2Ê…‡“ݘ@2H“t¼j@2GË)^ž@1¡:’£S@1ž«6z‘@1¡:’£S@1 [À6ã@1¡:’£S@1 -à r?¦Ï±úQm‡?‘ ·èe?’¿êvG¨½?Wø0 ¥?’»–j˜ú?’ Ù–¥£?ÅèWl ª?“áêqú ?“v@á¿bî?’‘Ç#·X?’ºñS©YÖ?‘pN.>7E?›Ny”…?ŒÛÏ·+?ƒÆ×q„nð?ƒý¥ñÍú?‡ø¢:›¸1?‹DVóö@@@@@*@(?ð?ð?ð?ð?ð?ð?Iþ'!T?DcYC€?:ñ(YΜå?F’sÕ3Ö@¨Ñî¸@®'ʉEaü?PëWwˆ?U’Ç"/îK?–x¥»0ƒ^? nYh\@ŸryQ€f¡@@¥>¥`A‰7@¥>Ÿ;dZ@¥>¥`A‰7@¥>§æšÔ@¥>¥`A‰7@¥>¬1&è@¥>¥`A‰7@¥>£,¥zx@¥>¥`A‰7@¥>Œ"h Õ@¥>¥`A‰7@¥>£n.±Ä@¬}–“u@¬}]/Ÿ¾@¬}–“u@¬}dÝ/ @¬}–“u@¬}Iº^5?@¬}–“u@¬}Ø­«ž@¬}–“u@¬}‡¯·é@¬}–“u@¬}‘Þi­C@8­¥œàv@8jOv@4…?|í‘h@4]ÈK]Ì@4Ðå`A‰@4Ä›¥ãT@2øDЩ*@2øFÜ]d@2øDЩ*@2è´9Xb@2øDЩ*@2áœàuöý?ð°–Ž]?¥'’òrCr?šQ"Äš%?‘´CF õ?–ç=ìW·¹?œáif¢?ð°–Ž]?Ÿ#ïÀŸª¸?–^ÿ,¶›?”A8 Kú¿?”*v7¹¿?˜æØ.ô?ð*wjs—?žåÌÆöj?§òÄ U¸?ùïJÓ?‘  ¶‚3?˜ÒF€§ç?ð@@@@"@$?ð?ð?ð?ð?ð?ð¿o\3{?~»'ôX€?Â|/ð“{?Rø4Áž@¥>›z©ÊK@¬}†æzA?HÍä¶ù?`p%÷00@TVŽÌ?¬#¶P”††@ŸrÊdì¹s@@¢Ò-‘hr°@¢Ôè1&éy@¢Ò-‘hr°@¢Ô.±Ä2Ê@¢Ò-‘hr°@¢Ôö+jè@¢Ò-‘hr°@¢Ô (Œç@¢Ò-‘hr°@¢Ôca@P@¢Ò-‘hr°@¢Ô¯ „M@¤3Oß;dZ@¤14ýó¶F@¤3Oß;dZ@¤1@2ò䎊r@1 +=p£× @2ò䎊r@1zxl"h@2ò䎊r@1YJôðØ?’Óusÿ\Ã?¹_ã÷×n?À…Ýøn±‘?¢Ö +ƒ«Y?Áû +úR?ÇŠÏáH!»?„F/·ÿP5?®½Ah:«?¬6¦eI…?££c“ÿ?º…ðöù~?Æc¨/~?†' +³}÷B?”É…ðoiE?Цÿßë?¤?‹h¢íc„„?˜F†éôâß?’;WZŸÿÔ@@@@@&@*?ð?ð?ð?ð?ð?𿱟‰¤^¿ŒþÐU?”cvù¦oÀ?t«YçFDy@¢Ô¬™¢Q@¤1#qbzV?ªƒ¢O¬o?‰–fa@0ÆÝÖ?õ'^X¹ªx@Ÿ_s´™5@@¡pTýó¶F@¡pTzáG®@¡pTýó¶FÁ.„€@¡pTýó¶FÁ.„€@¡pTýó¶FÁ.„€@¡pTýó¶FÁ.„€@¡pTýó¶FÁ.„€@š›²-V@š›¬1'@š›²-VÁ.„€@š›²-VÁ.„€@š›²-VÁ.„€@š›²-VÁ.„€@š›²-VÁ.„€@5Bò䎊@5B•éá°Š@2Yº^5?}Á.„M‰ûçm@2`A‰7LÁ.„QnÙ‡@1!:’£SÁ.„NÜC,¥@1!:’£SÁ.„NÜC,¥@1!:’£SÁ.„NÜC,¥?}@T˜ÁÎ¥@8#˜@8¾:@8 >+@8Iç@8Ù?„`™ˆ/.~@8Î÷@8i§@8Å@8S@8û—?ƒVÆè3äæ@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@«x~ùÛ"Ñ@«x;dZ@«x~ùÛ"Ñ@«x€@«x~ùÛ"Ñ@«x¾vÈ´@«x~ùÛ"Ñ@«x€'RT`@«x~ùÛ"Ñ@«x~¸Që…@«x~ùÛ"Ñ@«x}¿HÌ@®Ú¯Ÿ¾w@®Ú¯\(õÄ@®Ú¯Ÿ¾w@®Ú¯ß;dZ@®Ú¯Ÿ¾w@®Ú¯Ÿ¾v@®Ú¯Ÿ¾w@®Ú¯Ån@®Ú¯Ÿ¾w@®Ú¯Ÿ¾w@®Ú¯Ÿ¾w@®Ú®—Oß@3*0U2b@3Dg8~@.ðå`A‰7@.ðò{²þÅ@.:¬1'@.:–»™@-£¼ÓZ…ˆ@-£•$ß@-£¼ÓZ…ˆ@-£S&Â@-£¼ÓZ…ˆ@-£FÜ]c‰?|öOÿÝ?¾¢`ƒ?‘(¥¿á?‹¬àÌ’Ç?ùª¨?¾ƒìÈÁ?|öOÿÝ?’ aÒ¹zï?ˆ9²0?0ÜN :s?ÔÒ@úˆ‘?PS2K¯™?‚2Y0â³?Œ¬8 T£?‚|׿pZ?‚ìxqC?†½ª»—?†žóB» “@@@@@@?ð?ð?ð?ð?ð?ð¿$…`¿fY?€?,'–kÊÿÎ?:­é<Â@«x פÏ@®Ú¯6Öm$?L‹¾O?8´`kf’l?¥UÎG±?Ç› +vZ¨@Ÿg›~`q@@¡ÅÄ›¥ãT@¡Åϲ-@¡ÅÄ›¥ãT@¡ÅÅýŠÚº@¡ÅÄ›¥ãT@¡ÅÉ^ž @¡ÅÄ›¥ãT@¡ÅÅãS÷Ï@¡ÅÄ›¥ãT@¡ÅÆéxÔþ@¡ÅÄ›¥ãT@¡Åǯ·é@§¡bMÒò@§¡ …¸S@§¡bMÒò@§¡ Ô•@§¡bMÒò@§¡÷eý‹@§¡bMÒò@§¡ð@§¡bMÒò@§¡“t½@§¡bMÒò@§¡§æ›@8Î쿱[W@8à@4|í‘hr@4 +ŒL˜_@3iÛ"Ðå`@3dÝ/Ÿ¾@2a:’£S@2_.Hè§@2a:’£S@2^i­BÃÊ@2a:’£S@2\ÓZ…‡”?1·†Æjñ?”žP1²"?‘ÓKñá»Ù?ç\Š2˜?”‰Wïÿ·?‘É=¦þï?¸bÌk0ÀÕ?–gÝ3ýø’?üÓqÔN‰?–á~ÿ2lÎ?–Â4¨ß?‘ß…D̽}?Á£=É6„?àìÚJ>?›âCp0x¨?‰*6SpK?mŽÃÎŽ?•™ï ufÝ@@@@@(@"?ð?ð?ð?ð?ð?ð¿aN>Ì? c`?CÅ™6py?Uæ6’ö @¡ÅǼ¯à@@§¡Eã–”?l-LYdFy?h€¨cE{­?ÑK/~/úD?½C½ÔiÖî@Ÿq³&žuˆ@@®a›"Ðå`@®a¨mâ¥?ÄêÈ\?Œßô™ 8+?¥ˆÒ¯ó•?šÅÌÄŠ\ì?­±\Æ¥¾0?­VA®o?Ñ3ŠE“b?»2Dò– B?¡"ÒIHÛœ?˜`1âfß?¡?Zá,kï? ¦å_¹?³€L=@@@@@,@*?ð?ð?ð?ð?ð?ð¿” +ÐăÀ?}ë »ï@?eNØÜ?l„Ðw>v¨@®aŽõ!€&@œ›ŸgN5?~Š£üéý?ƒŸ›íüô˜?Ï%¨b” ‡?âÿ¿ÞL`@Ÿ_üBH@@¯AËÆ§ïž@¯AÌIº^5@¯AËÆ§ïž@¯AdžÂ&@¯AËÆ§ïž@¯AÎÙ‡+@¯AËÆ§ïž@¯AÁ@N¥@¯AËÆ§ïž@¯AÅm\ú­@¯AËÆ§ïž@¯A‚@·@©Hu?|í‘@©Hr° Ä@©Hu?|í‘@©H€Ä›¥ã@©Hu?|í‘@©Hp Ä›¥@©Hu?|í‘@©Hs@N¤©@©Hu?|í‘@©Hr×sý@©Hu?|í‘@©Hp¾ í)@6‘|ÚQ@6’a|ÚQ@4R Iº^5@4MÙb¶®@4;Ƨï²@47Ûô‡ü¹@3‚‚@·€5@3}à qv@3‚‚@·€5@3|žì¿±\@3‚‚@·€5@3{xFÜ^?Œs¤DÅÐ?”ŸÍFÒ?“IK¹É?•GÝóuS—?™póK ?t]·™O>?}Ñ¿ž,?”á¾Õ·L?‘Jâ”âj?œ’åæ™ø?—c÷Ò,*Ý?#°‘N˜?ƒ!A +mº¸?‘Žèã&!+?•@K/Ù{?–uq{™a?—»¢Øˆ‹? ¦å_¹@@@@@&@,?ð?ð?ð?ð?ð?ð¿aùÿæð¿" Ó4ð?NõzÖëT7?(Œ¸ýlój@¯AÆÇ(@@@@@(@ ?ð?ð?ð?ð?ð?ð¿J˜Õy’¿.ÙµYÐ?0“á%Žf©?Ó@Ó@©oÌìžå¹@ªÙ¶åVH??âçÄÍ“.?µ…³6?yµ¶o—?!ÕŸû@ŸsøØË»@@¬2«6z@0ýcˆe”°@0úçÕfÏB?|öOÿÝ?qÂ' +B›?‘ê ÷“'?‹û…†_?‘ƒZ)Àˆ?’ŒZzˆZ”?1·†Æjñ?’[ KÄ0R?’]:»›.ó?‡@Cvì×?“[HÎÃ3?—é aÀ‹å?‚yî8Á#?ŒÆò/¢äÍ?‚íWçé…?…®×__C?‡”_Õ­çW?‘˜M\ÿŠ@@@@@,@,?ð?ð?ð?ð?ð?ð?)ßO ¿ óÛ7€?(+pZXNƒ?BZî@¡ò&éxÔþ@¡ò(Û‹¬q@¡ò&éxÔþ@¡ò*ŒL˜@¡ò&éxÔþ@¡ò(e”¯O@¡ò&éxÔþ@¡ò)…ðoi@ª›Që…¸@ª›Që…¸@ª›Që…¸@ª›RÊW§‡@ª›Që…¸@ª›SÐ|„¶@ª›Që…¸@ª›QÅ‚@ª›Që…¸@ª›R£S'@ª›Që…¸@ª›TÉ…ðo@2™*0U2b@2™ã¼Ô@1 Ä›¥ã@0þ}Vlô@0•`A‰7L@0“¼ÓZ…ˆ@0 ù kº@0fÏAò@0 ù kº@0œàu÷@0 ù kº@0%F +¦L?É^³Dw'?qÂ' +B›?‘1f_¨Ï÷?Œ‚èõЊ?’ðä¼_?’£sðU Z?ÐbMçê_x?“ +x”ÕŽ?–ÐO(·Š?Ä…à6 +æ?‘1…šá?ÝÒ¥X[?€bMÕky?ŒÖ +ÄȲ?„³3Z\ð…?ƒ¦$H?‡2[síç?Š—à `ž@@@@@,@,?ð?ð?ð?ð?ð?ð¿Ba¡Ì?Víu—?A"ÎÒ1¥‘?2€>¤ß™@¡ò)L´V@ª›RПÁ"?PlÄ%ÁUè?A€ùªIÏ?—IÞ|šÿ›?y,ÿwå2æ@ŸráFwû^@"@¥ Ä›¥ã@¥ %à ¡”@¥ Ä›¥ã@¥ #‚N[z@¥ Ä›¥ã@¥ !à– @¥ Ä›¥ã@¥ jzO@¥ Ä›¥ã@¥ š´@¥ Ä›¥ã@¥ *(™*@“­E¡ÊÀƒ@“­/Ÿ½@“­E¡ÊÀƒ@“­49Õc¿@“­E¡ÊÀƒ@“­.\2@“­E¡ÊÀƒ@“­5î V@“­E¡ÊÀƒ@“­¶¸× @“­E¡ÊÀƒ@“­gxk>@87â‚@·€@8(׺[6@4º^5?}@4‘ô^ œ@3Z~ùÛ"Ñ@3^³ l?Ú@2¡:’£S@2£,i©ò:@2¡:’£S@2ß­Y}O@2¡:’£S@2šÁå?Ï€×>²„?8 ˆ×?“…e•àT3?’ŠÃx¬?•4¦ õ±¦?“´ Q–Àx?¡ÍÜ +Ü?’Mñ6M^?›~P„230?”ÛA¾×iâ?•]³V“–µ?‘Áukã½Å?ªºT•?’¼%¿÷ø?š†Vï}*? +g’éH?;1ÌßÔÎ?Œb.xt@@"@&@"@7@1?ð?ð?ð?ð?ð?ð¿e–‚Gú¿i2ƒf?\”.bÊL|?h)®öˆa@¥ Ø–÷ä@“­’}¤?uÈÈ5½õ?‚EíûÙ*?ెÀÌ?õ|#”±çI@Ÿnó½Ü>³@#@ª¡B Iº^@ª¡@ƒn™@ª¡B Iº^@ª¡Aÿ.Hé@ª¡B Iº^@ª¡Aä÷eý@ª¡B Iº^@ª¡A‰7KÇ@ª¡B Iº^@ª¡@ÞÒˆÎ@ª¡B Iº^@ª¡@IQƒ@¦F®záH@¦F®V“@¦F®záH@¦F°©*0@¦F®záH@¦F¬¿±[W@¦F®záH@¦F¯ìVÕÐ@¦F®záH@¦F®æ1ø¡@¦F®záH@¦F±uŽ!–@5–»˜È@5€£× +=p@2Œí‘hr°@2Ž«6z@24“t¼j@26ý!ÿ.I@1…œàu÷@1‡»/ìVÖ@1…œàu÷@1†µ '»@1…œàu÷@1‡KƧïž?€‚ñêã ?µ‡:úÎ ?’‹»Ùï§?Œä%—ëš?‘·Xâe?‘À?ÙÂ#’?1·†Æjñ?”¤P ƒË?‘;¨™,?iêhAÜ?‘x9ξÞO?“IëH!w?ˆAᆽÃì?=d­úå?ƒ]€µ,Vß?„ìsMQ(Œ?‡Ä­‹›Ü?‡´*žZ}Õ@@@@@,@*?ð?ð?ð?ð?ð?ð?ÆÑÝ@?=©x? §ú3Ä?*oë5–yU@ª¡@ÒK@¦F¯T¦@?@p´~î×?J+áµt?‰jö“à »?Ÿ8;(›@Ÿg2nÂr@$@¥u Ä›¥ã@¥u|í‘h@¥u Ä›¥ã@¥u*™1@¥u Ä›¥ã@¥u :’£@¥u Ä›¥ã@¥u+jçÕ@¥u Ä›¥ã@¥u"ÞÑ·@¥u Ä›¥ãÁ.„€@¬6È´9X@¬0å`Aˆ@¬6È´9X@¬/ìVÕÐ@¬6È´9X@¬A£n.±@¬6È´9X@¬:6âë@¬6È´9X@¬ES&Ã@¬6È´9XÁ.„€@8·â‚@·€@8¤êJŒ@3ë¥ãS÷Ï@3ï;dZ¬@3Ãt¼j~ú@3ÍBÃÉîÌ@2¡:’£S@2¨>BZîc@2¡:’£S@25¨Xy>@2¡:’£SÁ.„NÜC,¥?¦NIÉ®š?™öä+†>?¡ü|v8?ŽVåç0ÇO?œ’=Šæ-?@8Ù?гá‡}?––ïFHÇN?§¿Ÿ.ój ?’GÎ>GÅ?™På½Zj@8û—?§òÄ U¸?˜ÔÞÑ—æJ?ª¹0ÇåÄ?…bv{3dZ?•@¼Cк@8 Ø@@@@@,?ð?ð?ð?ð?ðøøøøøøøøøøøø%@°±&éxÕÁ.„€@°±&éxÕ@°¬wškQ@°±&éxÕ@°°4mÅÖ@°±&éxÕ@°·Á½¥@°±&éxÕ@°¨Ë’:@°±&éxÕÁ.„€@©®§l‹C–Á.„€@©®§l‹C–@©®jO@©®§l‹C–@©®w1Å@©®§l‹C–@©®¢œwšj@©®§l‹C–@©®»J#9Á@©®§l‹C–Á.„€@9+µsê´Á.„>¤µÜÆ@4Yº^5?}@4F§ï²-@3´“t¼j@3§RT`ªe@2èè§æ›@2Ý!ÿ.Hé@2èè§æ›@2å%F +¦M@2èè§æ›Á.„NÜC,¥@8J¨?œ½Øu4Þ•? ñ`žM:?ÿ¾Øï?¢WÃTþi@8Ù@8J¨?»ÜråAо? PÇ´âþ?°!žôŸ“?«Å0ì7á\@8û—@8p÷?¸:h$â^z?«^i•?¨ üB?Âyˆ ‘^@8 Ø@@@@(?ð?ð?ð?ðøøøøøøøøøøøø&@¦Ä¹XbN@¦ÄÂÐå`B@¦Ä¹XbN@¦ÄÜ‘ÑN<@¦Ä¹XbN@¦Ä¿!-w2@¦Ä¹XbN@¦ÄÕ%@¦Ä¹XbN@¦ÄÔýó¶F@¦Ä¹XbN@¦ÄÍÅÖ8†@¡÷®záH@¡÷¶“u@¡÷®záH@¡÷³Ð|„¶@¡÷®záH@¡÷µL˜_@¡÷®záH@¡÷µÂ\)@¡÷®záH@¡÷œ„µÜÆ@¡÷®záH@¡÷ [À7@7%öý!ÿ.@7æšÔ,@4 í‘hr°@4å`A‰7@3'KƧïž@3/O „M@2œÚQÎ@2¢T`ªdÃ@2œÚQÎ@2ˆÁTÉ…ñ@2œÚQÎ@2„,<žìÀ?”¼íÒh??’ÕOäª9ô?—¿ÔÌÆ?‘Ä{Oç¿`?g;+³ûu?š{>üFV?”¼íÒh??˜Ø*ªl€ô?˜lñèí« ?’"Š6›Wz?£áêqú ?š)ÑS&³?¶Ì^²û¨?œŠL E®?†¼Š˜L¥ø?ŽÔ¾ç?’ymícw\?Ò0aˆ‡‡@@@@@(@"?ð?ð?ð?ð?ð?ð?fd¿qÆ,wa€?^D¤Oò?dÕ9TÙQ9@¦ÄÈ)8@¡÷®k±b?zM¾ñM™?‚£×{Å0À?æYõk—„c?ôX|šGˆ@ŸjƒD08m@'@©ð¾ùÛ"Ñ@©ðª~ùÛ#@©ð¾ùÛ"Ñ@©òè§ç@©ð¾ùÛ"Ñ@©òxºÇÊ@©ð¾ùÛ"Ñ@©òÄ÷eý‹@©ð¾ùÛ"ÑÁ.„€@©ð¾ùÛ"Ñ@©ò&1ø ‘@ "Ðå`@ bMÒò@ "Ðå`@ ‚}<64@ "Ðå`@ ‚}¿HÌ@ "Ðå`@ ‚m5¨Xy@ "Ðå`Á.„€@ "Ðå`@ ‚¿åÉ@4#g ù l@4 ÞÑ·@1©‡+ @1$êJŒ@1ï²-@0•Ö8†YK@0ÔmÅÖ8†@0=!ÿ.Hé@0ÔmÅÖ8†Á.„NÜC,¥@0ÔmÅÖ8†@09³Ð|„¶?ð°–Ž]?à?`ëLµù?Ë.‹´®Ñ?ÑL_jf@8Iç?Úé¼,Ï–?ð°–Ž]?רðO?2¨?ÏV–fËN¶?Ö µ'@8S?àöäÿTöD?ð*wjs—?¥²»UbB2?° ё٤i?´p¥¼O+@8 Ø?¼ïõÀq2?ð@@@@,?ð?ð?ð?ð?ðøøøøøøøøøøøø(@§´r-V@§´2ñ©ûç@§´r-V@§´ž«6z@§´r-V@§´Z…‡”@§´r-V@§´T¢3œ@§´r-V@§³âe+Ô@§´r-V@§´³Ð|„@­E…¡ÊÀƒ@­E‘©ûçm@­E…¡ÊÀƒ@­ExÔýó¶@­E…¡ÊÀƒ@­G¼£n@­E…¡ÊÀƒ@­Fë…¸@­E…¡ÊÀƒ@­EëàÞÒ‰@­E…¡ÊÀƒ@­G&Á½¥@9N쿱[W@9P·€4mÆ@5f‡+ J@5µsê³h@5“t¼@4Ý¿HË’@4p–»˜Çã@42ëC,¦@4p–»˜Çã@4ö8†YJõ@4p–»˜Çã@3™ã¼Ô?Ú¿˜zêï?ÈvîÃ×dš?× OûàV?Áav” ?Ç £Ä<)?°6Ÿƒãán?°:-%šÀ?ÑÝFSfÛ?áÜ8/œJ?ËS~†¶Ä?Ðwû}Z?»T÷š¦ï?ÈsŽˆ? ·õzúÂ?²yMa‘€?»Ó9óñíG?ÃÂñK¨?¯!›ÖËf@@@@@,@?ð?ð?ð?ð?ð?ð¿Ipð?³U ž² ?…„¾K~Ui?ÍÍ> Ä“@§´(ûêÌþ@­Fl D­˜?¤'Ûèˆqò?´G2—ó?ëÙý=Ñ@ ¨¼òI@Ÿm!}SÖ´@)@¤~™™™š@¤~£× +=@¤~™™™š@¤~dZ¬@¤~™™™š@¤~W>«6@¤~™™™š@¤~6âë@¤~™™™š@¤~DЩ@¤~™™™š@¤~DЩ@¦4bÐå`B@¦4d›¥ãS@¦4bÐå`B@¦4a‰7KÇ@¦4bÐå`B@¦4a×Ûôˆ@¦4bÐå`B@¦4a|ÚQ@¦4bÐå`B@¦4d¨ÁTÊ@¦4bÐå`B@¦4c¯·é@7¥öý!ÿ.@7§ÈK]Ìd@2pÄ›¥ãT@2rT`ªdÂ@1ï²-@1ûçl‹D@0ò䎊r@0×Ûô‡ý@0ò䎊r@0‚©“ àß@0ò䎊r@0‚3œ¾à?’Óusÿ\Ã?jÝ‚È?’#ç}iïë?‹ÑqÔ@vÿ?’yÊêºq?ë+ʦÜ_? Eˆ‡ðó‹?’Êå\tW?“„;Ë~½ú?agÌf ?“Al.6¸?oÌ‘'ýT?lû˜¡Q?¨ ‰‹U)?ƒ´],m=?ƒý¥ñÍú?ˆW|¶DC?†¯Mž684@@@@@,@ ?ð?ð?ð?ð?ð?ð?W¢¢Ã®?.)C?P¼Û÷Y„a?DÐA&ƒc@¤~Àâ¨@¦4c-^Ž¢?l ‡X#W?]öó•ÿÙ?Öc„Ê ?²©Ñ”¥8†@Ÿn~I`Ši@*@«K*~ùÛ#@«K2Ö‚Ò@«K*~ùÛ#@«K+C•@«K*~ùÛ#@«K&éxÔþ@«K*~ùÛ#@«K$Ý/¡@«K*~ùÛ#@«K'E8ï5@«K*~ùÛ#@«K!ä÷eþ@œ»öÈ´9X@œ»ë4uÖ¹@œ»öÈ´9X@œ»ý¿HÌ@œ»öÈ´9X@œ¼#ˆe”°@œ»öÈ´9X@œ»úxl"g@œ»öÈ´9X@œ»ù¦µ @œ»öÈ´9X@œ»ùXbM@7uS&Á¾@7HÕñÏ@3» Iº^@3ºqÞi­C@3¶§ï²-@3¶»˜Çâ‚@2ºÔ,<ží@2·8}¿I@2ºÔ,<ží@2¸ð¹@2ºÔ,<ží@2·l‹C•?°z®aà2?“:„aGS?œrôeEÜ?¨•Ù?‘èÒ§ˆ„Å?”‹ÂØ*þ›?¿pÉÃV?•2ã(_Ïù?¢?Ùæc?’ÁÛ/’:?“h_N’%¿?”V.·H?±‚ÎûŠøë?þ,DöP?‰~}œ…o_?‡ÕZ›µûÜ?Œ¸ðËb?‹aÊ•TI@@@@@(@*?ð?ð?ð?ð?ð?ð?^‰òžè?\Ïul?k­ZG +’?<å¿>BëU@«K#©¬@œ»÷oBÕ°?}ãjRL§]?cv½.ê?ðXQxב ?Àß £ ï@ŸpŸ9N@+@¬¥J=p£×@¬¥Iûçl‹@¬¥J=p£×@¬¥J°¼@¬¥J=p£×@¬¥M ¶íg@¬¥J=p£×@¬¥LJKž@¬¥J=p£×@¬¥IÀõeÑ@¬¥J=p£×@¬¥Hñ+oP@™O$Ý/@™O€ƒn™@™O$Ý/@™Oþe‘@™O$Ý/@™O‚ Ïþ_@™O$Ý/@™O ±ñü@™O$Ý/@™O€ŒÕPø@™O$Ý/@™O‚‘™RQ@3°4mÅÖ8@3¯ìVÕÏ«@1sS÷ÎÙ@1s:'è²@1“t¼@1t­]Õ”@0\ÚQÎ@0\òù‡@@0\ÚQÎ@0][ønh@0\ÚQÎ@0\ßÞv]?}õ¬#„­?.od}Æ ?‘EYˆƒê?‹îv[Û‡?‘aë!(¯\¾¦?Ž,OêK˜u?‘úy«ôÊ%?‘À?ÙÂ#’?}Ñ¿ž,?’pP‡È»?‘˜ÆôõD?Ë{4æk?‘†óèJL\?‘C å;Ã?„m~Z_s,?R©i»èi?ƒ´],m=?ƒ¼9XNÄu?‡2[síç?‡L8õASÎ@@@@@,@,?ð?ð?ð?ð?ð?ð?1½fˆ0?*í®à?*Î@ƒYy>íË÷Ÿ3@¯PËúÌĶ@ª +sdÍÚ?J¾ó¡Ë ?6@N¨€…?¡~­úäŸ?& Ó^}(@ŸfÔü[º#@-@«„+ JÁ.„€@«„+ JÁ.„€@«„+ JÁ.„€@«„+ JÁ.„€@«„+ JÁ.„€@«„+ JÁ.„€@–",1&éÁ.„€@–",1&éÁ.„€@–",1&éÁ.„€@–",1&éÁ.„€@–",1&éÁ.„€@–",1&éÁ.„€@8 ØDЩÁ.„>¤µÜÆ@3û Iº^Á.„M‰ûçm@3²-VÁ.„QnÙ‡@2øDЩ*Á.„NÜC,¥@2øDЩ*Á.„NÜC,¥@2øDЩ*Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø.@«3H1&éy@«3J~ùÛ$@«3H1&éy@«3JdÂø8@«3H1&éy@«3Iá°‰ @«3H1&éy@«3GÕfÏC@«3H1&éy@«3Ezxl"@«3H1&éy@«3EýŠÚº@©tñ©ûç@©tt¼j@©tñ©ûç@©tÈ´9X@©tñ©ûç@©t®}Vl@©tñ©ûç@©t_Ø­­@©tñ©ûç@©t1Å@©tñ©ûç@©téá°Š@7ò䎊@7þÅm\ú@2žÙ‡+@2ž;Í5¨X@297KƧð@287´¢3œ@1µµsê³h@1µ¸Që…@1µµsê³h@1²½<64@1µµsê³h@1²œwškQ?|öOÿÝ?­hX™*?’5 µ¿$„?ŽÝ¡uÒ(r?’Z†Ažj?“Q´Î`°€?Œs¤DÅÐ?“RƒwS5?’]:»›.ó?‡@Cvì×?‘®7Ö=^9?’EÈ€›º?‚oÁÆÜ§ö?þrªbT?ƒ¡É^&Ö?‡v¯ªIì?’Ž<Dxƒ?” 4‹eñ +@@@@@"@(?ð?ð?ð?ð?ð?ð¿QÕ´?Ed’`?!Û×»DÙ§?2®eºÂ…_@«3GàS©²@©txø·$?CB±>Õ˜Þ?Q¯Â w?Eíä;pñ?¢ƒ3Õ+r@Ÿijä,¡û@/@¦A$Ý/Á.„€@¦A$Ý/Á.„€@¦A$Ý/Á.„€@¦A$Ý/Á.„€@¦A$Ý/Á.„€@¦A$Ý/Á.„€@¦^å`A‰7Á.„€@¦^å`A‰7Á.„€@¦^å`A‰7Á.„€@¦^å`A‰7Á.„€@¦^å`A‰7Á.„€@¦^å`A‰7Á.„€@6m¥œàvÁ.„>¤µÜÆ@3° Ä›¦Á.„M‰ûçm@3Wï²-Á.„QnÙ‡@2¿ò䎊rÁ.„NÜC,¥@2¿ò䎊rÁ.„NÜC,¥@2¿ò䎊rÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø0@¦2° Äœ@¦\(õÃ@¦2° ÄœÁ.„€@¦2° ÄœÁ.„€@¦2° ÄœÁ.„€@¦2° ÄœÁ.„€@¦2° ÄœÁ.„€@ ]Ù‡+@ ]¹Û"Ðå@ ]Ù‡+Á.„€@ ]Ù‡+Á.„€@ ]Ù‡+Á.„€@ ]Ù‡+Á.„€@ ]Ù‡+Á.„€@85S&Á¾@8 í(Œç@3×+ IºÁ.„M‰ûçm@3.ùÛ"ÐæÁ.„QnÙ‡@2G ù kºÁ.„NÜC,¥@2G ù kºÁ.„NÜC,¥@2G ù kºÁ.„NÜC,¥?ð°–Ž]@8#˜@8¾:@8 >+@8Iç@8Ù?ð°–Ž]@8Î÷@8i§@8Å@8S@8û—?ð*wjs—@8 * @8p÷@8¶@8 Ø@8 Ø?ð?ðøøøøøøøøøøøø1@¬†1&éxÕ@¬†0å`A‰@¬†1&éxÕ@¬†0oiDg@¬†1&éxÕ@¬†2×sü@¬†1&éxÕ@¬†2×sü@¬†1&éxÕ@¬†/v_Ø®@¬†1&éxÕ@¬†0å`AŠ@£A º^5?@£A +=p£×@£A º^5?@£A§æ›@£A º^5?@£A ^ž@£A º^5?@£A C,¥@£A º^5?@£A +=p£Ö@£A º^5?@£A 6z‘@3*0U2b@3ã¼Ô@1+¥ãS÷Î@1+Ƨï²@0Ͳ-V@0Ͳ-V@0ž«6z‘@0Ÿ!-w1@0ž«6z‘@0žì¿±[X@0ž«6z‘@0žŠqÞi®?žˆ2}?¾‰máÚ?‘&Øç?‘?‹û…†_?‘PÊÑ<Ým?‘£.'É?|¬Çëý ?’4 "ëžØ?r¼Jsž?0ÜN :s?‘=d¦^™?½y ¦Å?‚uÞ@>N ?ŒÆò/¢äÍ?‚Ö˜>µDá?ƒv_.^?‹ì3åý?†ùadô|@@@@@*@&?ð?ð?ð?ð?ð?ð¾ò¸|¾?#ËŸÕ ?7ÒcDÅÑ«?2Àηk@¬†1eÝ,@£A +™úˆ\?W~N¡Å8ñ?;$¢bA?¹±A_Móa?‚ ÿeS1u@ŸgŸ1ßE@2@«ìaÊÀƒÁ.„€@«ìaÊÀƒ@«ìbe+Ô@«ìaÊÀƒ@«ì{/ìVÖ@«ìaÊÀƒ@«ìeo@«ìaÊÀƒ@«ìjW§†Ã@«ìaÊÀƒ@«ìhe”¯O@ 2ÍÒñ©üÁ.„€@ 2ÍÒñ©ü@ 2×>«6z@ 2ÍÒñ©ü@ 2ÌÙè>B@ 2ÍÒñ©ü@ 2Ö‡+ @ 2ÍÒñ©ü@ 2Ížƒä'@ 2ÍÒñ©ü@ 2Ç®zà@9„¯O „MÁ.„>¤µÜÆ@3œIº^5?@3ŒwškP±@2Ͳ-V@2»'»/ì@2}cˆe”°@2f“t½@2}cˆe”°@2kJ#9Àì@2}cˆe”°@2l~($ x@8J¨?™ér¨kÏ?Ÿ7'»ˆv?°ñé÷Qi¹?§Kn(¿«?¦r‹ÿÇ×W@8J¨?U +£?00? .ä,?¢Eµ²À•!?šs°Àãª?™†öà|•@8p÷?’òÌ&Œ®3?šˆøQû±?&à|Òß?•°QŸ?]Í?ªìà¢5³@@@@,@,?ð?ð?ð?ð?ðøøøøøøøøøøøø3@§w€@§wœj~ùÚ@§w€@§w‰Q‚©”@§w€@§wË)^Ÿ@§w€@§wŠ Þ@§w€@§w”mÅÖ9@§w€@§w˜ -á@ª´mV@ª´fffff@ª´mV@ª´i“ àß@ª´mV@ª´vâëC@ª´mV@ª´-V@ª´mV@ª´ZŸ¾vÊ@ª´mV@ª´=²-V@9*0U2b@9àuöý"@5©‡+ @5±TÉ…ðo@597KƧð@57ü¹#¢œ@5 ¿±[W?@5Ϫ͞„@5 ¿±[W?@5µÜÆ?@5 ¿±[W?@5IQ‚ª?1·†Æjñ?¡U¢WªÂ?¡[r'{né?ªE> Ì?§ê‰%œôÄ?¯Vñá·µ­?‘â%ì˜ ä?£àÂ’âÿ?§i©†˜s?©Æ£ŒL?®+Ò¥õÿ/?°áÎZÔ?°^&Mªka?Ÿ$Ìj½BÙ?¡7‡V/Žr? ‚™¡0V?°+—ߎ ? 7BjüõÞ@@@@@&@(?ð?ð?ð?ð?ð?ð¿bÅ*j‡¿‚H£&·?YC@«…-V@«…,¥zxl@®Þc× +=q@®ÞdZ¬@®Þc× +=q@®ÞbÐå`A@®Þc× +=q@®Þ` qw@®Þc× +=q@®ÞhõÂ\@®Þc× +=q@®Þ`[À7@®Þc× +=q@®Þc9Àëí@7­¥œàv@7®šu@3k¥ãS÷Ï@3j³g ù +@2M²-V@2LÓZ…‡”@2Þi­BÄ@2ØDЪ@2Þi­BÄ@2åÉä@2Þi­BÄ@2|í‘hs?€‚ñêã ?‘@@Nßo9?’=N K?‹ËØ|*(?’PY8~Qj?‘Ò\.:Ø@?€‚ñêã ?”n‹rÕ|?’F^ì¼Sï?>\‰å‘?•MšuVÑQ?’j“O’I?£å$óM™?‘pØ-Ÿt?‚† SFò?>æ¿Îï?‹&¸ê±fÂ?‹&¸ê±fÂ@@@@@@?ð?ð?ð?ð?ð?ð?OŒ°Œà¿#Ç7 ?CÖ ¤©ƒ©?Jð%=Ìz~@«…,Ñp@®ÞdvPß…?c~Kut4u?k7·åL²P?ÑПý‡?ÝÈPÿ¿U¨@Ÿg3¶#P@6@ªÊ=ó¶E¢@ªÊ/\(õÃ@ªÊ=ó¶E¢@ªÊšû~‘@ªÊ=ó¶E¢@ªÊPHð@ªÊ=ó¶E¢@ªË6âë@ªÊ=ó¶E¢@ªÊ>ߤ?å@ªÊ=ó¶E¢@ªÊ?¾vȵ@¦¥Òñ©ü@¦¥ Ä›¥@¦¥Òñ©ü@¦£%m\ú¬@¦¥Òñ©ü@¦¥;dZ@¦¥Òñ©ü@¦žÒ-V@¦¥Òñ©ü@¦¥·éú@¦¥Òñ©ü@¦¥·éú@9šÔ,<Ÿ@9õÂ\)@3Œí‘hr°@3Ø -à @3`A‰7L@3@ØDЩ@1Öý!ÿ.I@3€N¤¨ÁU@1Öý!ÿ.I@1ÙQ‚©“ @1Öý!ÿ.I@1× ù kº?‡YÍ_?Ì1d?““¶”ÿµb?¼€+|Ò?’Z†Ažj?“¾§²~Î?¨TU‚?êÍ~êÜ^Ž?™€p4“¶Á?ªÕÓW?“ðÐ ?’ Óº^?¸M,ꤺ?šà+>G–Ì?‹´¡`Ƕà?âtî"0‰D?‡æê7²zE?ˆ©{2¡Î@@@@@&@(?ð?ð?ð?ð?ð?ð?nd·wö?‹¥sP€?t5FêÃä?¶‰;t,@ªÊ=7Ää*@¦¥xÛª@4?šŽµÂ7?Îņ¶VJ)@)Ø[Vÿò@oG+<Ã@Ÿq ^´Û¢@7@¤'þvÈ´9Á.„€@¤'þvÈ´9Á.„€@¤'þvÈ´9Á.„€@¤'þvÈ´9Á.„€@¤'þvÈ´9Á.„€@¤'þvÈ´9Á.„€@ BöE¡ÊÁÁ.„€@ BöE¡ÊÁÁ.„€@ BöE¡ÊÁÁ.„€@ BöE¡ÊÁÁ.„€@ BöE¡ÊÁÁ.„€@ BöE¡ÊÁÁ.„€@8„¯O „MÁ.„>¤µÜÆ@5ë¥ãS÷ÏÁ.„M‰ûçm@5lj~ùÛ#Á.„QnÙ‡@5uµsê³hÁ.„NÜC,¥@5uµsê³hÁ.„NÜC,¥@5uµsê³hÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø8@Ÿ8« Iº@Ÿ8­V@Ÿ8« Iº@Ÿ8€Æ$¨~@Ÿ8« Iº@Ÿ8G—˜‹@Ÿ8« Iº@Ÿ7õú}î$@Ÿ8« Iº@Ÿ7ÀÊN?¨@Ÿ8« Iº@Ÿ7è¯t§L@˜èr° Å@˜è'Ê*·@˜èr° Å@˜ó¯@˜èr° Å@˜Ç„3Ã@˜èr° Å@˜õ£ÏSO@˜èr° Å@˜òkVÌ?2OžÑ*¦ÒˆÎp@£çž¸Që…@£ç7>«6z@£çž¸Që…@£çiã¾@£çž¸Që…@£ç‘4êK@£çž¸Që…@£ç’½<6@ò° Äœ@î—Oß@ò° Äœ@ü¹#¢@ò° Äœ@ ÞÒˆÎ@ò° Äœ@‹C•@ò° Äœ@?±[W?@ò° Äœ@UL˜_@4(†YJôñ@4'Pô&Ü@1€ Ä›¥ã@1=quŽ"@1RÐå`A‰@0Û…¸Qì@0øDЩ*@0•fÏAò@0øDЩ*@0›]ÌcñA@0øDЩ*@0¥ '»0?|Ñb×¶@?ÀßL¯-?Ì*$*n?¤*càðyb?ÇnOÙQ?Ç98•ÿ?|¬h2:“?ÅË5Öµ?סϟE™~?ª*G„kì?ÒMWÒXRk?ÓÉXÒ\?„.”r‡É?®¿{dâph?®Ütß½RÛ?•çѳÍ9?«Ý]2°ðƒ?½ûmBüÁ@@@@@,@,?ð?ð?ð?ð?ð?ð¿y^ßÓ@?²‡øF€?t¾8Mèmš?„ +™_QÖÂ@£ç”Œ˜í @=ª F?{³R€RÁ®€?‘´CF õ?«'# ¡?­91)8?Ÿ‹‘+-/Ü?–‡+ Iº?–v”׆7Ê?‘ô 5Y?¯MÑJed€?¯íÉv8' ?„„OW°ò?—ƒFÛ¯/?‘Ó0<ïL{?¡2¿ônM|?§žpå¨,´?¶ ÚäF@@@@@*@*?ð?ð?ð?ð?ð?ð¿==S¿ ¿sQWÁ¯?Kë@N€Gñ?q&ìêÒ¢å@§Âhü=×@ªÈ…²Ž?bŸc?†o³´^óu?¨ÉAqgŽ?ò*OK‘<€@Ÿi#¨~¸*@<@¥g;dZ@¥gp£× @¥g;dZ@¥g”x9Å@¥g;dZ@¥g*oƒæ@¥g;dZ@¥g'p8ä@¥g;dZ@¥gRG^I@¥g;dZ@¥g’ÿ²k@˜%®záH@˜%®—Oà@˜%®záH@˜%‘T^³å@˜%®záH@˜%² ÜW@˜%®záH@˜%Aå†4@˜%®záH@˜%‹n~ÀN@˜%®záH@˜%™†ù,[@6Ô xFÜ@6ÕU²ƒ@35ãS÷ÎÙ@3(ã—¾â@2nùÛ"Ðæ@2eu¾N0y@1‚@·€5@1»àpဠ@1‚@·€5@1º±ɽ@1‚@·€5@1»ápäµ?‚Cš æI?•Â{Íwà3?‘¿° +Æz?ŽEÍ +r‘?“ümbaÆ?“*E̽n?€Ã{s°úi?™{Ï£­0Ä?‘˜ËrÛé´?’Nß>YR?™€$<«É?”Pù—yÇÙ?‘ß“¯Øg?ŽYéc˜?…wç{„³?„?¢Öñ ?ˆ5’©‡µQ?‰¯ëÇR:@@,@$@"@<@7?ð?ð?ð?ð?ð?ð?O6Bœ¿k#ŽDh?Tólžb ?W]D„õ¸@¥g ‚Ñr@˜%ž©ný®?tvÛa4Iö?wbÙ +"†¯?ð³E, ‡ÿ?òzÑôÐ@Ÿfã+Cµ+@=@¯,j~ùÛ#@¯,j~ùÛ#@¯,j~ùÛ#@¯,l@­ Iº^5@­È´9W@­ Iº^5@­9‡+@­ Iº^5@­í‘hs@­ Iº^5@­+Ƨï@­ Iº^5@­(õÂ@­ Iº^5@­@@®ý±&éxÕ@®ý³t¼j~@®ý±&éxÕ@®ý²ñ©ûè@®ý±&éxÕ@®ý¨´9X@®ý±&éxÕ@®ý‹ I¹@®ý±&éxÕ@®ý¢\(÷@®ý±&éxÕ@®ý¶E¡ÊÁ@8Q|ÚQ@8ùrGE9@3° Ä›¦@3«P°ò{³@397KƧð@3Ø­«ŸV@2¸DЩ*@2žŠqÞi®@2¸DЩ*@2«À6âë@2¸DЩ*@2˜ -à ?гá‡}?­³_¦b*—?—æ'=D´P?›“ë '?Òß© ÷?¹ÂÑ*=œU?’Óusÿ\Ã?“¶†ÿê¡?ß‹…&?™b ]jZå?•¯ÃþƒR?#°‘N˜?³â3ù‹?’Эs_ª`?œÁXÙñ?§DÛ–£?»o;Ês€"?¨4¨æž@@@@@@?ð?ð?ð?ð?ð?ð?oww#¿aø’Œ?fdÄlC²?vùWBZ@­w>zÚ@®ý§§øòÚ?„ê嘴?–š9‘h±?ó†31»5l@I¨½jà(@Ÿf^™‡Q@?@¡\³¶E¡Ë@¡\ÄZ¬@¡\³¶E¡Ë@¡\¯\(õÃ@¡\³¶E¡Ë@¡\ÇæšÔ@¡\³¶E¡Ë@¡\œ„µÜÆ@¡\³¶E¡Ë@¡\§â‚@¸@¡\³¶E¡Ë@¡\¨$ x@­n[¥ãSø@­nR-V@­n[¥ãSø@­nr¼£@­n[¥ãSø@­nB3œ¿@­n[¥ãSø@­na½¥@­n[¥ãSø@­nAÿ.Hé@­n[¥ãSø@­nAò×r@8G>«6z@8AA [À@5Œí‘hr°@5aä÷eý@4ìj~ùÛ#@4èâe+Ô@4G ù kº@44%®æ1ù@4G ù kº@4@bMÒñª@4G ù kº@4JÔ,<ží? Eˆ‡ðó‹? /÷œ…?­Y)Þ=’? ñÔ`JU?œ¼•§&Œ‰?¡î®ðÎ`~?1·†Æjñ? 3ÝP‰j?½ç“Oªc_?©øpe³­ó?–kš‘ž? ª w³ +?™Ä¶BϪ?§—“H1ÀÏ?®Ï¤\7?£-n?¶û–Íc]Ö?•@¼Cк@@@@@@(?ð?ð?ð?ð?ð?ð¿x#rÒóÀ¿khŒ²&?pJÉ_+?Z5·òGW€@¡\­C ä@­nI_{N0?ŒYɺŒ?€5ë’¸??øÝaa× ?îm•r>0‡@Ÿjéå)¼@@@­œl1&é@­œqhr°!@­œl1&é@­œn±Ä2É@­œl1&é@­œq‚©“ @­œl1&é@­œr×sü@­œl1&é@­œncŠ @­œl1&é@­œnV“@é Iº^5@èõÂ\)@é Iº^5@é™™™š@é Iº^5@é$tSŽ@é Iº^5@韾vÊ@é Iº^5@éüPH@é Iº^5@é¤?åÉ@8(†YJôñ@8 ÅÖ8†Z@3 í‘hr°@3 ¦µ (@1ûƧï²@1ùº^5?}@1èè§æ›@1å¡ÊÀƒ@1èè§æ›@1êCþ\‘Ò@1èè§æ›@1ì<žì¿²?µÕjùq®p?‘Ð`HÇh?’Gßk;m?F‘q/b?‘à2F0µÔ?’ß5Ov_Ù@«Š¤µÜÆ@4J^5?|í@4J–»˜@3ñ‰7Kƨ@3ì/ƒ{J#@3._oÒ @3&fffff@3._oÒ @3"@·€4n@3._oÒ @3$ xFÜ@8J¨?ZÁ».œ?”Ä0óçî?‘sNX„êÒ?— +æÙõ¡?•I0ùzIJ@8J¨?’LÁŒÀ´a?•Q²rz¢ù?’àêE©³?¢i ú?¨,?—vÑékÜ@8p÷?*øT?aäŽ +Ù?Ž0 ½~ÿ?K·‘d\?‘ ê$4 @@@@*@$?ð?ð?ð?ð?ðøøøøøøøøøøøøB@¨1ò° Äœ@¨1ò-V@¨1ò° Äœ@¨1òT`ªd@¨1ò° Äœ@¨1ñë…·@¨1ò° Äœ@¨1òÊW§‡@¨1ò° Äœ@¨1ñuŽ!—@¨1ò° Äœ@¨1òT`ªd@¡«‡®zá@¡«‡l‹C—@¡«‡®zá@¡«ˆXy=Ù@¡«‡®zá@¡«…zxl"@¡«‡®zá@¡«‡“Ý—ö@¡«‡®zá@¡«†šÔ,=@¡«‡®zá@¡«‡æšÔ@4£g ù l@4£¼ÓZ…ˆ@0ý‘hr° @0ý‘hr°!@0'KƧïž@0&ý!ÿ.I@/=Vlô"@/=<64@/=Vlô"@/=p£× +>@/=Vlô"@/=ÌcñA!?|¬Çëý ?Čۨ1A?‘G¿yÛ?ï?‹×lÇ…N9?‘; ÷^?ÔCXsñ?|öOÿÝ?’j%ÓRa?“û#ÆGf?CÚ B÷?‘!U?Ð{Ò?wN —z_?‚|׿pY?Å9–o?ƒ>ZÌw?‚äÍ“½E'?†špk Y?†µ°jÆÃ@@@@@*@*?ð?ð?ð?ð?ð?ð¾Æòˆ¿xÃ@? Óߘ9Ñ3?þ–;¤@¨1ò78`@¡«‡=VˆŽ?@¼ú¼eJ?4ì †¢õ?Ž_WÍZ†x?vRius@Ÿfè”õñÍ@C@ óÂ\(ö@ óÂŽ¶ ˆ@ óÂ\(ö@ óű‰°r@ óÂ\(ö@ óÃd{*@ óÂ\(ö@ óÆßü2@ óÂ\(ö@ óÁ¥œt'@ óÂ\(ö@ óÁJKÖ‡@ªl3¶E¡Ë@ªl3÷ÎÙ@ªl3¶E¡Ë@ªl4’)®$@ªl3¶E¡Ë@ªl6‘ +l@ªl3¶E¡Ë@ªl2“³Æ'@ªl3¶E¡Ë@ªl3.Ô} @ªl3¶E¡Ë@ªl1ÇÎã£@4–šÔ,<Ÿ@4–†zäÁ†@1«¥ãS÷Ï@1«ÕR½ã¼@1†“t¼@1…ÄO©=&@1Œ~($ @1Û…hÖ@1Œ~($ @110:­¸@1Œ~($ @1¿Q&-p?|¬Æ Væ?0ñÏ’ì?‘FúëWg?ŒWÕ:×Bx?‘?yd%&.?‘(Å( ‹?|Ñb×¶@?’a›I$ž;?¨¥€æ5^?–=Ôcü~?‘+ôÓÉŽÂ?‘‹3ŒÛ¡?‚¢r;;É?8Ç1§$?ƒ@tGy‚þ?ƒ#¡XÏÃ?‡9DP¢ä?‡"#Àѧù@@*@"@*@5@4?ð?ð?ð?ð?ð?ð?}Ç„@¿8XúÊð?Eo2[-•?â•ÛPZ@ óà Œ³k@ªl3)Û®?e<¯µ>*?=%¼ïÀ?Ø2F¦¦Y”?…g«ÀK@Ÿf´µRž§@D@ŸoJÀƒo@ŸoO@ŸoJÀƒo@ŸpöÅ=@ŸoJÀƒo@ŸoÀÔ˜Z@ŸoJÀƒo@Ÿo±ƒ¯<@ŸoJÀƒo@Ÿo–„?¿f@ŸoJÀƒo@ŸoاÁtò@¡HJÀƒo@¡HHü±@¡HJÀƒo@¡H;Ön³&@¡HJÀƒo@¡H44ë(@¡HJÀƒo@¡H1lS£@¡HJÀƒo@¡HKã-#C@¡HJÀƒo@¡HPÊ4@5¿–»˜È@5½%=p)@3’ Iº^5@3{µþ»¶G@3“t¼j@2õvˆÈ²×@2OO „M@2Kv4EŸU@2OO „M@2iÑ-(`@2OO „M@2=ŒË¶·?‰døëŽìÃ?¢uñÌ6!?œV΄Œ„š?™†‹¢ò„?«³,Í@ ?­Ç÷ˆÉ?}x—™?›“;þÄU?™ÿ…Jjì?ª_·Q·?®œ£dÜ'C?‡7Ùù„?•Q½7 +È?‘;u•LÐß?Š×É´¸?›Ÿ}ê?›4¾ÀÍ6@@&@$@&@4@3?ð?ð?ð?ð?ð?ð?Ž.Ñ”¿krïZ?h¥‘¬ØÆÁ?nÐgáh-Ç@Ÿo}‘˜³@¡HB•·Mp?ƒci&ÛVÂ?‡g}' d ?ôIóWJЗ@ô ]èÃï@ŸaÔôC¸@E@¯Ì Iº^@¯ÆºŸ¾vÈ@¯Ì Iº^@¯Ç¤µÜÆ@5T›¥ãSøÁ.„M‰ûçm@4U`A‰7LÁ.„QnÙ‡@3𖻘ÇãÁ.„NÜC,¥@3𖻘ÇãÁ.„NÜC,¥@3𖻘ÇãÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøG@¡·àÄ›¥ã@¡·á$Ý/@¡·àÄ›¥ã@¡·àuöý"@¡·àÄ›¥ã@¡·ãˆe”¯@¡·àÄ›¥ã@¡·ã× +=q@¡·àÄ›¥ã@¡·ß¤?åÉ@¡·àÄ›¥ã@¡·á‰7KÇ@¤Ú»dZ¬@¤Ú»"Ðå`@¤Ú»dZ¬@¤Ú¹rGE9@¤Ú»dZ¬@¤Ú³g ù@¤Ú»dZ¬@¤Ú¸ºÇÊ@¤Ú»dZ¬@¤Ú»~ÿ—@¤Ú»dZ¬@¤Ú¼(õÂ@4wâ‚@·€@4x}¿H€@2Š^5?|í@2‰Î_oÒ@1—ï²-@1˜Çâ‚@¸@1…œàu÷@1‡´¢3œ@1…œàu÷@1†ÕϪ͞@1…œàu÷@1†ö”Fs‚?|öOÿÝ?‘€5{ºÎ#?’5 µ¿$„?ŒªèkÜ?‘ …É¿¼?“DŽèw–?|öOÿÝ?’eCŒO?‘S1Êz?ÿº (€?=~þžè?6€k÷pŽ@¡·áylzÔ@¤Ú»‡ç–?\¹î:ŽO³?VCQ0‘?Ä¢…÷tš?·»j°Ã™@ŸfgC”@H@¡¼1&éy@¡¼9XbN@¡¼1&éy@¡¼ +¦L/ƒ@¡¼1&éy@¡¼t¼j@¡¼1&éy@¡¼}Vlô@¡¼1&éy@¡¼ ù l@¡¼1&éy@¡¼s×Ü@ «ÍOß;d@ «Þ¸Që…@ «ÍOß;d@ «ÈÎp:û@ «ÍOß;d@ «Í:’£@ «ÍOß;d@ «ÏiDg9@ «ÍOß;d@ «Î±Ä2Ê@ «ÍOß;d@ «Í«ŸU›@8Ñ|ÚQ@8ÑTÉ…ðo@2J^5?|í@2L<žì¿±@1K"Ðå`B@1O²-V@0ò䎊r@0‚@·€4n@0ò䎊r@0‚ÊW§†Â@0ò䎊r@0ÿ.Hè¨?Æ‹ºGgÙª?š¾ßÍZ?’måGSžq?Œ‚èõЊ?’êÔÒ?âé¨ë7F?¼ºZ¡ˆ\?“?xr¢I?–ôÃj¢T?‘’â·ýÅ?‘áÙž­ò?wN —z_?Â°ÅÆmÅ?ÉGãA­ø?‡Ü̈- +?…J]j?ˆ0&YÊEd?‡ã ËÄž@@@@@&@?ð?ð?ð?ð?ð?ð¿pQÝfÀ¿R{¡ÙKÀ?VêR—?HäÒMr»h@¡¼ +OVT~@ «ÎÞWO?f`tÁ‘ã?XßF³ x?Çä}„j?¨S¤ýKŸ?@ŸrƜ׎t@I@§Ò•%@§Ò`A‰7@§Ò•%@§Ò¡ÊÀ„@§Ò•%@§Ò›¥ãT@§Ò•%@§Ò¸Qì@§Ò•%@§ÒÐå`B@§Ò•%@§Ò¸Qì@¯G®zá@¯Hr° Å@¯G®zá@¯I7KÆ©@¯G®zá@¯IùrG@¯G®zá@¯G®zá@¯G®zá@¯H´9X@¯G®zá@¯G+ J@6Y*0U2b@6UÉã½@2)‡+ @2)Çy¦µ @1Ct¼j~ú@1CüPH@0&YJôðØ@0'¯·é@0&YJôðØ@0&ÏAòØ@0&YJôðØ@0&€IQƒ?|öOÿÝ?ß‹’bÏ?’d3ð"7?‹¦ ŸYÔ?éDEâ©×?±ŒR°?žˆ2}?’?Á• ñ:?“v@á¿bî?ni"Í š?Ë=ÔU{,?H, +r_?’%Crì?Œ¬Çëý ?ƒ/‹ÍY}’?‚ãaÎúvh?ˆA0û)n?‡?®\Âä@@@@@@?ð?ð?ð?ð?ð?ð¿/}‡d@¿%VÎ@?/T N÷§?#XÓé‘P@§ÒÑ' @¯H.BÍ?OÈ ïsg¼?Chß–$Ö«?ª…•Ì0¬?ð"YcKd@ŸgΦ]¯@J@¦@W +=p¤@¦@W +=p¤@¦@W +=p¤@¦@WÎÙ‡@¦@W +=p¤@¦@VÕϪÎ@¦@W +=p¤@¦@XDЩ@¦@W +=p¤@¦@V“u@¦@W +=p¤@¦@VR½<6@¡‡“u@¡‡E¡ÊÂ@¡‡“u@¡‡lô!@¡‡“u@¡‡éá°Š@¡‡“u@¡‡Ov`@¡‡“u@¡‡ðØDÏ@¡‡“u@¡‡Ž!–T@2ò䎊@2&€IR@0=‘hr° @0=!ÿ.Hè@0Wï²-@0Vý!ÿ.I@.¨Û‹¬q @.¨Ë’:*@.¨Û‹¬q @.©ûçl‹D@.¨Û‹¬q @.©ûçl‹D?É^žQ5P‚?ß‹’bÏ?‘(¥¿á?‹ª½¨ª8v?‘,IÝ Áé?È2I/?ÐbV‡,?’uß¿çÒ?¹º–Èj?3.Ylî?øóéM Ÿ?b¶­-Óx?€g‹)ØêÀ?ŒË›Í‡Çq?ƒ/‹ÍY}’?‚ð'ã:ÂÝ?†©b/bJö?†ùadô|@@@@@,@*?ð?ð?ð?ð?ð?ð¿MÑ€T¿2ó÷J?8æÔ’ª‚/?3W<(½f@¦@W‹‹F@¡‡–kÙ¦?HU+Î?BˆÙ>+F?Œ³³Ø©ý?|ŠÅÂ¥@ŸsWËÞÄ@K@¦ÑõÂ\)Á.„€@¦ÑõÂ\)@¦ÑùXbM@¦ÑõÂ\)@¦ÒÖ8†Y@¦ÑõÂ\)@¦Ñø†YJõ@¦ÑõÂ\)@¦Ñø7´¢4@¦ÑõÂ\)@¦ÑýæšÔ-@¥j33333Á.„€@¥j33333@¥j;dZ¬@¥j33333@¥j,~($ @¥j33333@¥j=<63@¥j33333@¥j=—ö+k@¥j33333@¥j=p£× @9šÔ,<ŸÁ.„>¤µÜÆ@4&‡+ J@41uŽ!–R@3b-V@3f®}Vlô@3 ù kº@3 *0U2b@3 ù kº@3 £n.²@3 ù kº@3Ov_Ù@8J¨?™«» ¿?™ïfô?‘S;²~?•òJj~u?™S:Ъ;5@8J¨?œs°XX=`?¢n®Ú| X?’ü#q\-v?–Y:ŸèJ?–˜k|‹ ;@8p÷?›Õ¼ÉUÓ›?’Z†Ažj?Š>ÚµÕ?‘˜M\ÿŠ?´tï-Ïw@@@@(@*?ð?ð?ð?ð?ðøøøøøøøøøøøøL@££‰7KÇÁ.„€@££‰7KÇÁ.„€@££‰7KÇÁ.„€@££‰7KÇÁ.„€@££‰7KÇÁ.„€@££‰7KÇÁ.„€@šO;dZ¬Á.„€@šO;dZ¬Á.„€@šO;dZ¬Á.„€@šO;dZ¬Á.„€@šO;dZ¬Á.„€@šO;dZ¬Á.„€@6¹Œ~($Á.„>¤µÜÆ@2Ùº^5?}Á.„M‰ûçm@2RÐå`A‰Á.„QnÙ‡@2J0U2a|Á.„NÜC,¥@2J0U2a|Á.„NÜC,¥@2J0U2a|Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 ØøøøøøøøøøøøøM@¥Y“u@¥YÈ´9W@¥Y“u@¥YeýŠÛ@¥Y“u@¥Y +=p¤@¥Y“u@¥Y™™™š@¥Y“u@¥Y*™0½@¥Y“u@¥Y“t¼j@©‘»dZ¬@©‘¼¬1'@©‘»dZ¬@©‘¼j~ùÛ@©‘»dZ¬@©‘¸†YJô@©‘»dZ¬@©‘¸­«ŸV@©‘»dZ¬@©‘¸_ö•@©‘»dZ¬@©‘²þÅm]@6 ]cˆe”@6 C•%@2Lí‘hr°@2Lô!-w@1Ͳ-V@1Ì(õÂ\@1G ù kº@1D¼j~ùÛ@1G ù kº@1?åÉä@1G ù kº@1@Ñ·Xâ?‡YÍ_?äm°û0Ž?’>¯\¾¦?Œ'õ‚$5ñ?’»–j˜ú?“¢¾_ÂÜ?|öOÿÝ?’ ,øÕC©?Å)Ì_“?@§[*^?‘¦‘=W?˜«ŒˆÀS)?ƒ/‹ÍY}‘?Œþ%å_D?…ÑTë0Ô?ƒË´ÔC¶¼?ˆ©{2¡Î?ˆ©{2¡Î@@@@@"@*?ð?ð?ð?ð?ð?ð?<©è訿X}°´d?40î ¹ø?4áB€Ã@¥Y$ˆ@©‘¹NÕ?RÛò‹”G*?UA¿ f¦¯?© ʼß=p?±'»Š9@ŸgÆOOK@N@«}“t¼j@«}“÷ÎÙ@«}“t¼j@«}™Û"Ðå@«}“t¼j@«}šCþ\‘@«}“t¼j@«}™Àëíû@«}“t¼j@«}“üPI@«}“t¼j@«}“ àÞÓ@”‰7Kƨ@”‰7Kƨ@”‰7Kƨ@”‹C•@”‰7Kƨ@”ŠŒL˜@”‰7Kƨ@”ŠôðØD@”‰7Kƨ@”qu@”‰7Kƨ@”Š Þ@4h†YJôñ@4iäêøµ,@1W+ Iº@1V +¦L/ƒ@06§ï²-@05µsê³h@/½Vlô"@/¶ý!ÿ.I@/½Vlô"@/±Î_p@/½Vlô"@/´SŽóMk?|¬h2:“?%¼ÇÆÃ±?‘šÕU#?5~pY5?‘à2F0µÔ?‘Ò\.:Ø@?|¬h2:“?’®> +fuæ?ŽËÜ¿€?’GÎ>GÅ?’W;„zY?‘êey°úà?„Üü«˜Þ ?R©i»èi?‚ÂÌ]æ?„2ÌôÏ?‡Ä­‹›Ü?IÏáå$@@@@@,@(?ð?ð?ð?ð?ð?ð?&™Î¡ ?/À¤j°?K<Ê0?$€”áU°@«}”Ï[¢@”ŠT<Î?j¯nv»¿ã?D‰‚õ,D?âc€^ä?”d¤µÜÆ@3Œí‘hr°@3Œq ²•ê@3M²-V@3NHè§æ@2…œàu÷@2„g8}À@2…œàu÷@2‰xÔýó¶@2…œàu÷@2Šu%F +@8J¨?‘+ùÔ!½Š?“1‘´¹V?Ž˜ùš®E`?•’ØŒi³?‘m×e\»@8J¨?’?Á• ñ:?»Þ‹"è?ni"Í š?”îC¯·æo?’"(îL@8p÷?àQdËЈ?„‘Za¹Q?ƒ!Ë *(?‰]³ß’Ý?†‡+œC@@@@@?ð?ð?ð?ð?ðøøøøøøøøøøøøP@¬•÷ÎÙ‡@¬•÷òuË@¬•÷ÎÙ‡@¬•øŸ&Òâ@¬•÷ÎÙ‡@¬•ùUär@¬•÷ÎÙ‡@¬•ù+™°0@¬•÷ÎÙ‡@¬•÷. ®…@¬•÷ÎÙ‡@¬•÷¸eX@˜¸@ƒn˜@˜¸?IÇ'Ð@˜¸@ƒn˜@˜¸Cðk¦Ü@˜¸@ƒn˜@˜¸JLG™è@˜¸@ƒn˜@˜¸F{³@˜¸@ƒn˜@˜¸GÈÄè³@˜¸@ƒn˜@˜¸Gë÷´è@6`ØDЩ@6`gògÐn@1¸r° Äœ@1¹hì•Nv@1lj~ùÛ#@1n~ÉÐ}¤@0¡:’£S@0¢d ï¤@0¡:’£S@0¡£v{)¹@0¡:’£S@0¡å6îô?…ðE[i)?Ôpóò?‘Sûæ aÝ?Œx0s©4Û?‘9DZ¥pÌ?Ö(#ÿ~?e™”XWø?’awÌuE?»óÎ] æ?Yþ.©§`?‘Kh?§¢?–§9Ä„?ˆÒ,ôœŒ¼?Œ×¯Çr&c?ƒ[´§…/l?ƒ"’º5Mf?†Ì’=Æý?†¸?Z€Ã&9@?RàÌs)Œ?Â~½ýéò?¯ átΨ9@Ÿf pœÛ˜@R@§YxQë…@§YwÎÙ‡@§YxQë…@§Y{W>«6@§YxQë…@§Yyb¶®@§YxQë…@§Yz–¼@§YxQë…@§Ys©*0U@§YxQë…@§YtzáG®@¦u@ƒn˜@¦uA$Ý/@¦u@ƒn˜@¦u?Ë’:)@¦u@ƒn˜@¦u?ÿÿÿÿ@¦u@ƒn˜@¦u@uöý"@¦u@ƒn˜@¦u?¤?åÉ@¦u@ƒn˜@¦u>ƒä%¯@5IÎ_oÒ@5J0U2a|@1î5?|í‘@1êOv`@1gKƧïž@1_O „M@0«xFÜ^@0¨ Ô•*@0«xFÜ^@0© 'RTa@0«xFÜ^@0ªdÂø7µ?}Ñ¿ž,?‘@@Nßo9?˜zjÊ©Øi?Ž˜ùš®E`?‘'¬Å™» ?‘}7ˆ.Ð?|¬Çëý ?–9}»Ö=?›ê‰¬>V?–sZ -™ø?’W;„zY?ÝÒ¥X[?‚n—8‹8?3I¶#i?†ÛdoŠ™?„ mŠmsi?ˆ”Tj«›ª?‰G±±ZÎ@@@@@*@*?ð?ð?ð?ð?ð?ð¿Cmñ‚¨¿<²Þh?CóòþPY?ɹ-Ëý@§YvÙH‘ @¦u@àEà?bü¶w;Ã?6­D‡ió?Ò<špùÕz?w‰’O™È@Ÿf¢‰ÕÕ@S@£FŸ;dZ@£F£•%@£FŸ;dZ@£F uöý#@£FŸ;dZ@£F»Í5¨X@£FŸ;dZ@£FŸoÒô@£FŸ;dZ@£Fš6âë@£FŸ;dZ@£F“g ù @¥ûäÝ/ @¥ûíÒñ©ü@¥ûäÝ/ @¥û­BÃÉð@¥ûäÝ/ @¥ûÿU›=@¥ûäÝ/ @¥ûÒòä@¥ûäÝ/ @¥ûË Iº@¥ûäÝ/ @¥ûÍ\ú¬Ú@8*0U2b@8_Ø­« @3¡hr° Ä@3Ä,<žì¿@2ô“t¼j@3 ¿HË’@2\ÚQÎ@2g8}¿I@2\ÚQÎ@2|í‘hs@2\ÚQÎ@2wRT`ªe? Eˆ‡ðó‹?µêÙš?8L?³>ðÐG‡?™k$®tO?²i=Í—Ž?µ5ú`?˜ž^ƒÿ*ˆ?¹°ã±÷÷T?µ¸."û®E?°Fê¡J?¾8.Ä>?Ó+ÐDoX?”XÅÏŒ? Ûƒ¶30î?²_K. ‹?°p)Õ?·ˆ#j?¿H>”w,@@@@@,@,?ð?ð?ð?ð?ð?ð¿bñnê¿‚0tÍi?HºÊ!ÙÙ?T(£¯Gª@£F 3ŒKf@¥ûÝh/¸é?b;îªÚ±Õ?qƒÃÛbÈ?‹„y¥F?£rÝÎÌxr@Ÿd&Chš@T@­Ê +Àƒo@­Ê ÌÌÌÎ@­Ê +Àƒo@­Ê Ƨï@­Ê +Àƒo@­Ê “ àß@­Ê +Àƒo@­Ê +dÂø7@­Ê +Àƒo@­Ê ˜_ø@­Ê +Àƒo@­Ê  'RT@ªÔ…¡ÊÀƒ@ªÔˆõÂ[@ªÔ…¡ÊÀƒ@ªÔ„›¥ãU@ªÔ…¡ÊÀƒ@ªÔ†L/ƒ{@ªÔ…¡ÊÀƒ@ªÔ‚ø7´¢@ªÔ…¡ÊÀƒ@ªÔ‰ÞÑ@ªÔ…¡ÊÀƒ@ªÔ„Щ*@8(†YJôñ@8)™™™™š@3¦‡+ J@3¦ð¸º@34“t¼j@34¼j~ùÛ@2®_oÒ @2¯ùrGE9@2®_oÒ @2®vÈ´9X@2®_oÒ @2®($ x?€‚ñêã ?½Ë9ØŠ§?”âLñ¹D?Hžyq?’o?P´À?”‹ÂØ*þ›?гá‡}?“«ö„@×®?”p¶I”“ž?‘~¬Àm?ó?“‚Û£0Î¥?’?;Áƒè?±A\ÿŸ#?¨ ‰‹U)?‰6~„æAÕ?„†YÊ’È?‹¼`’ i2?¢—„¯l@@@@@,@*?ð?ð?ð?ð?ð?ð¿>ÍGJ¿E¤p°?3^tÒÕô?J. H@­Ê ˜Kø@ªÔ†±Ô+ô?TT>x$ˆ­?i™7xþ“?­Îð…~–?ÒÏšš«#O@ŸhÿNõ1ß@U@®BhõÂ\@®Be¸Qì@®BhõÂ\@®Bmç®d7@®BhõÂ\@®Bƒï‹œñ@®BhõÂ\@®BfÌÓo@®BhõÂ\@®BƒBbÈ@®BhõÂ\@®B~20x@•`Á‰7KÇ@•`Õ$@•`Á‰7KÇ@•a×+¹Ô@•`Á‰7KÇ@•`ôݬ\y@•`Á‰7KÇ@•`ßOùŠ‹@•`Á‰7KÇ@•`ò€Ö_µ@•`Á‰7KÇ@•a#B@6ÿ–»˜È@6þ!ºËYN@4c÷ÎÙ‡@4;Wž1ÃÓ@3Ÿ²-V@3}2‘n‰@3ò䎊r@3d@’–º@3ò䎊r@3R^éWe3@3ò䎊r@3O5åI™ð?ŽÕQp Î?¦naɹ&?©Ò ‘A?¤€ÁäõE/?¬hÔ­ÓÔù?¬âç ?ŽÕQp Î?§SŽFÛ«?¦YxÌ¿Ó?§Ë¦3áØ?±’oÎ?±µ”×Ã?3ˆ»ðô?” Ôf¨™?•ˆ!Íwà?Œ.u+•?’Ôb©øø1?—W~|@@&@,@,@:@;?ð?ð?ð?ð?ð?ð?t¬Ã?zrÕ©Ô?`1ͺNŒ?G±ª©ïÜ@®Bjã‡\@•`Ò¹âU?uLßd¹Š?^!‹n¼?ÝÃú6f?¦yt‚§@Ÿ_+þ? @V@­záG®@­záG®@­záG®@­¨Xy>@­záG®@­•*™@­záG®@­¨Xy>@­záG®@­Fs×@­záG®@­SŽóM@¥™‘hr°!@¥™‘&éxÕ@¥™‘hr°!@¥™‘Ä2ÊX@¥™‘hr°!@¥™‘N;Í6@¥™‘hr°!@¥™‘hr°!@¥™‘hr°!@¥™’-V@¥™‘hr°!@¥™’×s@3`ØDЩ@3`Ä›¥ãT@0 +^5?|î@0 +’£S&@/:¬1'@/:kP°ò|@. +#9Àëî@. +W§†Â'@. +#9Àëî@. +Ú¹õY´@. +#9Àëî@. +™0¾ î?€‚ñêã ?ï1ïºÅ?‘4!Ÿ•p’?‹¬àÌ’Ç?‘õbÐ\?È2I/?|öOÿÝ?’,ö´´Ï#?ˆ9²0?-õI¸`K?â2„&ÿh?Z˜°,aÝ?‚uÞ@>N ?Œ».êxóÚ?‚§W®ê ?ƒ†+ Å?†£îž«î?†žóB» “@@@@@*@,?ð?ð?ð?ð?ð?ð>ú€]?*¡c0?'li‘jÅo?PxIå}Ü@­­1bØ@¥™‘•Ï?G8ŒHé??)´½?š¯ª «?_求üÊÂ@Ÿg‚æúž@W@§2Ƨï²@§2Éûçl‹@§2Ƨï²@§2½/Ÿ¾@§2Ƨï²@§2ÊdÂø8@§2Ƨï²@§2Ç ù l@§2Ƨï²@§2¥S&Ã@§2Ƨï²@§2©“ àß@¦€åãS÷Ï@¦€¨1&éy@¦€åãS÷Ï@¦€ì/ƒ{J@¦€åãS÷Ï@¦€Î±Ä2Ë@¦€åãS÷Ï@¦€Þ í(Ž@¦€åãS÷Ï@¦€óê³g¡@¦€åãS÷Ï@¦€è§æ›@7–»˜È@7i k¹Œ~@3Ï|í‘hr@3Ú ÞÒ@34“t¼j@3UãS÷ÎÙ@2õµsê³h@3t¼j~ú@2õµsê³h@2¿Òòä@2õµsê³h@2¾vÈ´9X?Ž=fA:?ŸoÝ ÷6}?©ù$q‘îË?–cÙa¢+r?¶dtÀXü±?·=ÎÊ?ÉÿÛŠ›Ì?žù=Beõ?¨„¸olÚÊ?V)0ÁÔ?Àq ]?ĵP§¶û?ÉkÛVä ÷?@`WÓå?¢ó6õ··?™òvÈc?£Ð °?¦ÿc°õ@@@@@*@(?ð?ð?ð?ð?ð?ð¿g¨ÁGÎ?ЧN/÷@?e*üˆEø?tâë ´½â@§2£SÁ4@¦€ß¨hn?‡ù3˜³}X?xiÄŸ¥ý?å š&Iºb?·ºêÞICb@ŸkúÎÉö¦@X@¥ñÌÌÌÌÍ@¥ñÍ4–l@¥ñÌÌÌÌÍ@¥ñaohÛ@¥ñÌÌÌÌÍ@¥ò\Æ?@¥ñÌÌÌÌÍ@¥òʦL/ƒ@¥ñÌÌÌÌÍ@¥òdêJŒ@¥ñÌÌÌÌÍ@¥òféxÔÿ@›l˜“t¼j@›l–‹¬Ÿ@›l˜“t¼j@›e~BZîc@›l˜“t¼j@›d†YJôñ@›l˜“t¼j@›c‰ 'RS@›l˜“t¼j@›dIã½@›l˜“t¼j@›fhõÂ]@7‘|ÚQ@7â³ø­t@4©‡+ @3•”¯O „@3ù7KƧð@3œàuöý@3zÔ,<ží@2;dZ¬@3zÔ,<ží@2ž!–R½<@3zÔ,<ží@2¶$Ý/ ?¨Sp*?Ý\Zõ¦E‡?Ø3ì—àÍ?Á•- +@™?Ê›÷£8?–ËÒÙI°?|¬Æ Væ?è£Ô°ì?épVY^ý?é#Lp~?êx;Ãq +?ϧèr«ì¯? ]Ö~Ò"L?¿\TÉ%“›?§˜Áuf·?ºİiýö?¼ µ:C?³ü«í(@@@@@,@?ð?ð?ð?ð?ð?ð? !‹fd ¿Æ#øó"d?pϳE?¢بu+@¥ñÖw=~Ö@›l4ÌAæ?Œ †ÉX?–Fœ 71@Ê#ø2@XÐ,¡ó@ŸX)‚Wãö@Y@«%n—P@«%° Ä@«%n—P@«%ö5¥É@«%n—P@«% /n @«%n—P@«%¯OÆ¥@«%n—P@«%æ9_v@«%n—P@«%hÖZÉ@›ã“t¼@›ã“t¼@›ã“t¼@›ã´>@›ã“t¼@›ã–P“Å@›ã“t¼@›ã #+@›ã“t¼@›ã¢„—@›ã“t¼@›ãB¸@0ãg ù l@0ãg ù l@+Üj~ùÛ"@+ÜlM˶b@+ÊÀƒo@+©2“Ñ@)Âu%F +§@)ÂbÿF{“@)Âu%F +§@)Â4H)@)Âu%F +§@)Âd‘Ÿõû?É^¨¯Âj?¾¡5¼>?‘J½å?‹¬Ó¯c[?åtxâÕ^?±Ý_4á?ÐbMÝn½?’ÎÇ(tm?~J€ßÂÂ?/—ùœ:?Ë= yκ?J› öWˆ?€bwÄ' g?Œ¬­z=`=?‚pDøïRh?‚ã?Ã@j?†ˆŠ_cd?†ˆ¾®¿‘º@@ @$@&@0@0?ð?ð?ð?ð?ð?ð¿Q°š;¿° P0?@&ð?3 E¸ß@«%.¸pÐ@›ãü…Š€?Nóx>¹?B±~I˜Ã?——È–p?|‹•GÙð@Ÿs JlÞ@Z@¥ ó¶E¡Ë@¥ úáG®@¥ ó¶E¡Ë@¥ ölô!@¥ ó¶E¡Ë@¥ ôêJ@¥ ó¶E¡Ë@¥ óœ¾à@¥ ó¶E¡Ë@¥ ó¶E¡Ë@¥ ó¶E¡Ë@¥ óŽóMj@¢mž¸Që…@¢m£n—@¢mž¸Që…@¢m/Ÿ¾@¢mž¸Që…@¢mš’£S@¢mž¸Që…@¢mœ„µÜÆ@¢mž¸Që…@¢mž5?|î@¢mž¸Që…@¢mœ‘ÑN<@7rÃÉîËû@7n!–R½<@18r° Äœ@16ð¸º@0gKƧïž@0eýŠÚ¹õ@/ +#9Àëî@/Ë’:*@/ +#9Àëî@/ö”Fs@/ +#9Àëî@/l‹C•?…ÅBðrç?äm°û0Ž?‘ñê&ètä?‹ÝÉ!ë#?‘; ÷^?‘<ƒÜ_õ?”¼íÒh??’#maЀ?‘†£„Â?ø,~[´?‘+ùÔ!½‹?‘ÔÄ÷Õ?¢tñÓu?Žƒä%®æ2?„m~Z_s,?…<ò N ?‡æê7²zE?‡gϵ’õ@@@@@(@*?ð?ð?ð?ð?ð?ð¿[ÆõŠ,¿RÜ.Ü?@Ï›Pƒ?C)þ€åÉ@¥ õtXw@¢mž| y8?`7‰µQ ý?`jÏuB}?ÂöT™¹-?º{=ä¦@Ÿl$NßM@[@¢™n—Oß@¢™mÒñ©ü@¢™n—Oß@¢™nÞÜnú@¢™n—Oß@¢™q³ÓÃ>@¢™n—Oß@¢™o¬ÕË@¢™n—Oß@¢™j cr[@¢™n—Oß@¢™lJSö%@—RH´9X@—RE¡ÊÀƒ@—RH´9X@—RRf{@—RH´9X@—Rd°‡Ï@—RH´9X@—R\¾Ù…+@—RH´9X@—R\Â:q@4Q|ÚQ@4N¸?•´ò@0ã÷ÎÙ‡@0ãCkˆ@0±‰7Kƨ@0²µ‡@/QÑN;Í6@/T_Ù§J@/QÑN;Í6@/K‹í`E@/QÑN;Í6@/L ÀÕj/?}õ¬#„­?¢3²…ß?‘FÐUï.Á?ŽzMŠ•´¹?‘Ž\d²?‘\Ãò¦(?„`™ˆ/.~?’M´\]È?XÐè.?’¶?hÜÆ?‘ŒYF·"ô?˜í@¡ØÇ?#ÓA™þÜ?„¤±ÀÖ?Žõ:Ûë>æ?ˆ9D7?ˆ +¢÷͉{?ˆñá+¬¿r@@&@@&@8@7?ð?ð?ð?ð?ð?ð¿8ž£’À?fJ¶ b€?@4ç&rYT?Q„Þdi@¢™m%âÍ@—RTS0i#?`ËN'à»Î?q˜´§JýU?Ê)²Bdκ?çDŠ©‹X@ŸhB§¯™@\@¯¡úáG®@¯¡ûdZ¬@¯¡úáG®Á.„€@¯¡úáG®Á.„€@¯¡úáG®Á.„€@¯¡úáG®Á.„€@¯¡úáG®Á.„€@¯F“t¼j@¯F“t¼j@¯F“t¼jÁ.„€@¯F“t¼jÁ.„€@¯F“t¼jÁ.„€@¯F“t¼jÁ.„€@¯F“t¼jÁ.„€@1šÔ,<Ÿ@1µ 'º@/.V“tÁ.„M‰ûçm@/&éxÔþÁ.„QnÙ‡@.zÇË)_Á.„NÜC,¥@.zÇË)_Á.„NÜC,¥@.zÇË)_Á.„NÜC,¥?É^òÀXæN@8#˜@8¾:@8 >+@8Iç@8Ù?ÐbMçê_x@8Î÷@8i§@8Å@8S@8û—?€j|î–éë@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø]@­JÒñ©ûç@­Jê=p£Ø@­JÒñ©ûçÁ.„€@­JÒñ©ûçÁ.„€@­JÒñ©ûçÁ.„€@­JÒñ©ûçÁ.„€@­JÒñ©ûçÁ.„€@¬7®zá@¬73332@¬7®záÁ.„€@¬7®záÁ.„€@¬7®záÁ.„€@¬7®záÁ.„€@¬7®záÁ.„€@7ëµsê´@7ÀÞÒˆÎp@4—+ IºÁ.„M‰ûçm@4gKƧïžÁ.„QnÙ‡@3¦YJôðØÁ.„NÜC,¥@3¦YJôðØÁ.„NÜC,¥@3¦YJôðØÁ.„NÜC,¥?„F/·ÿP5@8#˜@8¾:@8 >+@8Iç@8Ù?„F/·ÿP5@8Î÷@8i§@8Å@8S@8û—?Œ*Ñ¿°Ö@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø^@§ò:^5?}@§ò:^5?}@§ò:^5?}@§ò;dZ¬@§ò:^5?}@§ò;/ìVÖ@§ò:^5?}@§ò;šu@§ò:^5?}@§ò9JôðØ@§ò:^5?}@§ò9‡+@A¥ãSø@A§/ŒÓ@A¥ãSø@AQÎ@A¥ãSø@A¹õY´@A¥ãSø@AquŽ#@A¥ãSø@A¬1@A¥ãSø@AŸ¾vÉ@.àhÛ‹¬r@.à[À6â@,MV“@,M:’£@,&éxÔþ@,‰ 'RU@+kjçÕfÐ@+k6z—@+kjçÕfÐ@+k]ÌcñB@+kjçÕfÐ@+k6z–?É^ž6õP?Ì&ÏøHÃ?‘"žæÆó¡?‹ª½¨ª8v?ôê÷º»â?ºª$Ð?ÐbMçµ7§?’ +‰¸Ì?ˆ9²0?6) }’ë?Ö§­îQD?Uÿyu”#?€bMÔŠ»?Œ°¶.Ä+Æ?‚yî8Á$?‚æÊ¬vã?†½ª»—?†’Õaì+’@@@@@*@(?ð?ð?ð?ð?ð?ð¿L¤×t¿)OÂT?-=¿6õ?#e×ÝÖ8@§ò9ïWSØ@AÉLEN?<"$Wf Î?2[€eêÎ?snY·¥Ì?]‚ßÙý½½@ŸsƒÕ„l@_@¢Pj~ùÛ#@¢Pi­BÃÊ@¢Pj~ùÛ#@¢Phn¢Ó@¢Pj~ùÛ#@¢Pc{C¤·@¢Pj~ùÛ#@¢P`€RÐv@¢Pj~ùÛ#@¢P_â×Õ@¢Pj~ùÛ#@¢P_x!@—2["Ðå`@—2Z¬1@—2["Ðå`@—2l†˜~¡@—2["Ðå`@—2i­|õ@—2["Ðå`@—2m0¢–@—2["Ðå`@—2jEJÅ@—2["Ðå`@—2~'Ž(/@42ÃÉîËû@41‰Õ@05ãS÷ÎÙ@0/ɾÓN@.ÉxÔýó¶@.½ÖZ¯Áà@.p‰ 'RU@._kç-8@.p‰ 'RU@.`3­÷-@.p‰ 'RU@.`USsË?|çµB &€?ےب@?’Š [ Ëð?‘W‚Åó/¸?‘¬š»-)?’dpÅ +”#?}@T˜ÁÎ¥?“ûS¯êx=?“Ô/à¤JF?‘öÜ~† À?‘¯¼ÃM?ç7_“º]?„9¨Ã¿ÅC?ŒÊñï 5™?‚ûÿû‚ÜK?ƒ\ÖàñX§?†ØøÅ¾¡?†¥<ï˜à@@$@*@(@9@6?ð?ð?ð?ð?ð?ð¿cÐ^¡¨?iÒaˆÏ?9c››6µ?DwMÈP±@¢PdSÈ—@—2gj¯n?YŒyø ’?dÔïžšïò?¾Çž³hÄT?Õ5MTü@Ÿf‹¹ÝìU@`@£·Á$Ý/@£·ÀA‰7L@£·Á$Ý/@£·¡@N¥@£·Á$Ý/@£·•Â\)@£·Á$Ý/@£·©Ô•+@£·Á$Ý/@£·…zxl!@£·Á$Ý/@£·\ú¬Ú@¢ÄyXbN@¢Ä{çl‹D@¢ÄyXbN@¢Ä´êJŒ@¢ÄyXbN@¢Äº¬1@¢ÄyXbN@¢Ä·KƧð@¢ÄyXbN@¢Ä¡‰7KÇ@¢ÄyXbN@¢Ä—ÎÙ‡@7eöý!ÿ.@7`A‰7KÆ@30Ä›¥ãT@3+²þÅm]@2Ÿ²-V@2“33333@2?ò䎊r@24Ö¡aäø@2?ò䎊r@2Ov_Ø®@2?ò䎊r@2!hr° Å? Eˆ‡ðó‹?¥ÒëÞñç?¯KúvBrq?žéQÁö£?ªxàôTl?±4tDÈ?¬å'[ V÷?¥ÜH‚޶S?¦¾DXLa?™ž×=§‘Ã?±ê®Ä6?§…[aÍ,?¤qb“³îÐ?”~ªd•?ŸÛð°|°?•ˆ°ùjõ?¤gTÐ?«Ã±Rõš@@@@@*@*?ð?ð?ð?ð?ð?𿇦4—N€?kØ6…ó?h-´$æ?…*:1ýj[@£·£>/‰X@¢Ä¨'Vt?…x š4V?œÃ,Ùk˜"?à€ ùÌØ«@)[±²?v@Ÿjì?‡L8õASÎ?Œ¸ðËb@@@@@*@,?ð?ð?ð?ð?ð?ð¿DJ->œ?9Rù?J¯õg€?,ü£¯µ¨@ª¬ÙM'Õº@¨‹µùj?iÎý­y +×?LT3ãQÌŒ?ÝþûÅæô;?¢…;Åö¾€@ŸeÎÕ·@@b@§Y‡+@§["Ðå`@§Y‡+@§Q&éxÕ@§Y‡+@§Zxl"h@§Y‡+@§T¼@§Y‡+@§`ªdÂù@§Y‡+@§`ù kº@®Ý¶E¡ÊÁ@®ÝŸ|í‘h@®Ý¶E¡ÊÁ@®Ý¸bMÓ@®Ý¶E¡ÊÁ@®Ý´•*™@®Ý¶E¡ÊÁ@®Ýºxl"h@®Ý¶E¡ÊÁ@®Ý°‰ 'S@®Ý¶E¡ÊÁ@®Ý° Ä›¦@8›¹Œ~($@8˜*™0¾@3ÜIº^5?@3Û"Ðå`A@3Z~ùÛ"Ñ@3b Iº^5@2¦YJôðØ@2¥ýŠÚ¹ö@2¦YJôðØ@2©Û"Ðå`@2¦YJôðØ@2ªÍžƒä&?©Ùƒ|ËI?Eˆ‡ðó‹?“u*y?ŽÝ¡uÒ(r?’°STðS?–®UÒ.?¶Ú·Œò¸›?“¶†ÿê¡?‘Ç€˜­r?™š®ØŽ?’W;„zY?’9ñ9¶ò8?¯k [þXœ?–ÞqëJ?? mÖ¿tE?Šc^î½)Ô?^²®':Ì?‰]³ß’Ý@@@@@@?ð?ð?ð?ð?ð?ð?pLÆUV€¿_Ë"¨?eIo ÷q?iL·›íÈÀ@§[e>üq@®Ý³YÓE?wø­x76£?zþª|èÊ?å¡éa"öô?âjõÔáþˆ@Ÿq¦ˆemÓ@c@®© Iº^5@®© ‹C•@®© Iº^5@®© 85Kõ@®© Iº^5@®© ìAÝ@®© Iº^5@®© ¸»€1@®© Iº^5@®© +–—Ç@®© Iº^5@®© +”xÈi@šJúáG®@šJûçl‹D@šJúáG®@šJþ,¡ç@šJúáG®@šJþ«6z@šJúáG®@šJý‹Ü!X@šJúáG®@šJþvHˆ@šJúáG®@šJþâÑ5@1ò䎊@1 Iº^6@-)7KƧï@-'¤2ýöð@+ØÔýó¶F@+×%Bв@*ÑÑN;Í6@*Ï´¯n<@*ÑÑN;Í6@*ÏâóäO@*ÑÑN;Í6@*ÏØ­«ŸV?É^¨¯Âj?ÅŠXãF?‘Y–(™?‹¬Ó¯c[?èíò=?¸Zw—?ÐbMÝn½?’òBlÂ9?~J€ßÂÂ?5e’Òåi?Òh‘›1?P·?sFÉ?€bMÕ]f?Œ®JE‘—O?‚r—Ge?‚å¬C>¥’?†‰~±.?†‰ýçïe@@(@&@&@4@3?ð?ð?ð?ð?ð?ð¿P¤6?3JQØ2?4 jå8'‚>üýòzg)@®© rí¶J@šJþ9G ?CF·Ä‡G1? +’–ú»¿??‚F)Ð;Â?øb8¹W@Ÿs|èlE@d@ª E¡ÊÀƒÁ.„€@ª E¡ÊÀƒ@ª M¸ºÇ@ª E¡ÊÀƒ@ª KjçÕh@ª E¡ÊÀƒ@ª G ù k@ª E¡ÊÀƒÁ.„€@ª E¡ÊÀƒ@ª HÎp:û@:Që…¸Á.„€@:Që…¸@:^¸Që…@:Që…¸@:Tã¼Ó[@:Që…¸@:dZ¬@:Që…¸Á.„€@:Që…¸@:Xâe-@904mÅÖ8Á.„>¤µÜÆ@3¦‡+ J@3µfÏAò@2È“t¼j@2ÑohÛŒ@2ý!ÿ.I@2#MjP@2ý!ÿ.IÁ.„NÜC,¥@2ý!ÿ.I@2Š Þ@8J¨?ž5JÜà ä?¥”Ïåª?ª©¹(4@8Iç?˜úiêÔÇ@8J¨?¡^VÖ‹? PÇ´âþ?¥swŽ)Ò@8S?”…®«øÄ*@8p÷?˜”Ò91Äa?¡è™è;?¡~l’VoŸ@8 Ø?¾Á{þÆ%@@@@*?ð?ð?ð?ðøøøøøøøøøøøøe@«£å`A‰7@«£âÐå`C@«£å`A‰7@«£âÃÉîÌ@«£å`A‰7@«£ÝæšÔ,@«£å`A‰7@«£å+ÓÃ`@«£å`A‰7@«£ÞÒˆÎp@«£å`A‰7@«£â3œ¾@¢û{Ñø~?•OÞúç*»?›°Í`]u?„E£R ÕY?Œ˜ˆTÙ8ª?qÂ' +Bœ@@@@@*@(?ð?ð?ð?ð?ð?ð¿R!ž?@?Y„¶A?UOœá¦µá?[dŽ×¬ò-@«£âîžÈ0@¢+@8Iç@8Ù?ŽÕQp Î@8Î÷@8i§@8Å@8S@8û—?‚’¤I å@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøg@ •çl‹C–@ •æéxÔþ@ •çl‹C–@ •ëœØr@ •çl‹C–@ •ìÙ°Oæ@ •çl‹C–@ •ê& +@ •çl‹C–@ •ãZT ‰@ •çl‹C–@ •áꡉ)@­DÛ"Ðå`@­DÚŸ¾vÉ@­DÛ"Ðå`@­Dàí‡-‘@­DÛ"Ðå`@­DÜ¿À™ï@­DÛ"Ðå`@­DÚÎþÿ©@­DÛ"Ðå`@­D×pfäÏ@­DÛ"Ðå`@­DÖ`I;Í@3ºqÞi­C@3ºzJHù@0 +^5?|î@0 )8‡@/IxÔýó¶@/OWÌût@-Âu%F +§@-Ä{4-ß@-Âu%F +§@-ÀŽŒv©@-Âu%F +§@-½âøƒÀ?}@T˜ÁÎ¥? ‡iÙƒ?‘­’¦,-?‹Üðî]\8?‘~ãG /Ã?ÿ*O˜ðö?|¬Çq—ô?’m3 +V—?‘üNadL?9É>ÿÝ+?‘Ÿ-§ðxH?|®¡}öÍ?‚pDøïRg?ç µE€?ƒÀam#êæ?ƒ­KÀ?‡ä>ô=á?†Â¿bçø@@"@(@"@6@1?ð?ð?ð?ð?ð?ð¿DíO|d¿HDh?Ix;L"Í–?2ªuñ—au@ •æ + p @­DÙ1ÕË?iA±êŸš?Rýf œÛ?àìA'Š)R?²yØßÉñ·@ŸfÞa?X@h@¯(S÷ÎÙ@¯(Y™™™›@¯(S÷ÎÙ@¯(P Ä›¦@¯(S÷ÎÙ@¯(E‡“ݘ@¯(S÷ÎÙ@¯(MBÃÉï@¯(S÷ÎÙ@¯(K¹Œ~(@¯(S÷ÎÙ@¯(OiDg7@¥» Ä›¥ã@¥»ºáG®@¥» Ä›¥ã@¥»¤Ý/ @¥» Ä›¥ã@¥»¦$Ý/@¥» Ä›¥ã@¥»¨è§ç@¥» Ä›¥ã@¥»§E8ï5@¥» Ä›¥ã@¥»¦s×Ü@8^Hè§æ@8VâëC,@3c÷ÎÙ‡@3b×sü@2´“t¼j@2¶»˜Çâ‚@1ó&Á½¥@1ñ$Ý/@1ó&Á½¥@1𖻘Çã@1ó&Á½¥@1ðÄ›¥ãT?€‚ñêã ?‘U «¼é¥?™_*®k?³ÍŒ™¡?“>û{Ñø~?“ d?¦Ï±úQm‡?•ÞèI1Æ@?•bZèS?’:u.ý ?’LÁŒÀ´a?“‚í?eBZ?…cü›Š×Õ?ª‚eûƒ+?¨€OìØ¯i?Š­®f¥?ˆ”Tj«›ª?‡´*žZ}Õ@@@@@(@,?ð?ð?ð?ð?ð?ð¿gà|P.¿hð4)€?NlƒzZŒ?WåCCèš@¯(O¤^uB@¥»©É×o?sC˜ š?m‚ÅGtý?ãbåÒ×Ê?̽óI?t@Ÿnë÷Ùµ5@i@£/— +=p¤Á.„€@£/— +=p¤@£/„­‹à@£/— +=p¤@£/ªÁ@£/— +=p¤@£/‡Ûí@£/— +=p¤@£/~\‘ÑN@£/— +=p¤@£/a²ÄO¹@—µ?|í‘Á.„€@—µ?|í‘@—§X)Ý:@—µ?|í‘@—•$V@—µ?|í‘@—ͺ¤@—µ?|í‘@—³¶E¡Ë@—µ?|í‘@—™Aâ@9*0U2bÁ.„>¤µÜÆ@45ãS÷ÎÙ@4OIøp8@3]V”@3^G¢‡µ©@3fYJôðØ@3‡²OÃøl@3fYJôðØ@3{=ÈK^@3fYJôðØ@3‰¼íÏÉ@8J¨?”§ŒkG Î?‘œvï8Å?¢„J®³k?±J¶‰jcJ?ªãGX%Õ•@8J¨?¡µ%3G·h?‘jyÅå ?¤vÕAŠ´¤µÜÆ@3@ Ä›¥ã@37+ Iº@2A‰7KÇ@2‚þÅm\û@2\ÚQÎ@24ohÜ@2\ÚQÎ@27ü¹#¢@2\ÚQÎ@25?|í‘i@8J¨? yÅ´­½?¤øË&“1*?¸£ï9£ÖÙ?²Â—0ŒIô?¦£@óiÖ@8J¨?”” +=¤µÜÆ@4¦‡+ JÁ.„M‰ûçm@3¾V“uÁ.„QnÙ‡@3 +0U2a|Á.„NÜC,¥@3 +0U2a|Á.„NÜC,¥@3 +0U2a|Á.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøøl@¥"k…¸R@¥"\‰•®@¥"k…¸RÁ.„€@¥"k…¸RÁ.„€@¥"k…¸RÁ.„€@¥"k…¸RÁ.„€@¥"k…¸RÁ.„€@”R£× +=q@”R¦ffff@”R£× +=qÁ.„€@”R£× +=qÁ.„€@”R£× +=qÁ.„€@”R£× +=qÁ.„€@”R£× +=qÁ.„€@8?–»˜È@8=‘hr° @5‡ÎÙ‡+Á.„M‰ûçm@5{Ƨï²Á.„QnÙ‡@4øDЩ*Á.„NÜC,¥@4øDЩ*Á.„NÜC,¥@4øDЩ*Á.„NÜC,¥?¥¢É@8#˜@8¾:@8 >+@8Iç@8Ù?¬Ó!æÀXW@8Î÷@8i§@8Å@8S@8û—?„“‘1zz@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøm@¨H§ï²@¨H®zá@¨H§ï²@¨Gÿ¥bù@¨H§ï²@¨HH,³T@¨H§ï²@¨GþW”2n@¨H§ï²@¨HÖ*ûJ@¨H§ï²@¨GùÔ$ð„@•Âçl‹C–@•ÂïärC@•Âçl‹C–@•ÃgV{/@•Âçl‹C–@•ÃÊCX@•Âçl‹C–@•ÃÃjyZ@•Âçl‹C–@•ÂâH-¨@•Âçl‹C–@•Ãd+LR@7‰Î_oÒ@7…²c  6@3=‘hr° @3: w$@2§KƧïž@2Ÿ{­@2mÅÖ8†@2 Æ÷b6@2mÅÖ8†@2Is¿(Û@2mÅÖ8†@1þGGO ¦?›´q”¸æ-?QD™¯P™?”®O–|½[?y:܆Á&?’ó8Ä„V?ø¨¥ãn^?ˆ5îå9WÐ?”/£ÆÀan?’v£…Ë›1?‘`%Ò-dE?“&iÊÛç?‘ª~úq_ª?‚…wßGÜÒ?•Ò=ßë?ƒªOí e?„– ê@Þ?‹?¥¢!?‘V]ÍÅÒ@@(@,@*@:@4?ð?ð?ð?ð?ð?ð¿^m¾¤?g½C&€?dÞÜ>!‹I?h9M @¨HPý&@•Âÿ@H®©?€¤)à?‰ÑŒï™s?õÚ°1Ô±!@†çùv¿ +@Ÿmiôj.ì@n@¬r>vÈ´9@¬r>vÈ´9@¬r>vÈ´9@¬r?HË’@¬r>vÈ´9@¬rAG®{@¬r>vÈ´9@¬r>ÿ—#@¬r>vÈ´9@¬r=Ùb·@¬r>vÈ´9@¬r9Û"Ðæ@®­‘hr°@®®—Oß@®­‘hr°@®²¼£@®­‘hr°@®¨r° Å@®­‘hr°@®°¾ í*@®­‘hr°@®¯\(õÃ@®­‘hr°@®¬¥zxk@7«µsê´@7¦Ü]cˆf@3‚° Ä›¦@3‚-V@3å`A‰7@3N¤¨ÁU@1s&Á½¥@1r£S&@1s&Á½¥@1rø7´¢4@1s&Á½¥@1sZ…‡“Þ?3ßa=„?‘" Á°–•?•Mq —¦?=]. ?’(æ„+Zk?Êëüâi{?‚á²Olºü?–÷-A?’ã0eʪv?‘M –=?’£ôùÎ8ï?‘¡ë Þf?º f +¦?‘S1Êz?þ‡ÿítº?%üížñ˜@­ƒÕ½Ú;Æ@”d3Û¬À? j£1* ?Cœa oä?D¯aû:áJ?„ŸêÑ7Š@Ÿkb|Kð@q@¨þ ÌÌÌÍ@¨ýû¥ãSø@¨þ ÌÌÌÍ@¨þªÍžƒ@¨þ ÌÌÌÍ@¨þ  'RT@¨þ ÌÌÌÍ@¨þ “ àß@¨þ ÌÌÌÍ@¨þ +=p£×@¨þ ÌÌÌÍ@¨ýüàuöü@©"MÒñª@©í‘hs@©"MÒñª@© -à @©"MÒñª@©!G®{@©"MÒñª@©64@©"MÒñª@©vÈ´9@©"MÒñª@©)­BÃÉ@8T xFÜ@8^šu@3Ô›¥ãSø@3Ô“t¼j@3"-V@3Ÿ¾vÉ@2Œ~($ @2“ àÞÓ@2Œ~($ @21&éy@2Œ~($ @2‡ü¹#¢?|öOÿÝ?–MSMÓ®¬?““¶”ÿµb?¨•Ù?’o?P´À?•iá¸OL™?‡YÍ_?˜s˜»ì•?’ÖsÄÖ?•GÝóuS—?’¯dL¶t?˜—àÌÛÆ;?©ÏT8¨L?¬HO?…™ï ufÞ?„•ˆG’Z¾?Š`½i=ÓØ?‹Ûx§Þ@@@@@(@(?ð?ð?ð?ð?ð?ð?co`Èø?V/ŽŠ?\`ÊöÅ·R?R,?EÀ +@¨þÀÀˆJ@©9)ÿµ?|ÅìÖÃD¾?qøéæ "¸@øÂ!$B?áO[Q)=Ò@Ÿgt0÷3@r@ªÚŸ¾vÉ@ªÛ¥ãSø@ªÚŸ¾vÉ@ªÛ¥ãSø@ªÚŸ¾vÉ@ªÜÚQ@ªÚŸ¾vÉ@ªÛ²þÅm@ªÚŸ¾vÉ@ªÚ)Çy§@ªÚŸ¾vÉ@ªÙÎ_p@¥¢TzáG®@¥¢U?|í‘@¥¢TzáG®@¥¢TðØDÐ@¥¢TzáG®@¥¢S÷ÎÙ@¥¢TzáG®@¥¢St¼j€@¥¢TzáG®@¥¢TmÅÖ9@¥¢TzáG®@¥¢TFsØ@52ÃÉîËû@53ŽóMj@0›¥ãSø@0tSŽóM@.ØÔýó¶F@.×ö+jçÖ@.oi@.ŽŠqÞj@.oi@.œàu÷@.oi@.µÜÆ??€‚ñêã ?Úþþ³?‘&Øç?‘?‹ÑqÔ@vÿ?éDEâ©×?ÛF»0?|öOÿÝ?’MœœN ?»Þ‹"è?ð{¥âdû?Ìp®eÔ¾?ˆ9²0?„›‹ÖO?ŒÂ§dß±?‚˜YªüÏF?ƒ*|š\/´?†¼Š˜L¥÷?†µ°jÆÃ@@@@@@,?ð?ð?ð?ð?ð?ð¿5þ=п0`*h?"ïW¶¢¿8?"Õï G¶e@ªÛ Ú½¥@¥¢T›n¥N?BÃ[ÎvaF?C}ªíX‰¦?‘gàg â?’츨s9@ŸgxÚ±B6@s@ ~•%@ ~#œ­@ ~•%@ }ÿw¯d@ ~•%@ ~ {3O@ ~•%@ ~QÊo‚@ ~•%@ }ôÂxóâ@ ~•%@ }ú ½¥È@®¢Ö“u@®¢ÖÈ´9W@®¢Ö“u@®¢Ñ“‹/@®¢Ö“u@®¢Ê£A‚@®¢Ö“u@®¢Ïž4¹@®¢Ö“u@®¢Û&ZWŸ@®¢Ö“u@®¢Ó¡}@7쿱[X@7»¬¢ÀZ@4n5?|í‘@4j-FT9è@3¢-V@3£0|Ÿåo@35µsê³h@32Õ)«‹ì@35µsê³h@32qQm°,@35µsê³h@30¹D²F?…ðE[i)?‘ Ùâ}Ù2°ú?”Ûàªj†?@#÷r)Û?’·Äš"Ö]?—¬ž†åÖ?„g¤´õÞ…?“ø£Ú<ž?”`‘±…£¾?„\oXe=?ºÕâ_?àãÇ ®@@"@&@"@,@.?ð?ð?ð?ð?ð?ð¿Vôú¿2snü?X9´­XL?UÚÛL)™@ }ýýy¦@®¢Õ}ãŠ?w+ ‘?uœ˜—õY[?òƒξQ’?Ç@Ÿh,Ó£õ@t@¯UÀ@¯U–È´9Y@¯UÀ@¯UÀA‰7M@¯UÀ@¯U͸ºÇ@¯UÀ@¯U³ àÞÓ@¯UÀ@¯UǓݗö@¯UÀ@¯UÄÂø7¶@§øp Ä›¦@§øp Ä›¦@§øp Ä›¦@§øT¢3œ@§øp Ä›¦@§øL˜_@§øp Ä›¦@§øn}Vlô@§øp Ä›¦@§øo „M@§øp Ä›¦@§øgE8ï5@7wâ‚@·€@71 ²•éâ@4|í‘hr@3ÿHË’:@3éÛ"Ðå`@3¿ „M;@3O „M@3GE8ï5@3O „M@3Îp:û~@3O „M@3 …¸Qì?·à¦_ëý? 5)ZS?¦ÛiÕüaÚ?ŽÝ¡uÒ(r?™uçT5Ï?šèïdË?¥Ìõ}êáþ?©CÍ`ß•Ï?±ÃÅÿÔg´?“ÅëJkÙ?šS³Šßs·?£sUEªk?  0G +-?£Æ×q„nï?Ó ¾îóô?œ?§ê¸]&?—v‡ãÃ6œ?ž„ýŸÒ`Ø@@@@@*@*?ð?ð?ð?ð?ð?ð?ƒF´Ø€¿T]áE ?gffpa^?Q¹õ])- +@¯U¹Ÿ¬€@§øm¡âwè?wIÊÓ7¡?f™álRý^?ßU’MŽ ?µL`‚rº@ŸoL=˜T@u@¡<ØbMÓ@¡<×Oß;@¡<ØbMÓ@¡<Û"Ðå`@¡<ØbMÓ@¡<ÙrGE9@¡<ØbMÓ@¡<ÙÀëíú@¡<ØbMÓ@¡<×Á½¥@¡<ØbMÓ@¡<×eýŠÜ@­óE¸Qì@­óEãS÷Î@­óE¸Qì@­óD2ÊW§@­óE¸Qì@­óDtSŽô@­óE¸Qì@­óE`A‰7@­óE¸Qì@­óE¡ÊÀƒ@­óE¸Qì@­óEœàv@5µS&Á¾@5µ+ÓÃa@25ãS÷ÎÙ@25Â\(ö@0éÛ"Ðå`@0ê)Çy¦µ@0–ý!ÿ.I@0—y¦µ @0–ý!ÿ.I@0—†Â&€ž@0–ý!ÿ.I@0— ù kº?}Ñ¿ž,?jú‚<·™?‘&Øç?‘?‹Æ úJ-M?‘oNÅ’+?‘W×ý°A?„F/·ÿP5?’§ioŠ?§^ ÿo˜?K·‘d]?‘ÞIŸö?‘A_f;j?‚‹¡8*ùÿ?3ßa=„?„W;RT?ƒiñj6Â?‡?®\Âä?‡<û¡71@@@@@*@,?ð?ð?ð?ð?ð?ð? ±ëà¿!ÅÌa`?3£ƒ ¿? +­˜8”Yd@¡<Ø×&@­óELß5?TKÈʼØ?*ÂÓ°0†?³”Q®^a:?\@rãç4l@ŸhEgûkº@v@©|9Û"Ðå@©|:^5?}@©|9Û"Ðå@©|9XbM@©|9Û"Ðå@©|;quŽ!@©|9Û"Ðå@©|:^5?|@©|9Û"Ðå@©|8“t¼j@©|9Û"Ðå@©|8“t¼j@¡ÓŒÌÌÌÍ@¡ÓŒIº^5@¡ÓŒÌÌÌÍ@¡ÓŠ0U2`@¡ÓŒÌÌÌÍ@¡Ó‰ÞÒ@¡ÓŒÌÌÌÍ@¡Ó‡Ë)_@¡ÓŒÌÌÌÍ@¡ÓOß;e@¡ÓŒÌÌÌÍ@¡ÓŒ"h Õ@4Û¹Œ~($@4Û6z—@2+ Iº@2süPH@1éÛ"Ðå`@1êŒL˜_@1‡ ù kº@1ˆXy=Ù€@1‡ ù kº@1ˆË’:*@1‡ ù kº@1ˆ>BZîc?|¬Çëý ?Æ +×?“%HCâ=s?ŒArUã@?’ðä¼_?‘À?ÙÂ#’?|¬Çëý ?“‚Û£0Τ?“®ÂrVŽx?£û,Ɇ?’l{9ÙŽ?ó‹P=´?‚§W®ê ?R©i»èi?ƒ{¬ÉW?ƒ¼9XNÄu?ˆ©{2¡Î?‡v>ª¸ @@@@@,@*?ð?ð?ð?ð?ð?ð¿5’Ë ¿'ĶÐ?#·ºÙ +?E2ʤª2@©|9¿:ó©@¡Ó‹•dƒã?BÊ.vH½?eléÀÁü?’o±öæ?ÖÍaÂZÃ@ŸfŠ›ì @w@¯u Ä›¥ã@¯u£× +=r@¯u Ä›¥ã@¯uœ£n.@¯u Ä›¥ã@¯uŸö”E@¯u Ä›¥ã@¯u¢u%F @¯u Ä›¥ã@¯užÒˆÎp@¯u Ä›¥ã@¯užš@­Š‡+ J@­Š„Z¬@­Š‡+ J@­Š†Â&€@­Š‡+ J@­Š‚ÃÉîË@­Š‡+ J@­Š«ŸU›@­Š‡+ J@­Šz¹õY´@­Š‡+ J@­Š¾vÈ´@6wâ‚@·€@6zQÎ`@3ý‘hr° @3øŒç¯¸@3ÐA‰7KÇ@3ÆšÔ,<Ÿ@3zÔ,<ží@3g +=p£×@3zÔ,<ží@3sS&Â@3zÔ,<ží@3pÑ·Xâ?…ÅBðrç?•QÂ^ø™?Ÿ Y—ü"©?“zRÈUÄ?š<¨¸ÆÐ?™?‰¢Ù~?žˆ2}?”ºu(†¼¦?žsô`_7?¡Ð`HÇi?—÷Ë5D«ç?™J•Ø3ÈÖ?–uDJ‘`º?3ßa=„?’úz."?Œ(æQ?„å;m7.?ùDâΊ@@@@@(@*?ð?ð?ð?ð?ð?ð¿QÈì$¿SÚõ€?0°HÙ^›ý?T@j û@¯u¡ÁNr•@­Š‚’~§?PÏüã?t¸Ly¤y?š€e–^?åRJª Q-@Ÿf¹ˆaT@x@¤6º^5?}@¤6º¬1@¤6º^5?}@¤6¶¶ùºF@¤6º^5?}@¤6·m?th@¤6º^5?}@¤6·ÄÍyñ@¤6º^5?}@¤6¸‹0í@¤6º^5?}@¤6¸ñYù@“Ó˜“t¼j@“Ó˜”ÀõE@“Ó˜“t¼j@“Ó–Ö‹zü@“Ó˜“t¼j@“Ó…6üŸî@“Ó˜“t¼j@“Ó‹Õû94@“Ó˜“t¼j@“Ó‘åÇÐI@“Ó˜“t¼j@“Ó‘/Ý3â@3Bò䎊@3Aò×s@.Çï²-@.Â`ÐÔ@.E¡ÊÀƒ@.‚ï—;»@,¸7´¢3œ@,¸Úøÿ@,¸7´¢3œ@,¹P jØ@,¸7´¢3œ@,´èY½««6z@6Æý!ÿ.I@2R Iº^5@2O±[W>«@1’Ðå`A‰@1ó¶E¡Ë@0øDЩ*@0ûP°ò{³@0øDЩ*@0ðÑ·Xâ@0øDЩ*@0ñ–R½<6?€‚ñêã ?’Z†Aži?œrôeEÜ? Í‹hÆ?•Ô¦?n¸?•Þ©qk#?€‚ñêã ?”Ô„÷ËD?™”uÀdª?‘Nw]6»ô?šH¾O”?˜„AP0P?‰~}œ…o^?•cKç4+?•ë þÅ?…âC£½¾Ý?Š*ÊÔQãú?^²®':Ì@@@@@,@*?ð?ð?ð?ð?ð?ð¿aA’?7xîÕ ?@ ½íÑRê?1|ÅBû~ê@¨]tL[¡–@«¿ØÔÊÔ?^¨‹àí­9?P²Õ¿ð“?‘$å¤e?¢/°à-Î@Ÿe¶² Â@z@¥´å`A‰7@¥µ¥ãSø@¥´å`A‰7@¥´Ôã¼Ó[@¥´å`A‰7@¥´ïiDg8@¥´å`A‰7@¥´óÝ—ö*@¥´å`A‰7@¥´Î}Vlô@¥´å`A‰7@¥´À4mÅ×@¦Dj~ùÛ#@¦DwOß;@¦Dj~ùÛ#@¦Dƒ¯·é@¦Dj~ùÛ#@¦D²×sü@¦Dj~ùÛ#@¦DÏìVÕÐ@¦Dj~ùÛ#@¦D™™™™š@¦Dj~ùÛ#@¦Dž¸Që…@7½:’£@7ŠçÕfÏB@3#÷ÎÙ‡@3 í(Œç@3A‰7KÇ@3©*0U2b@1Þ«6z‘@1£þ\‘ÑN@1Þ«6z‘@1±Þi­BÄ@1Þ«6z‘@1±ÑN;Í6?Í2ŸÑ²?§¿u‚3?Âù©d×î?¹HÂåõ?¶þþU«x&?²ìdEmc? Eˆ‡ðó‹?¯¸? ¨ì]?ÀÔ¤õ€«?ÈghæEËH?·¸ÀNî?x?µAáCH)?×kµãÀ¤?¢ÇWiR’½?¬ xGœ÷?š‹ˆe´?¤€3¼¾BÁ?±NKîôÛ—@@@@@&@&?ð?ð?ð?ð?ð?ð¿”ÐÇê?‚! +Þ€?dd sbE?nFR¥”Äþ@¥´ÞËq@¦D–fÏþJ?zn¹“dÏ?–w}þ-Ì]?ŸÙyùFcž?ÜìdÃ$ ¹@Ÿpx`MdW@{@¨{çl‹D@¨{çl‹D@¨{çl‹D@¨|‘…cÿ@¨{çl‹D@¨}šóY@¨{çl‹D@¨|í‘hs@¨{çl‹D@¨{,Ôö +@¨{çl‹D@¨{oOu@“G´9Xb@“G´9Xb@“G´9Xb@“G´w:(@“G´9Xb@“G³”b•o@“G´9Xb@“G´<’í@“G´9Xb@“G´‡ü¹$@“G´9Xb@“G´FsØ@-Q ²•éâ@-Q ²•éâ@)Gï²-@)Gï²-@'òn—Oß@'ò{²þÅm@'ÑÑN;Í6@'Ñί%@'ÑÑN;Í6@'ÑÁðD˜@'ÑÑN;Í6@'ÑÄ2ÊW¨?É^ž6õP?Ç·ñ5“‘?‘c“Ô?‹¦ à:?æä®½·Ó?³fË`??ÐbMÝn½?’ + žž•…?}PIÕ—?-ôö²-?ÌÑ3éVO?KmH¯ôY?€bMÔŠ»?Œ¬ŒîP0?‚ofî@Ü?‚ã'˜zì?†‡ý]™Óÿ?†ˆŠ_cd@@&@"@@5@6?ð?ð?ð?ð?ð?ð¿LYâ>ì­®³à?.º5,Òlž?_l3\«€@¨{Ôœ@“G´W¨ò?=Œ<ÐUn? ·8Œ?u·ôdªc?'fy§;Ÿ;@Ÿsx£µÈ@|@§n—P@§n—P@§n—P@§—ѧŒ@§n—P@§Š @§n—P@§öÔ”ƒ@§n—P@§WŽ5V@§n—P@§‡×@•c/Ÿ¾w@•c/²-@•c/Ÿ¾w@•c-ðñ!È@•c/Ÿ¾w@•c/ÉÐU@•c/Ÿ¾w@•c2,àË@•c/Ÿ¾w@•c/c¶ Ç@•c/Ÿ¾w@•c0-à @2åöý!ÿ.@2åãS÷ÎÙ@0 Iº^5@0ž˜„Ø>@/:¬1'@/9]‹á´@.õ¨Xy=Ú@.ôºâïÞr@.õ¨Xy=Ú@.ô9XbN@.õ¨Xy=Ú@.ôR±/?É^ž6õP?ǧ õHÙ?‘, •¸’?‹¦æx»?‘×»p¹¼?Èñ’!?ÐbQë„›¦?’ 7¨±‚¤?‰5ñ™³?-õ.›ü?íĵl>w?]ÖDg‚Q?€bMÔŠ»?Œ®ÞÆ­h¤µÜÆ@4ahr° ÄÁ.„M‰ûçm@3š~ùÛ"ÑÁ.„QnÙ‡@3£ÉîËûÁ.„NÜC,¥@3£ÉîËûÁ.„NÜC,¥@3£ÉîËûÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø~@Ÿ:èr° Å@Ÿ<.VNQ@Ÿ:èr° ÅÁ.„€@Ÿ:èr° ÅÁ.„€@Ÿ:èr° ÅÁ.„€@Ÿ:èr° ÅÁ.„€@Ÿ:èr° ÅÁ.„€@œ;Ú¬1@œ<(cR(ü@œ;Ú¬1Á.„€@œ;Ú¬1Á.„€@œ;Ú¬1Á.„€@œ;Ú¬1Á.„€@œ;Ú¬1Á.„€@7ý:’£@7‹Á”u¬“@3}‘hr° Á.„M‰ûçm@2ß²-VÁ.„QnÙ‡@2kxFÜ^Á.„NÜC,¥@2kxFÜ^Á.„NÜC,¥@2kxFÜ^Á.„NÜC,¥?ÞÒn¢{@8#˜@8¾:@8 >+@8Iç@8Ù?Œ`àËQã”@8Î÷@8i§@8Å@8S@8û—?è玲ã{¹@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøø@©F¿|í‘h@©F«C•@©F¿|í‘h@©FÃñA ]@©F¿|í‘h@©F½ÌcñA@©F¿|í‘h@©F Iº]@©F¿|í‘h@©F¹³Ð|„@©F¿|í‘h@©F»ÚQÎ@¨¥=ó¶E¢@¨¥AÊÀƒ@¨¥=ó¶E¢@¨¥?¤?åÈ@¨¥=ó¶E¢@¨¥;J#9Â@¨¥=ó¶E¢@¨¥A@N¤@¨¥=ó¶E¢@¨¥<‘ÑN<@¨¥=ó¶E¢@¨¥?»@8Œ]cˆe”@8‹ô‡ü¹$@3À Ä›¥ã@3¾ÒˆÎp;@3²-V@3žƒä%¯@2fYJôðØ@2dÝ/Ÿ¾@2fYJôðØ@2d`ªdÂø@2fYJôðØ@2eF +¦L0?µRÌv·Ë`?‘¸ü"ù€2?“%HCâ=s?nii)â?•RC}Ëq?’Óðç Î? Eˆ‡ðó‹?”n‹rÕ|?™0˱Á[©?’ü#q\-v?”GO˺Ÿû?’ê•8©ñ?¬ýG¬Eq¾?’+0ê­ìT?†' +³}÷C?‰Ò–(?ˆëÅoë?‰G±±ZÎ@@@@@*@(?ð?ð?ð?ð?ð?ð¿ZÝ&öŒ¿JÞˆÔ?d´¯œ›kž?Fì”)È@©F¾Sɦ@¨¥?F¸€?v+uHu\?`³ºŸ##Ç?á°͆½?³ô†Ê!»¶@Ÿqä„& +@€@¤VÄ›¥ãT@¤V¿˜¯6a@¤VÄ›¥ãT@¤VÂWù_{@¤VÄ›¥ãT@¤Vó/o¶¦@¤VÄ›¥ãT@¤VºË®$@¤VÄ›¥ãT@¤VÚö!"@¤VÄ›¥ãT@¤Vѧ„â†@”¡ì‹C•@”¡´ƒ”X@”¡ì‹C•@”¢{¦Ê@”¡ì‹C•@”¢ªÍžƒã@”¡ì‹C•@”¢Oêï\P@”¡ì‹C•@”¢iú‡©õ@”¡ì‹C•@”¢`¦á@7žHè§æ@7¤›ÂCiÖ@3#÷ÎÙ‡@3(Ð/@"˜@2¢-V@2’UÖ½3¸@1ëxFÜ^@1ßèQǰ(@1ëxFÜ^@1ä~’Õ"3@1ëxFÜ^@1æHÄ4?¨Sp*?ErR¡n ?·~SÑj¸±?¤2Fný߉?±ƒ®ˆäü?¬š8 Èùx?ñ3<' ?“´¡S*?È”*8l?˜wß +dã°?¬ääóÿ ?°hsÞVol?¡»®œâ?˜Q-vKÕ—? àë””!d?ŠnVN0žÀ?§¯Sãû¶?¨¨-´^¹v@@ @,@$@7@4?ð?ð?ð?ð?ð?ð?fÉÂ{N?™Orù`?b¨è³–”t?o¥‰Çx(@¤VÂä'@”¡ô +Þ Þ?yB¦ßÓ~˜?…s³¦&ÛN?âvC©±jß@c‡&•K@Ÿ_ÃQŒ@@«)ñ&éxÕ@«)íÒñ©û@«)ñ&éxÕ@«)ò{²þÅ@«)ñ&éxÕ@«)ó3333@«)ñ&éxÕ@«)óÝ—ö,@«)ñ&éxÕ@«)õéá°‹@«)ñ&éxÕ@«)öÈ´9W@¥ö× +=p¤@¥öÉxÔýô@¥ö× +=p¤@¥ö×Oß;@¥ö× +=p¤@¥öÝ/Ÿ¾@¥ö× +=p¤@¥öÖ4ê@¥ö× +=p¤@¥öÖ»˜Çã@¥ö× +=p¤@¥öÜ]cˆf@8(†YJôñ@8' +=p£×@3ðÄ›¥ãT@3ôЩ*0@3)Û"Ðå`@3.óMj@2ž«6z‘@2¥%F +¦L@2ž«6z‘@2¥‡“Ý—÷@2ž«6z‘@2¥L˜_÷?¢F^ì¼Sð?•˜Qi{cj?•Ìüb¢?›×GÁcP?–ǧ/Ë?’IåŠú?žŒÝÙ›P?•Ð\ÄÙ?›WK($ x@¬E¡ÊÀƒ@¬žÔ,<ží@¬E¡ÊÀƒ@¬ž¶ý!ÿ/@5zqÞi­C@5zîcŠ @3¡hr° Ä@3¡½¥œà@3'KƧïž@3#Ð|„µÝ@2°–»˜Çã@2­ÈK]Ì@2°–»˜Çã@2…Y³Ð|…@2°–»˜Çã@2|/ƒ{J$?|öOÿÝ?‘è™è;?–„6âpñ?$Ìj½BÙ?²œIršÏ??¸Ø'Š“?}Ñ¿ž,?–gÝ3ýø’?—æÍw€r‹?’RÖò?Øß”5¾oó?ã´TYä9?‚‘´…=Ca?“8í¢ßA?‹v'þ­X?ˆÝíá‰?›8~à,ã™?™¥bÉ-/@@@@@,@,?ð?ð?ð?ð?ð?ð¿ev–£"¿ba~–4?B˜î´AÕ?yó*#ˆ.£@£}hÁ§„@¬DÝ&$?U^ôf2|?Šøu“_8h?²{p ywA@%‰—·–@Ÿ\ùÎ!›|@ƒ@¦¹nzáH@¦¹mÒñ©ü@¦¹nzáH@¦¹nÕ0ö¼@¦¹nzáH@¦¹nœÓ^@¦¹nzáH@¦¹o4‘®Ö@¦¹nzáH@¦¹nÿ‹Y`@¦¹nzáH@¦¹oDñÆ@—QÊÀƒo@—QËC•@—QÊÀƒo@—QËKÇ@—QÊÀƒo@—Q˯{ëê@—QÊÀƒo@—Qͦ™øÊ@—QÊÀƒo@—QÌ-.mz@—QÊÀƒo@—QÌ5¬«¤@3ÖšÔ,<Ÿ@3Ö°‚AÙ´@0|í‘hr@0n@e @/Ýó¶E¡Ë@/ݹ9KWô@/`ªdÂù@/`’2ä@/`ªdÂù@/T^%ZÈ@/`ªdÂù@/Kì"?|Ñb×¶@?ɧ¶kF?‘,(î¶X¢?‹Çµq?Â?ô2zWƒ/?»KÉ“V?|Ñb×¶@?’’ÛR‘?ŒØSÃÕ‡?9ä7~?ÒoÄc’ ?\=ŸùU?‚zÄÌí*?Œº“zí+‡?‚zŽbœ¡½?‚þT Ї?†šÆŽG•?†´ÙRò†@@$@&@*@:@7?ð?ð?ð?ð?ð?ð?5oF ˜?"y?Þp?açf&?Z¿ˆ¼@¦¹n–Õô(@—QÌiª¤?4èùœÈU?<äo23m?wÖÌ£Ò??…È´ñå-R@ŸfúG¬Þ@„@®ßB Iº^@®ßCn—@®ßB Iº^@®ß3Ý—ö+@®ßB Iº^@®ß33333@®ßB Iº^@®ßvÈ´9@®ßB Iº^@®ß'ÕfÏA@®ßB Iº^@®ß-úCþ\@¥&hõÂ\@¥&bÐå`B@¥&hõÂ\@¥&l¥zxl@¥&hõÂ\@¥&Sœ¾ß@¥&hõÂ\@¥&QÅ€@¥&hõÂ\@¥&a£n.³@¥&hõÂ\@¥&]æšÔ,@7+µsê´@7+P°ò{³@4ÇÎÙ‡+@4Â{²þÅm@4nùÛ"Ðå@4b£S&@3¿ò䎊r@3Æfffff@3¿ò䎊r@3´M:’£@3¿ò䎊r@3°hÛ‹¬q?}Ñ¿ž,?©c0_Õ¥¶? õ/ ebà?’KŸÐÇ¡?¤š%OÜ–õ?§ÈÅCHƒ?¢Æ÷Xê†?§PÔYªÀ—?¦DNYô ?ž‹R)n©? ³×OÓ+z?ª.Wæ—“?™“ÇÙ¸?¯Ëg1Ð?š?G'ôÜ?œ»Qñ¯L‚?§Ñ^Éysæ?¥VËMª¼‰@@@@@*@*?ð?ð?ð?ð?ð?ð¿ƒ[’û€¿AÐjíè?k vù,Ò?jaÞ¦ +”@®ß*q/Yæ@¥&[åÜFn?Žw3È™òÉ?…²àÕQ@ª¾t5tp?楫ô?Qn@Ÿi‰ ÆÃ¶@…@ ½"Ðå`@ ½9çÓ@ ½"Ðå`@ ½*Ú0„@ ½"Ðå`@ ½ƒB'ç@ ½"Ðå`@ ½ŸfˆÛ©@ ½"Ðå`@ ½.Ñm)–@ ½"Ðå`@ ½`­Äâ/@¬Ë$Ý/ @¬ËÙœ‘@¬Ë$Ý/ @¬Ë9bðýï@¬Ë$Ý/ @¬Ë0±u—~@¬Ë$Ý/ @¬ËL1!ýŸ@¬Ë$Ý/ @¬Ë,DX”e@¬Ë$Ý/ @¬ËxИ@8zqÞi­C@8s33334@3ør° Äœ@3þ±¨Ò@3‹"Ðå`B@3«Ä&/Q9@2O „M@2ˆ¦?B§@2O „M@2‡Ru\@2O „M@2sÓ«£ª?°ðéú}Ñ?•¾€‡‰?’xôƒ`ã?Ÿhi­? "·ðú?¹• ¹,ê?žƒ¸r2ã?™(¾…áÐ?“øæo6Î?˜nÕÏ?˜Nb™Ðâ±?’3¥Îz5?‘9ûÎh¬ñ?’’IÞUÄ?Ÿ|ÚÆL)/?Š>­ÂŒ?²oB]òÁ?¢‚ùùáÿ»@@*@$@"@6@8?ð?ð?ð?ð?ð?ð¿w›š ??¿vè? n‘»·ª?‚ˆB\Cѯ@ ½a>òë‚@¬Ë-ØŠ„?³øòp–ý®?žxö+ϬA@=?°¤rÈ@$žêRoø@Ÿlb7<·!@†@ªð?|í‘h@ªð>¸Që…@ªð?|í‘h@ªðAò×s@ªð?|í‘h@ªðD›¥ãT@ªð?|í‘h@ªðDoi@ªð?|í‘h@ªð@ëíúE@ªð?|í‘h@ªðA-w1@ªÉu?|í‘@ªÉuÂ\)@ªÉu?|í‘@ªÉuÜÆ?@ªÉu?|í‘@ªÉu '»@ªÉu?|í‘@ªÉu?|í‘@ªÉu?|í‘@ªÉu$Þ@ªÉu?|í‘@ªÉuL˜_@3L]cˆe”@3LL˜_@-{"Ðå`A@-wÁ½¥›@,N—Oß;@,K¹Œ~($@*åÉä@*}IQ‚©’@*åÉä@*}/Ÿ¾w@*åÉä@*|àuöý#?žˆ2}?Æ +×?’Gßk;m?‹Æ úJ-M?‘2A¥Ø?ë+ʦÜ_?|¬Çëý ?’“ºƒ;Nû?ÏtP°*?1ð'7éÃ?â2„&ÿh?Uÿyu”#?‚¸“Îè ÷?Œ¾»•lŽ?‚yî8Á$?‚éXëLL÷?†l&þ?†½ª»—@@@@@*@(?ð?ð?ð?ð?ð?ð?G·Üÿx¿a@?DšŒá7_×?\13-@ªð@ìoSz@ªÉu†‰:æ?dSEX¼>[?#ºcÜ<?Ók°`¦€?S£b£@ŸgºËñJ@‡@ p0£× +=@ p:Á7s‰@ p0£× +=Á.„€@ p0£× +=Á.„€@ p0£× +=Á.„€@ p0£× +=Á.„€@ p0£× +=Á.„€@¤/Û¥ãSø@¤/àA‰7L@¤/Û¥ãSøÁ.„€@¤/Û¥ãSøÁ.„€@¤/Û¥ãSøÁ.„€@¤/Û¥ãSøÁ.„€@¤/Û¥ãSøÁ.„€@8^Hè§æ@8UËí»€P@5—+ IºÁ.„M‰ûçm@4ûƧï²Á.„QnÙ‡@4ëxFÜ^Á.„NÜC,¥@4ëxFÜ^Á.„NÜC,¥@4ëxFÜ^Á.„NÜC,¥?¡5Vá4S@8#˜@8¾:@8 >+@8Iç@8Ù?"r+©©£@8Î÷@8i§@8Å@8S@8û—?ºÑ„³@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøˆ@ª4_;dZ@ª4hõÂ\@ª4_;dZ@ª4e8ï4×@ª4_;dZ@ª4g»/ìW@ª4_;dZ@ª4u '»@ª4_;dZ@ª4fÜ]c‡@ª4_;dZ@ª4cn.±Ä@£šŸ¾vÉ@£švÈ´9@£šŸ¾vÉ@£šIá°‰ @£šŸ¾vÉ@£š&€I@£šŸ¾vÉ@£šBœwšj@£šŸ¾vÉ@£š'â‚@¸@£šŸ¾vÉ@£šškP±@7” xFÜ@7‡škP°ò@5^Ù‡+@5Q£n.±Ä@4Õ`A‰7L@4Ô,<žìÀ@4fYJôðØ@4v¡aä÷f@4fYJôðØ@4‹xFÜ^@4fYJôðØ@4 quŽ?Ÿ‹‘+-/Ü?“³ß )}o?FwôÅ?¯üÚ‰øßæ?«XàzÆ=?¯Èµóäã?¤I~Óy‘?”ŸÚ²t©?¥ÊÁí·EU?°;Éq:¼?­{¾“úy6?³YðÕ{¸?¹X¶t:w?—ÁÌœÒ?«^i•?’4i+Ëè?Ÿ‘±bÌ?Ÿ/Òѯ¢@@@@@(@(?ð?ð?ð?ð?ð?ð¿<Þ)ݨ?XFC¿?[Ö¢3Va¥?tuòÔX­g@ª4i%~Æè@£š&äHäþ?|×§&ß\?”.5–çî?Åð&<~ù•?ð2Ö•ÚUû@ŸhÊ÷.K:@‰@£!Ÿ¾vÈ´@£!pbMÒò@£!Ÿ¾vÈ´@£!«…¸R@£!Ÿ¾vÈ´@£!’¼£@£!Ÿ¾vÈ´@£!¡½¥@£!Ÿ¾vÈ´@£!§†Â&€@£!Ÿ¾vÈ´@£!¢‚@·€@¬¶¯Ÿ¾w@¬¶©ûçl‹@¬¶¯Ÿ¾w@¬¶­í(Œç@¬¶¯Ÿ¾w@¬¶ˆð@¬¶¯Ÿ¾w@¬¶›quŽ"@¬¶¯Ÿ¾w@¬¶Åzxl"@¬¶¯Ÿ¾w@¬¶ÈXy=Ú@9>«6z@9 6z—@4Ùº^5?}@4õϪ͞„@4Wï²-@4qœàuöý@3µµsê³h@3ÊW§†Â'@3µµsê³h@3ÜÌÌÌÌÍ@3µµsê³h@3á×Ûô‡ý?ºðŽÄS?’Mj…•Ì‘?”ñ-a} ?›“ë '?©¦¥Ò?°‰¸*'?¯ò5}'Î?“Ëÿ.¬Hp?—P¶àeœ¤µÜÆ@4sS÷ÎÙ@4q–R½<6@3Ÿ²-V@3œ¾ß¤@@3!:’£S@3­BÃÉï@3!:’£S@3rGE8ð@3!:’£S@34mÅÖ9@8J¨?š 5öÑ„?—CÅçõð?—ó^G_í?š(:)[a?ž C@L(@8J¨?›–ë•ñ^?¤Àñè_zø?¢€ÝÅp?šRýi¡ô?¡ìøV@8p÷?Å{¿Ž<º?“ e?ŒÅÐ7N³¬?‹&¸ê±fÂ?’d­©‡ò@@@@*@*?ð?ð?ð?ð?ðøøøøøøøøøøøøŒ@¢~Ú¬1@¢~Ú¬1@¢~Ú¬1@¢~Ü„µÜÆ@¢~Ú¬1@¢~Û¥ãSø@¢~Ú¬1@¢~Û¥ãSø@¢~Ú¬1@¢~Ú¹õY´@¢~Ú¬1@¢~؆YJö@¤ªë Iº@¤ªë…¸R@¤ªë Iº@¤ªë]Ìcñ@¤ªë Iº@¤ªê0U2a@¤ªë Iº@¤ªëC,¥@¤ªë Iº@¤ªê™0¾@¤ªë Iº@¤ªêÚ¹õZ@4T xFÜ@4T9XbN@0sS÷ÎÙ@0têJŒ@0'KƧïž@0(DЩ*@0&YJôðØ@0'>«6z@0&YJôðØ@0'RT`ªe@0&YJôðØ@0'Ë)^ž?|¬Çëý ?Ï[äe+@8Iç@8Ù?|öOÿÝ@8Î÷@8i§@8Å@8S@8û—?‡}¤íý@8 * @8p÷@8¶@8 Ø@8 Ø@?ðøøøøøøøøøøøøŽ@ª]õ?|í‘@ª]õÂ\)@ª]õ?|í‘@ª]õ"7Tì@ª]õ?|í‘@ª]ôùëD—@ª]õ?|í‘@ª]öî9!+@ª]õ?|í‘@ª]ó:À @ª]õ?|í‘@ª]ôýó¶E@—°ýó¶E¢@—°þùÛ"Ñ@—°ýó¶E¢@—°ÿ¡ Ï@—°ýó¶E¢@—°ÿy8º`@—°ýó¶E¢@—°þi°ˆÎ@—°ýó¶E¢@—°þW°O@—°ýó¶E¢@—°ýKÈ`F@4L]cˆe”@4KÞ‚×¶4@0» Iº^@0» ò|@/ü¬1&ê@/üÁ“+:@0 ù kº@0•øª0@0 ù kº@02júõÕ@0 ù kº@0ëã·œ ?|¬h2:“?ÄplÉ•?‘"˜»Hé?‹Ôã“x?ý¹EË?ú=A™C?|¬h2:“?’ n?‚ö±ó6?X´§Yæ?ômÎ6Ék?~îÜ‘ü›?‚pDøïRg?Œ¿H(>X?‚‘|ÑE2?ƒʾÏê?†²!”,ª8?†ö‚Ó?‘¤¼BÛTü?Î;|;2@Ÿ]=¼äg@@¯ŸOß;d@¯ŸÒñ©ü@¯ŸOß;d@¯Ÿ{=ÈK@¯ŸOß;d@¯ŸHe”¯N@¯ŸOß;d@¯ŸŠqÞi­@¯ŸOß;d@¯ŸÆÁ½¥@¯ŸOß;d@¯ŸÁTÉ…ð@¬Á½p£× +@¬ÁÑë…¸@¬Á½p£× +@¬Á•$Ý@¬Á½p£× +@¬ÁE8ï4×@¬Á½p£× +@¬À“g ù @¬Á½p£× +@¬Á1Å@¬Á½p£× +@¬ÁìVÕÐ@8cg ù l@8Vz–¼@5Iº^5?@4Û=ÈK^@4çKƧïž@4}ÈK]Ì@4fYJôðØ@3þ;Í5¨Y@4fYJôðØ@4DЩ*@4fYJôðØ@4Ƨï²?¤ÊŽaÈ]Ó?°I6nÓ¨á?³¾Ò*„=?¹ ŽÎÍâ?¹—³ÔKÒ?²?€‚ñêã ?± +¦}TÅE?Í™öÇó©?Õ•Ö"º ˆ?ƺ@â=±t?È@—hÔu?¬ðV÷_cW? 6) }’ê?¯^BÎÒ??¡qÍúr;?¡FÍb2x?Ð %¨âë²@@@@@&@(?ð?ð?ð?ð?ð?ð?…q «Ô€¿§É.êH°?mûŽkáÔŸ?‰+Ü=B)Ÿ@¯Ÿš¡ëÃÁ@¬Á‘|”®?q¯r?¡CNÎÄao?ÝHð]˜f?ö»âH,1i@Ÿ`Õk0º8@‘@¨O€@¨OˆŠÌo@¨O€@¨OË)^ž@¨O€@¨O‰ã½@¨O€@¨O—Xâd@¨O€@¨O} +ú@¨O€@¨O‰ÕÃI`@œ‘["Ðå`@œ‘9áþ@œ‘["Ðå`@œ‘Që…¸@œ‘["Ðå`@œ‘N_oÓ@œ‘["Ðå`@œ‘$tSŽó@œ‘["Ðå`@œ‘6›$•@œ‘["Ðå`@œ‘*ægˆ@8›¹Œ~($@8‹,ÕGfž@4+ Iº@4oiDg8@31‰7Kƨ@38$ xG@2Þ«6z‘@2àÑ·Xâ@2Þ«6z‘@2Ég”Rõ@2Þ«6z‘@2ÎnM’}R? Ôøx¡9»?˜fײ{Î=?”‰oüq u?• Q™iå”?—7ű4Cù?›\F*Õ7†?ºfÈŽÍY?š¾ˆè ”?•ê?íuA?—³ÄpÐ?¤[T‡Ýas?œò½¼U?´$%Gó}?š‡´‘Õä?¡PÊÑ<Ýl?”žWj¬fž?Œ†ž49›Ò?•>¥þ^*@@@@@0@.?ð?ð?ð?ð?ð?ð¿`B|l?L2ã/?sBŒÊ-#2?_§aÓúg1@¨OŠ=­u½@œ‘)ž½àa?$ã¨+?rJ[Œßö@üäcý­Q?Ã3€º¹5@Ÿp%Û}‰Ë@’@¢Ò÷ÎÙ‡@¢Ò÷Oß;@¢Ò÷ÎÙ‡@¢Òó àÞÓ@¢Ò÷ÎÙ‡@¢Òî±Ä2Ê@¢Ò÷ÎÙ‡@¢Òßò䎉@¢Ò÷ÎÙ‡@¢Òç8}¿@¢Ò÷ÎÙ‡@¢ÒæÜ]cˆ@£’¯²-@£’¯ß;dZ@£’¯²-@£’²ˆÎp;@£’¯²-@£’®æ1ø¡@£’¯²-@£’­à q@£’¯²-@£’£S÷ÎÙ@£’¯²-@£’£ñA \@3Ô xFÜ@3Ón.±Ä3@0Ùº^5?|@0ÒÊW§†Â@0y7KƧð@0q°‰ 'R@0QÞi­BÄ@0G§†Â&@0QÞi­BÄ@0EãS÷ÎÚ@0QÞi­BÄ@0F?¼?1·†Æjñ?‡åƒêM?“â÷!N?–¼A2xý?Òß© ÷?—Ò¸ùBz3?|öOÿÝ?’&u÷E»@?’°æfÅM“?’ƾ| ? ,¡r×gÁ? ,ëÌ:¶Ï?‚nâwfÿ?Œ¸†‡ÄÅ?ƒíÈm½!¿?„XïWÉò~?ˆ0&YÊEd?‹¼`’ i2@@@@@,@,?ð?ð?ð?ð?ð?ð¿rDl§Q€¿a%©¤²?[sAš':^?HÝ‚ n.@¢Òï9p­®@£’¬qmÜL?y õ÷DñÎ?ecÁcAðu?õ'_’h/ø?Ëò-!ò]o@Ÿco¢>ªc@“@ w33333@ w32Å@ w33333@ w4Q@ w33333@ w5h¬Õ¥@ w33333@ w5¾ØBR@ w33333@ w2‰*R@ w33333@ w2wØóÿ@§ûçl‹D@§ü(õÂ@§ûçl‹D@§ü]¡´ž@§ûçl‹D@§ýÀÒ;ë@§ûçl‹D@§ûÅ„ž@@§ûçl‹D@§ý¯nÚ¼@§ûçl‹D@§ý¼©i@2­¥œàv@2­´1G-@0€ Ä›¥ã@0~ÓN׋@0å`A‰7@/ýäûÎ<@.G“Ý—ö,@.F:(KÃR@.G“Ý—ö,@.F$ ßRx@.G“Ý—ö,@.Dz²ºtç?É^žP¬!?ïʃš/J?‘!,1 ®þ?‹Ó’{-@F?øpfТ?ßeKþ£?ÐbQë„›¦?’#Øù$S,?˜Ý=yƒˆ?2üÂòñ?æòö/Ÿ?Xð3Z:?€c6JX¨?Œê¸Ávó?ƒ'²x'9?‚ð§h9#?†Ó_³ëêù?†¯B@ùþ@@&@"@&@8@8?ð?ð?ð?ð?ð?ð¿XN¸d?LŒ··,?>ï%¢O‚™?2Y]ý;,@ w3ÐôÖ!@§üò  ¥?M¶s2ZVÞ?Ab–Eäib?•s›ÙÅ¡?ziÞînZ@Ÿs +“Ã@”@ª¦À@ª¦À“4Ì@ª¦À@ª¦Óv‚÷¶@ª¦À@ª¦Ó¥ lþ@ª¦À@ª¦ÓR¥p@ª¦À@ª¦Ùwæ”Þ@ª¦À@ª¦àLlÓÓ@šÄ’n—P@šÄ†§ï³@šÄ’n—P@šÄ…!Ïž¾@šÄ’n—P@šÄ‡}Ú +È@šÄ’n—P@šÄ‰w—v'@šÄ’n—P@šÄy¯¶n@šÄ’n—P@šÄ„É ùã@6òÃÉîËû@6íÙ1Í—Ù@3|í‘hr@3‰ó[D@3,j~ùÛ#@3!ĬlV@2p–»˜Çã@2b©ƒŠÌp@2p–»˜Çã@2e­€Cæ†@2p–»˜Çã@2d‡NN}6?e™”XWø?£KÊ2e¡?š–yÈxb?&’·ž?–XÁ]Nœ?› ÊVMŒ?}@T˜ÁÎ¥?’ê´’º?’´öå¤?z—nÛ¹?“2-+O´Ñ?’®8îPŠÒ?‚oºáܺ?Kdnå +?†uuÕ¢Éþ?†Ù k4?ˆšsÓß ö?‰dÚè±@d@@ @(@$@3@4?ð?ð?ð?ð?ð?ð?{kmÑú¿AN^X?4ßmæ•ãx?FgëþÙð@ª¦Í™›Äþ@šÄ„ÇI’?S.v‰jUø?eÓJ>äé?«ý6œHp÷?ÖÒ©2ò;@Ÿe„?à£R@•@«¦hr°!@«¦&éxÕ@«¦hr°!@«¦°ò{²@«¦hr°!@«¦°ò{³@«¦hr°!@«¦å`A‰@«¦hr°!@«¦|„µÝ@«¦hr°!@«¦ß;d[@Ÿ¼o²-@Ÿ¼m‘hr¯@Ÿ¼o²-@Ÿ¼k6z‘@Ÿ¼o²-@Ÿ¼u '»@Ÿ¼o²-@Ÿ¼r-V@Ÿ¼o²-@Ÿ¼mw1Ä@Ÿ¼o²-@Ÿ¼o·éù@6`ØDЩ@6`oiDg8@2f‡+ J@2gÎÙ‡+@1¾V“u@1¿iDg8@0Ê0U2a|@0ËŸU›=@0Ê0U2a|@0Ë Iº^@0Ê0U2a|@0ÊdÂø7µ?óA[ØïF?š¾ßÍZ?”4 bà5?ŒÖ +Äȱ?‘èÒ§ˆ„Å?‘¦ µÚ?3ßa=„?’Òc§—Ûí?“Z—H|:?Y‡…—Ø?‘–=û.e1?‘C å;Ã?”US9úÅ?îŠõ ?ƒM¬Öe—_?„XïWÉò~?‡ã ËÄž?ŒÙ”!Çx‡@@@@@,@,?ð?ð?ð?ð?ð?ð¿/UÀ?!oþöà?›Ø*K:?75®o_TÕ@«¦¡ŽéI@Ÿ¼oI¸.?1÷©xW‰?UVÔG(ô?c#¥. +RÈ?©ÛÆAÀ}W@Ÿl#m‹é©@–@¢ªçl‹C–@¢ªÞ5?|î@¢ªçl‹C–@¢ªé 'RT@¢ªçl‹C–@¢ªçË)_@¢ªçl‹C–@¢ªïÅp@¢ªçl‹C–@¢ªç®zá@¢ªçl‹C–@¢ªãS&@®l¸Ôýó¶@®l·Oß;@®l¸Ôýó¶@®l¬¿±[V@®l¸Ôýó¶@®l 'RTa@®l¸Ôýó¶@®l±N;Í7@®l¸Ôýó¶@®l±Å‚@®l¸Ôýó¶@®l«íúCþ@8òÃÉîËû@8ãŽóMj@5° Ä›¦@5»¬q ²–@5Z~ùÛ"Ñ@5FOv_Ù@4¨è§æ›@4ªxl"h +@4¨è§æ›@4¥`A‰7L@4¨è§æ›@4BÃÉîÌ?¾Å°[ú_G?ªP2 +¬OÔ?ªOؼïÏ?• +ÏÄ¡?ž)‚^°y?œˆš—I?±>ÏÅósN?ªjÚäƒX?¤ý'º(?°‹Œ÷€?››ÈŒ(¨æ?š)ÑS&³?¿ûI£•Ì?¤ŠØ²f¯?™{Tä=û?«0ÉEK?›€*:€R}?IQ‚©“ @@@@@$@"?ð?ð?ð?ð?ð?ð¿q";ñ ¿`Êt?c8Z4b}·?J Ó_£HN@¢ªê²dg\@®l°2½L­?tî'Txã?\ÏÑËÒQ¤?Í„¥Á½Ó^?¥¶½¢¸@Ÿp›ùø©¦@—@©· A‰7L@©·(Ò2{@©· A‰7L@©·å û_@©· A‰7L@©·'Â?ªŸ@©· A‰7L@©· Ey@©· A‰7L@©· ýñ?U@©· A‰7L@©· ¯@‡¢@˜€× +=p¤@˜€üVs(@˜€× +=p¤@˜€Ì\Þ7@˜€× +=p¤@˜€Ð ŒA@˜€× +=p¤@˜€‚“°J@˜€× +=p¤@˜€´5Âp6@˜€× +=p¤@˜€¾)¹ú®@904mÅÖ8@94"Z§›ì@4{ Iº^@4y.áe¯@3â-V@3ã— †/Æ@3³&Á½¥@3§<5œNÂ@3³&Á½¥@3¼sþëš@3³&Á½¥@3»ñ¯Ði?³,øt£Ø?•…¦|u?”q)·Ô/ž?™”O =?’¼­ÿȺ?—ª±Cš7Ï?‡‡á´WÉ?–Øng':?•¿¾m¢?—ä´„ÁÉ?—ñLŒQ¶N? ¯4³ÆlÁ?º1fÝ2»?‘uÎý• ?¨~‘Û)%?¦„Çïî ?£üØuí™A? Æw@çšs@@,@*@(@5@:?ð?ð?ð?ð?ð?ð?uì®$P@¿„˜‚Wà?xV?–?×?uü«G@ðÃ@©·ŸyE@˜€³‡rÚ?‹”(úù¾?œ¨2ë˜ ?ÿ4,¤nž@"7.Ïò@ŸoÀúb€N@˜@§­‘hr°@§­‘hr°@§­‘hr°@§¯_ýb5@§­‘hr°@§®záG@§­‘hr°@§®ÏsJT@§­‘hr°@§«òƒÃá@§­‘hr°@§¬%¬ D@“¤¬1'@“¤­Tj@“¤¬1'@“¤±V¦“@“¤¬1'@“¤ˆ•@“¤¬1'@“¤aÄ»›@“¤¬1'@“¤Öá@“¤¬1'@“¤ygÊë@4cg ù l@4ca@N¤@0uãS÷ÎÙ@0t²Ž7¶Ž@0lj~ùÛ#@0kîƒ*ZÄ@0œàu÷@0kÕçÑ2@0œàu÷@0«¯waö@0œàu÷@0˜Çâ‚@?}@T˜ÁÎ¥?ÙM‹ß-U?‘Ûùü†?‹«µë­?‘!–ÒOæµ?ÝLï©65?|¬Æ Væ?’Ï +r}ä?‹¬tK±»?0Ö:¢"l?‘"ξfS?†Š¿çK?‚u؆"¿?Œ³$-a5[?‚ň¸™?ƒQ†„ 8?†±@5Gd?†©€‚G¥,@@ @ @@8@7?ð?ð?ð?ð?ð?ð¿+ÁU…À?$4=˜?2÷GêŠ?d¡§x™V@§­Hƒ2š@“¤C½ ?RÒ±†vïÔ@ŸskäŠ@›@ªqô¼j~ú@ªqüí‘hs@ªqô¼j~ú@ªqûô‡ü¹@ªqô¼j~ú@ªqÃS&@ªqô¼j~ú@ªrЩ*@ªqô¼j~ú@ªrŠÚ¹ô@ªqô¼j~ú@ªr#•&@¡“÷ÎÙ@¡t9Xb@¡“÷ÎÙ@¡…+ÓÃa@¡“÷ÎÙ@¡xüPH@¡“÷ÎÙ@¡²¼£@¡“÷ÎÙ@¡ó àÞÓ@¡“÷ÎÙ@¡ôÉ…ðo@8÷â‚@·€@8ЬÙè>B@4ahr° Ä@4YùrGE@41‰7Kƨ@4#¶E¡ÊÀ@3”mÅÖ8†@3Šû~ÿ—@3”mÅÖ8†@3Ž5?|í’@3”mÅÖ8†@3‰rGE8ð?Ÿ‹‘+-/Ü? §Ê]ÁÈ?¢ÌÞõ1?¡sâ½ë?Ÿ\(Ft†ã?¥ÈêƒÔÇ?Ÿ‹‘+-/Ü?¡(õ/Ü(?¡œåVÉh?³ØÐÄÜ_œ?³Ô)ÿ´í?ªõøƒ:‰à?Ùf×ÞÆ¾”?–xéCìZÒ?µ1Ù^ ?¨+Î&*ô?y½¼ŸŽ?™Øl›¹@@@@@*@(?ð?ð?ð?ð?ð?ð?€\š¦€?›«´´¬ ?b;½× +»Â?cä^5ˆ@ªr •\zö@¡¶Êqœ?€ˆ”k + Š?† ›FJÊ?ÝKÉ {í?Ö½òª@Ÿi4>C@œ@Ÿa–‡+ @Ÿa˜Êø[@Ÿa–‡+ Á.„€@Ÿa–‡+ Á.„€@Ÿa–‡+ Á.„€@Ÿa–‡+ Á.„€@Ÿa–‡+ Á.„€@¥ëþùÛ"Ñ@¥ëþùÛ"Ñ@¥ëþùÛ"ÑÁ.„€@¥ëþùÛ"ÑÁ.„€@¥ëþùÛ"ÑÁ.„€@¥ëþùÛ"ÑÁ.„€@¥ëþùÛ"ÑÁ.„€@5ÞHè§æ@5ÜèŽqž@1×+ IºÁ.„M‰ûçm@1gKƧïžÁ.„QnÙ‡@0õµsê³hÁ.„NÜC,¥@0õµsê³hÁ.„NÜC,¥@0õµsê³hÁ.„NÜC,¥?¨Sp*@8#˜@8¾:@8 >+@8Iç@8Ù?|¬h2:“@8Î÷@8i§@8Å@8S@8û—?‚o°V“u@2EÜÆ?@1½cˆe”°@1È*™0¾@1½cˆe”°@1¿v_Ø­¬@1½cˆe”°@1ÄÂø7´£?’Óusÿ\Ã?Žd±Ìº?•lÚ®¡õµ?’×­“·?“>û{Ñø~?”Å0>Û?‘â%ì˜ ä?’ùÎ {?“Ú%¿»8?›gy˜}Ùð?’Bg4ð3f?—>p¼?ƒ<Õp?¨ ‰‹U)?‡š¿]b?‡•ó¨–ˆ?Š|)-}í(?‘„1ôñÂß@@@@@,@*?ð?ð?ð?ð?ð?ð?-øP6°¿Hò òø?DÊ Cô«?Aj´ìj¦@©Û¶€)þ>@¬¼»˜Žhò?bÓDôèõ?`«öu ?¾¶k sð?´‹¶´Ø>ê@ŸkÜå Õ1@ž@¬fdZ¬Á.„€@¬fdZ¬@¬f_¯Hõ@¬fdZ¬@¬fdVåú@¬fdZ¬@¬fcJss@¬fdZ¬@¬fcnw0n@¬fdZ¬@¬faÃv´à@”Чï²-Á.„€@”Чï²-@”Ц<Ñ¥>@”Чï²-@”Š®¤•2@”Чï²-@”Š©ªî`§@”Чï²-@”Š¥Û5n@”Чï²-@”Ѝ8Õù7@8(†YJôñÁ.„>¤µÜÆ@3žÙ‡+@3ž&®üµ@2Ͳ-V@2Î;Í5¨Y@2L¿±[W?@2LÜ·­Qª@2L¿±[W?@2M¹æ°[j@2L¿±[W?@2Oÿtñƒ@8J¨?úD|•Ô?‘7çÖ«?ŒŒ{¡Ä‘?’ç“È–Ÿ?‘‘ä9)¥@8J¨?’íL—²??°Ì·’l^?‘3èòjÔ ?’ÃÎY6?‘ÆúÌþ†«@8p÷?®Y{Õ1*?…«O¡‘?„@×T«[£?ˆCbi¸”?ˆÎ+){ò@&@"@,@<@:?ð?ð?ð?ð?ðøøøøøøøøøøøøŸ@¥”s3333@¥”o²-@¥”s3333@¥”£{J#:@¥”s3333@¥”¦"ôy@¥”s3333@¥”~7º¸­@¥”s3333@¥”„v4J.@¥”s3333@¥”{¯ *Ø@“Kë…¸R@“KØÉ,i@“Kë…¸R@“JÁ‰7KÇ@“Kë…¸R@“Kq{GÜe@“Kë…¸R@“K¤ïó!²@“Kë…¸R@“KùM°vL@“Kë…¸R@“Kùn¬Ì@7Î쿱[X@7Öƒ7zX@4›¥ãSø@4ˆüPHð@3~V“u@3𔆀?³*![Oˆ? š€J‡@¯cè•Ôh @ªj¶¹¨?<ŒZ$€ß?@XÃÅ®Ç?…µÍÛœj?‹‡l—» Ñ@Ÿg‰a@¢@ªpŸ¾vÈ´Á.„€@ªpŸ¾vÈ´Á.„€@ªpŸ¾vÈ´Á.„€@ªpŸ¾vÈ´Á.„€@ªpŸ¾vÈ´Á.„€@ªpŸ¾vÈ´Á.„€@©#ÌÌÌÌÍÁ.„€@©#ÌÌÌÌÍÁ.„€@©#ÌÌÌÌÍÁ.„€@©#ÌÌÌÌÍÁ.„€@©#ÌÌÌÌÍÁ.„€@©#ÌÌÌÌÍÁ.„€@9ÞHè§çÁ.„>¤µÜÆ@7+ IºÁ.„M‰ûçm@6ÝV“Á.„QnÙ‡@5ÑÞi­BÄÁ.„NÜC,¥@5ÑÞi­BÄÁ.„NÜC,¥@5ÑÞi­BÄÁ.„NÜC,¥@8J¨@8#˜@8¾:@8 >+@8Iç@8Ù@8J¨@8Î÷@8i§@8Å@8S@8û—@8p÷@8 * @8p÷@8¶@8 Ø@8 Øøøøøøøøøøøøø£@£¬1&é@£«Æ§ïŸ@£¬1&é@£­0Ì1H@£¬1&é@£­V@£¬1&é@£­-ªWù@£¬1&é@£«C,¥@£¬1&é@£«î²Ñ@˜±&éxÕ@˜±&éxÕ@˜±&éxÕ@˜°êñ+•@˜±&éxÕ@˜³üPH@˜±&éxÕ@˜±N;Í6@˜±&éxÕ@˜±oC„»@˜±&éxÕ@˜±wçÌ@.?åÉ@.?åÉ@(\j~ùÛ"@(\‰ÀjßÄ@'E¡ÊÀƒ@'_Ø­«Ÿ@&ëjçÕfÐ@&ë~ÿ—%@&ëjçÕfÐ@&ëquŽ!—@&ëjçÕfÐ@&ëxFÜ^?É^¨¯Âj?Á€þ†Øª?‘ÑñK·¢?‹­v4¶Ö?çêÑHcÇ?µûê?ÐbMÝn½?’Fó®â?|˜¿ø¾;?0‡j¿þ)?ͪãÓ'?K '‘›»?€bMÔŠ»?Œ¬ŒîP0?‚nÓ3îŠ?‚âÐEi–?†‡¥âè?†‡Óñ˜¤@@(@ @*@<@:?ð?ð?ð?ð?ð?ð¿N¨È&8?Þ]¸?4tÇòFÖ>Ú\ËöâNê@£«ó2G +@˜±d»j2?C«\j©€>èñÕΠɾ?ƒ •aæ>Ë\Št]Þ¹@Ÿsí¥#@¤@­hõÂ\@­h´9X@­hõÂ\@­i?0†´@­hõÂ\@­ix: @­hõÂ\@­iPÞût@­hõÂ\@­h³6 @­hõÂ\@­h‘„!b@™yxÔýó¶@™yxÔýó¶@™yxÔýó¶@™ywöG³@™yxÔýó¶@™yyÐ?7@™yxÔýó¶@™yxV *A@™yxÔýó¶@™yx~*/Ò@™yxÔýó¶@™ywIÂo@1 ]cˆe”@1 ]cˆe”@,`A‰7K@,æÒWv.@*cn—P@*b½<64@*åÉä@*¼@*åÉä@**63@*åÉä@*4Ö¡aå?É^¨¯Âj?É j?‘Û­i)?‹­v4¶Ö?éÝ:ïŽ?µY¾F¼?ÐbMÝn½?’ÙÉÏ·Y?|™;ÕÄ?/]Å\‰?ÑùF#¼?MÊñÊ4C?€bwÄ' g?Œ­Ea©Ó‰?‚sÔü!Ø?‚å¬C>¥’?†‹—ð +«?†ó|V@@(@"@&@8@7?ð?ð?ð?ð?ð?ð¿5ŽËi8¿+¤ûÀ?(˜`¬±? Ñ^=ÂÖÞ@­hèv(R@™yx1Uv?#b[È9K.?/ÕÎÿž'?B|z“£êñ?VCEv¤f@ŸsoI¦_@¥@¡‡+ J@¡€ä‹ë“@¡‡+ J@¡‡/‹5¹@¡‡+ J@¡‚©™³@¡‡+ J@¡…œ„Ͻ@¡‡+ J@¡„žÚ¶@¡‡+ J@¡…Â\*@§žÉ7Kƨ@§žÀ@§žÉ7Kƨ@§žÁØ‘&5@§žÉ7Kƨ@§žÅ莩5@§žÉ7Kƨ@§žÇj r´@§žÉ7Kƨ@§žÆ$æý@§žÉ7Kƨ@§žÇõíÒ@8IÎ_oÒ@8LÎW}þ¬@3ÇÎÙ‡+@3Ä"q)¡¶@2¬j~ùÛ#@2­Úâ[@1𖻘Çã@1ñ¤Wžmã@1𖻘Çã@1ô +ÐÍZæ@1𖻘Çã@1õž1:~?z›Mß ?‘…?©,žG?‘A…Þ¬Ã?‹õ­·%9ó?’ÈwD['Ž?‘ù‚ôT©?¨àÍõ°R{?–kS©²?€~€³q?1ír:ÇÔ?“œ.{*V?‘ïù°ª¹„?¢dÎâÓõŠ?.×­stî?‹rè,z™Ö?‚éQ{ଠ?‹l· ps?ˆŠ«å’{¶@@$@@@6@4?ð?ð?ð?ð?ð?ð?Fˆ#qÜ?J–ÁÊ?@Ie>ü8?GÔœè#@¡„ý«f@§žÆ¶w=~?Vuûïþ'Å?]“wö?¨›I•F ?¯Ç\Àf@ŸoÉe Ã@¦@¯°5?|î@¯°vÈ´9@¯°5?|î@¯°b¶®}@¯°5?|î@¯°¾vÈ´@¯°5?|î@¯°;dZ@¯°5?|î@¯°ã¼Ó@¯°5?|î@¯°<64@­&¹Û"Ðå@­&¹Û"Ðå@­&¹Û"Ðå@­&º…‡“Þ@­&¹Û"Ðå@­&¹XbO@­&¹Û"Ðå@­&º^5?~@­&¹Û"Ðå@­&ºxl"i@­&¹Û"Ðå@­&ºu%G@3L]cˆe”@3Lj~ùÛ#@0›¥ãSø@0Âø7´¢@.ÊÀƒo@.e+ÓÃ@-ÿåÉä@-ÿ¤?åÉ@-ÿåÉä@-ÿò䎊q@-ÿåÉä@.N¤¨ÁU?|öOÿÝ?ÖÈ ¼?‘\H{gX ?‹ä†€{6è?‘ ·èf?Å{¿Ž<¹?|¬Çëý ?’›ÈÖÝ?œõLÁE?Y‡…—Ø?‘ ·èf?b¶­-Óx?‚2Y0â³?Œ¸†‡ÄÅ?‚‹¡8*ú?ƒ†+ Å?†žóB» “?†’Õaì+’@@@@@*@*?ð?ð?ð?ð?ð?ð¿*I9¯?ð(cÀ?+~§C{N?D! êßg@¯°&)ï¶@­&ºË?Jóò«*F?/áp.ºÆ?£®J†Ø1Ê?jdÒšþ„r@Ÿfò(#¿V@§@®ó_;dZ@®óc•%@®ó_;dZ@®ó`[À8@®ó_;dZ@®óa½¥@®ó_;dZ@®ó\ÓZ…ˆ@®ó_;dZ@®ó\C,¥z@®ó_;dZ@®ó\„µÜÆ@¥"MÒñª@¥ A‰7L@¥"MÒñª@¥×sü@¥"MÒñª@¥_ö“@¥"MÒñª@¥×s@¥"MÒñª@¥Å‚@¥"MÒñª@¥SŽóM@6-¥œàv@6(âe+Ô@2©‡+ @2ž¤¨ÁTÉ@1îùÛ"Ðæ@1ä¨ÁTɆ@1?ò䎊r@15ðoiDg@1?ò䎊r@14ã¼ÓZ†@1?ò䎊r@16R½<6?žˆ2}?’u~•Ñ?–@”6Õ«‡?“ŒÒ•ÿV{?’ÒuèçxY?“÷Vdà?€‚ñêã ?•N¬Ÿª`Ž?šJ‘ÍÒÁ?›‘Ûê\PK? p G)L?£:ó;Ãç?Цÿßë?£?Ó%y*£=?„m~Z_s,?„ mŠmsi?‰w¿˜Í¶ª?˜ºíF-dŸ@@@@@*@,?ð?ð?ð?ð?ð?ð¿[¿æ¿è¿lŸ `/?6&Sê;®¹?L‰(ÇlO"@®ó`B£Qù@¥¢JY?UvžÝeÖ‚?iø.$‚Ã?²„QVB)?Ê‘r"ô@ŸdIQ^Ĩ@¨@¥s\(õÃ@¥s£•%@¥s\(õÃ@¥sŠ™0¾@¥s\(õÃ@¥sŒ˜_÷@¥s\(õÃ@¥sÒñ©ý@¥s\(õÃ@¥s¸ºÇ@¥s\(õÃ@¥s‰º^5@@¡6|í‘hs@¡6‰ûçl‹@¡6|í‘hs@¡6}IQ‚ª@¡6|í‘hs@¡6…¼£n@¡6|í‘hs@¡6ŽÙ‡+@¡6|í‘hs@¡6ˆ§æ›@¡6|í‘hs@¡6“œ¾à@9(†YJôñ@96“t½@2» Iº^@2»/ìVÕÐ@1â-V@1ãa@N¥@10–»˜Çã@1)Çy¦µ @10–»˜Çã@1*Ô,<ží@10–»˜Çã@12ZîcŠ?¾„CÚ–•F?Žd±Ìº?’ +·>á ?îZ¼!ÇŸ?”] +° ?“yÄö%Þî?Åe¨ócQ?’¼MÒÀ7F?‘Jâ”âj?š. Œžô?™=M÷‹¸?—Q,Äš¤?Цÿßë?£?–(Ži´™^?Œ*Ñ¿°×?’ª=˜Å?Ž+ôÐ_ÿ?³ˆ54ˆÜG@@@@@*@?ð?ð?ð?ð?ð?ð¿`ÄÕ4˜€?_ª­|ó?S+ál…ó?h3„7˜îž@¥sŒ·…hè@¡6Ž'mþ?c4Å>™Ø»?x'7.”o7?º¨¢…S–R?Õï Èæ@Ÿr˜·åç@©@£…j~ùÛ#@£…lÌÌÌÍ@£…j~ùÛ#@£…›J#9Á@£…j~ùÛ#@£…Iº^5?@£…j~ùÛ#@£…ov_د@£…j~ùÛ#@£…Òòå@£…j~ùÛ#@£…Š#9Àì@ÏõÂ\)@Ïÿ|í‘h@ÏõÂ\)@Ѫ͞ƒ@ÏõÂ\)@Íûçl‹E@ÏõÂ\)@Ñ¿.Hè§@ÏõÂ\)@Ðξߤ@@ÏõÂ\)@кû~‘@3N쿱[X@3H Ô•*@0c÷ÎÙ‡@/ù¦µ '@/ãn—P@.”ðØDÐ@/Aò×t@-º¬1'@/Aò×t@-µ%F +¦M@/Aò×t@-ômÅÖ8‡?|öOÿÝ?˜RôfÂ'Y?Æœ‚¸ß?®ýäÇ—U?ËX~ƒÌ«?ÍËtÝ8Í?1·†Æjñ?˜ଚÿw?äQô0vX?«o)o%?Ҳ«aK?Ñê»S¡h?ƒ<Õp?¤í=š%^?¯M,L¯6?¶K/ê‰õ? tÆùlŠ?Ü µˆä@@@@@,@,?ð?ð?ð?ð?ð?ð?g0¿Tp?²ëÌA°?a Ìcž¤?‘I6­—JE@£…n1Ï&+@ÐJqñm?cr† Ìl0?”=ÓäÞ"?¶˜m¶OŒ@ú»,4‰]@ŸYÛ·ˆ@ª@°Y™™™š@°[ø/AŒ@°Y™™™š@°Wu–0@°Y™™™š@°üÙÙ^á@°Y™™™š@°!«|k@°Y™™™š@°[dZ¬@°Y™™™šÁ.„€@›5Ðå`A‰@›5í«\ãÕ@›5Ðå`A‰@›? Þ´N@›5Ðå`A‰@›<IœL@›5Ðå`A‰@›:oê«[b@›5Ðå`A‰@›5‚ø7´¢@›5Ðå`A‰Á.„€@8Hè§æ@8 +Òù¤”@3Yº^5?}@1ÙY®ª‰@@3F“t¼@1óZ[å@2:Ô,<ží@1Nã+I«õ@2:Ô,<ží@2;J#9Àì@2:Ô,<žíÁ.„NÜC,¥? %÷TŸ÷³?C› »D?¤í¶eŠZ?¡vŒ$yЉ?¤íõµ_'û@8Ù?„9ts#‘?•ui©¯ !?§ÊEòã¬?©*ÏØàˉ?±È`=4l@8û—?³h!lˆd?Œ»*b< «?ç×PM ¡?£x­Øå”!? ²jÖ]É@8 Ø@@@"@$@,?ð?ð?ð?ð?ðøøøøøøøøøøøø«@¥h¿|í‘h@¥hÄ“t¼@¥h¿|í‘h@¥h½ó¶E¢@¥h¿|í‘h@¥h¸üPH@¥h¿|í‘h@¥hÉ^ž @¥h¿|í‘h@¥h¾ì¿±[@¥h¿|í‘h@¥i$Ý/@«òß;dZ@«ò’° Ä@«òß;dZ@«òœ£n0@«òß;dZ@«òŒô!-@«òß;dZ@«ò“Ð|„¶@«òß;dZ@«òy0¾ í@«òß;dZ@«ò¸7´¢5@7¥öý!ÿ.@7¬¿±[W>@3° Ä›¦@3³33333@3nùÛ"Ðå@3^æ1ø @2OO „M@2E?|í‘i@2OO „M@2ÕfÏAò@2OO „M@2åÉä?}Ñ¿ž,?¥ÅãÈV/?›Ì~” #?’(æ„+Zk?¢Ø2Õ„e?À«/^ðˆ?Ž=fA:? _‰Í@‹ +? ”Ô½Ì=?•Ò_ÇF•?¢éÏŸò’«?ºYù¸Éw?’ÌRû ã?–P¢k"?žâç.¡È?>æ¿Îï?³ˆ54ˆÜG?±a²OúDæ@@@@@@(?ð?ð?ð?ð?ð?ð?U›‡LÜ¿_9 Vˆ?ad%0Ní²?o?}Ñ¿ž,?”” +=ª¸ ?šÛ’ä|?‚á²Olºü?ލf†)"?‹´¡`Ƕà?’»•e¨ò? tÆùlŠ?¨4¨æž@@@@@*@*?ð?ð?ð?ð?ð?ð?\ÔU›‚¿aÅ`ã?HJ¨ÀR¤Í?N4tµÕ +å@§(p·Ñºg@£š+q*l?f‘»d|Ý?l\t™†2ì?Òƒ*„Gp÷?Ù†ÜeâÃ@ŸdļW@­@¯E=ó¶E¢@¯EYXbN@¯E=ó¶E¢@¯E<64@¯E=ó¶E¢@¯E9XbO@¯E=ó¶E¢@¯E=²-V@¯E=ó¶E¢@¯E9‡+@¯E=ó¶E¢@¯E8DЩ@¨ú²-V@¨ú¡‰7KÇ@¨ú²-V@¨úžÅm\û@¨ú²-V@¨úŸ¾vȵ@¨ú²-V@¨ú¢¶®}V@¨ú²-V@¨úžÅm\ú@¨ú²-V@¨úžÑ·@8àØDЩ@8Ô xFÜ@3õãS÷ÎÙ@3÷eýŠÚº@3Ðå`A‰@39Àëíú@2¨è§æ›@2©ÀëíúD@2¨è§æ›@2ª™0¾ í@2¨è§æ›@2©…ðoiD?’Óusÿ\Ã?œ;=?ªT?‘"žæÆó¡?’KŸÐÇ¡?“Œ4f(Rú?’ß5d?ž²5ô$¢?ƒôŸŠø@ŸgG *”¶@¯@¦s¸Ôýó¶@¦s¸Që… @¦s¸Ôýó¶@¦s¼Æ?@¦s¸Ôýó¶@¦s´9Xb@¦s¸Ôýó¶@¦s¾ í(@¦s¸Ôýó¶@¦s²×s@¦s¸Ôýó¶@¦s®±Ä2Ê@©¥`A‰7@©¥¡ÊÀƒ@©¥`A‰7@©¦ffff@©¥`A‰7@©±&éxÕ@©¥`A‰7@©¤tSŽó@©¥`A‰7@©¢ÞѸ@©¥`A‰7@©ŸË’:*@5IÎ_oÒ@5J=p£× +@3Š^5?|í@3ŒVÕϪÎ@3F“t¼@3FÜ]cˆf@2ÜÚQÎ@2Ü¥zxl#@2ÜÚQÎ@2×l‹C•@2ÜÚQÎ@2×Xâe,?€‚ñêã ?/³)sšÌ?‘„ë2‘~?’ {½4?”ä+ïè?› ½†Ò*Ã?1·†Æjñ?’¼MÒÀ7F?‘}7ˆ.Ñ?‘ǧ?D6?“h_N’%¿?Ÿ53‡y–@?‚nâwfÿ?“êXÔ #{?’ž²¢# Y?‡ÕZ›µûÜ?•mCìc¿4?”¦”x£b@@@@@"@*?ð?ð?ð?ð?ð?ð¿P~ JãX?V»ÖF¬ ?-ÓÎÖ ê]@¦s·C(8@©¤+NSÒ?u@°@¢´$Ý/ @¢´%¸Qí@¢´$Ý/ @¢´& +¦L/@¢´$Ý/ @¢´&Ü]cˆ@¢´$Ý/ @¢´%ðoiD@¢´$Ý/ @¢´#¢œwš@¢´$Ý/ @¢´#ˆe”¯@®¢J=p£×@®¢K Iº@®¢J=p£×@®¢I“ àß@®¢J=p£×@®¢KÓÃa@®¢J=p£×@®¢KP°ò|@®¢J=p£×@®¢K’:)È@®¢J=p£×@®¢JOu@55S&Á¾@55+ÓÃa@1B° Ä›¦@1B©“ àß@0²-V@0ŽÑ·Y@0#ÉîËû@0$,<žìÀ@0#ÉîËû@0#þ\‘ÑN@0#ÉîËû@0#ä%®æ2?|öOÿÝ?Čۨ1A?‘e +!ßC?Œ:Z2‚b?‘1 °µv¦?ÛF»0?|öOÿÝ?’j%ÓRa?ÏtP°*?ni"Í š?‘ ^Íü?ÿ?½y ¦Å?† + Ðló\?ŒË›Í‡Çq?‚Ì ÝŽ‚8?ƒ ?ÿ½?†ÃÛSPã?†µ°jÆÃ@@@@@$@(?ð?ð?ð?ð?ð?ð¿0 ÿbØ¿ 2sY?.[¬?"ž™âɬ@¢´$ºdò@®¢Jöx¥&?MÛFå'~?Bj¹ YÝ!?§ìóHº¤?‘E‘¿Î@Ÿfé(®Òû@±@¥F÷ÎÙ@¥F“t½@¥F÷ÎÙ@¥E­jO@¥F÷ÎÙ@¥E첕éâ@¥F÷ÎÙ@¥Eîp:û@¥F÷ÎÙ@¥EÍ„M;@¥F÷ÎÙ@¥EÇâ‚@¸@­5ò° Äœ@­5õ?|í‘@­5ò° Äœ@­5ë6z@­5ò° Äœ@­5ðHð@­5ò° Äœ@­5íí(Œè@­5ò° Äœ@­5ò䎊r@­5ò° Äœ@­5ó©*0U@7Bò䎊@7#n.±Ä3@1; Iº^@1QÎ_@0t¼j~ú@/ÙÛ"Ðå`@/G“Ý—ö,@/›¥ãSø@/G“Ý—ö,@/ Q‚©“ @/G“Ý—ö,@/.±Ä2Ë?¥Ìõ}êáþ?¾Ì(hÆ ?¬4F&xé?ŽõÕJ?¶­Oú?æ?¸LcÙRú?}Ñ¿ž,?›¾³LR_5?¢VÂÀ@@@@@*@,?ð?ð?ð?ð?ð?ð¿…Rß¿"€¿G«ƒ€H?hÒ´}¤Ïr?EY /@¥Eïä¬@­5óK‡­¿?vžµb¿•l?fï†,­?Ô a¥ïýË?Ð’/GSm@Ÿho@Hî¦@²@¢‚Ú¬1@¢‚Û¥ãSø@¢‚Ú¬1@¢‚áò×s@¢‚Ú¬1@¢‚ÓMj@¢‚Ú¬1@¢‚Ú–¼@¢‚Ú¬1@¢‚ÛÍ5¨X@¢‚Ú¬1@¢‚ÝÙb¸@®½“t¼j@®½(õÂ@®½“t¼j@®½éùs@®½“t¼j@®½Y³Ð}@®½“t¼j@®½!G®|@®½“t¼j@®½kP°ò@®½“t¼j@®½쿱[@9-¥œàv@9/²-V@4\Iº^5?@4`ÿ—$tS@3®ùÛ"Ðå@3³©*0U2@2ÜÚQÎ@2â£S&@2ÜÚQÎ@2á£n.±Ä@2ÜÚQÎ@2á ²•éâ?¯ò5}'Î?“…­tµH?”Uy*i?–ËÒÙI°?…ÅBðrç?’ ·6Öc¤?ŸÖÒä-2¢?˜Kª³Fš?˜Ü“Œ¾?–ôË{Q?º¬(É™¹Æ?˜ÔÞÑ—æJ?•@K/Ù{?Šˆ€!B®?‰Â“yä–ê?Œúq‘@@@@@$@&?ð?ð?ð?ð?ð?ð?R{Äî?:N€?AÇþ©ù“?EœÐ·Ác@¢‚ÛLPç@®½®¸£ ?TË;ç‰9J?lPAô,b?˜¤‰t0~?ǵOŸ ¸@Ÿoq–í¶+@³@¥V‰7KÇ@¥V}ó¶E¢@¥V‰7KÇ@¥V¸ºÇ@¥V‰7KÇ@¥VŽV’@¥V‰7KÇ@¥V‘œàu÷@¥V‰7KÇ@¥VŒ/ƒ{J@¥V‰7KÇ@¥VŠ#9Àì@¨U&ffff@¨U,ÌÌÌÍ@¨U&ffff@¨U6lô!@¨U&ffff@¨U.p:û~@¨U&ffff@¨U;=ÈK@¨U&ffff@¨U*™0¾@¨U&ffff@¨U*dÂø8@7–»˜È@7|¹#¢œx@2óS÷ÎÙ@2÷ö+jçÕ@2~ùÛ"Ñ@2¾ß¤?æ@1Åœàu÷@1Ö8†YJõ@1Åœàu÷@1ÒœwškQ@1Åœàu÷@1ÔSŽóMj?…ÅBðrç?”êÎlŒy?œ +¦ÃDþ?š±‘DN?Ÿˆ`“Q?œ  ¯Õ?„F/·ÿP5?˜Ø*ªl€ô?—ˆ”„òõ¤?£aº‘¯o;? p G)L?›¶x•7fÙ?“²pÅâ-Ý?’pP‡È»?‡YÍ`?‡v¯ªIì?¾Á{þÆ%?” 4‹eñ +@@@@@,@(?ð?ð?ð?ð?ð?ð?lM‰#¿9W@?Xa;ÉŠ?Vií?À@¥V…ˆj^F@¨U-BA?wßB‰y¶?v‚ÞÂý">?æøæ8‹ V?ã°/„ß@ŸeaÏ«9@´@ Š+ J@ Šq´xA@ Š+ J@ ‰æ¸ºÇ@ Š+ J@ ‰ï\(õÃ@ Š+ J@ ‰ù³Ð|…@ Š+ J@ Š#{J#:@ Š+ JÁ.„€@«‰7KÇ@«ÊÀƒ@«‰7KÇ@«-V@«‰7KÇ@« /ƒ{K@«‰7KÇ@«'¯·é@«‰7KÇ@«3t¼j@«‰7KÇÁ.„€@6™*0U2b@6˜l"h Ô@4)‡+ @4ò䎊r@3×ï²-@3ϲ-V@3Eœàu÷@3@ªdÂø8@3Eœàu÷@3DÝ/Ÿ¿@3Eœàu÷Á.„NÜC,¥?~Ov_Ø­«?œÿ‰eVé?¢Á2ØñÔD?ž\ôÖeú?¬  KüÞ@8Ù?‚Cš æI?£š¨ž(?¡n¡Žv›-?°G²±Ùn?¥yoÌå@8û—?ƒ!;c,`?“&•Z÷˜#?¢ÿÐ4Ây€? Ú˜í2Uš?’¸ø‰o@8 Ø@@@@@,?ð?ð?ð?ð?ðøøøøøøøøøøøøµ@¬ÏD›¥ãT@¬ÏB\(õ@¬ÏD›¥ãT@¬ÏE¸Qí@¬ÏD›¥ãT@¬ÏE¼£o@¬ÏD›¥ãT@¬ÏF€IQ@¬ÏD›¥ãT@¬ÏCFÜ]d@¬ÏD›¥ãT@¬ÏCa@O@©G¸Që…@©G¶È´9X@©G¸Që…@©G¸l"h @©G¸Që…@©G¸“t¼i@©G¸Që…@©G·Á½¥@©G¸Që…@©G·§†Â'@©G¸Që…@©G·éùr@7Žì¿±[X@7„M:’@20Ä›¥ãT@21N;Í5¨@1H“t¼j@1Ik¹Œ~(@0³&Á½¥@0´?åÉ@0³&Á½¥@0³Ý—ö+k@0³&Á½¥@0³ŽóMj?—¤o„C?êÚÏ$?‘D&»ä?ŽAtùð¥t?‘ÇöÃÞ`?‘6 '8?|¬Çëý ?’0nà=Q“?‘8“‡«G?‘l™šU?‘ØèOÍ ì?‘!U?Ð{Ò?‡š¿]bœ?=d­úå?ƒ]€µ,Vß?ƒ¦$H?†Óß +tõ?ˆ‹”âó@@@@@,@(?ð?ð?ð?ð?ð?ð¿³G? ?/¨#¡ ?Gm&¹“‚?îP-Àä@¬ÏDX˜ê@©G·€¼ô ?bw=d‚$G?+±^ o?Àž ÈL«?Z´¸7Ò¹2@Ÿlygaëá@¶@¨€›¥ãSø@¨€™Û"Ðå@¨€›¥ãSø@¨€›˜Çâ‚@¨€›¥ãSø@¨€}¿H€@¨€›¥ãSø@¨€›W>«6@¨€›¥ãSø@¨€™³Ð|…@¨€›¥ãSø@¨€˜DШ@­­ŒÌÌÌÍ@­­ŽÙ‡+@­­ŒÌÌÌÍ@­­ „M@­­ŒÌÌÌÍ@­­ŒVÕÏ«@­­ŒÌÌÌÍ@­­‹jçÕg@­­ŒÌÌÌÍ@­­Œ/ƒ{J@­­ŒÌÌÌÍ@­­Ž.±Ä3@7àØDЩ@7áhr° Ä@3Ù‡+@3!-w1@2y7KƧð@2y k¹Œ~@1Åœàu÷@1ÅF +¦L0@1Åœàu÷@1Å+ÓÃa@1Åœàu÷@1Å¡ÊÀƒ?¡EÉ@Ú?òb[±?–/¸Í”p? Í‹hÆ?’FL{öó?‘uu‡éÚÇ?ˆÿÀ)T¿Æ?•üƯÁ?‘¡Kd·´+?‘aYZ†«q?’íßš?‘"›ö?¨3 ¤qâ?Žrø·óæ?…cü›Š×Õ?„Ö©Ú0?ˆA0û)n?‡L8õASÎ@@@@@*@*?ð?ð?ð?ð?ð?ð¿D(èv¿7Vê`??ƒ {Pm?<{Ÿ‚Zñ“@¨€šÜpR@­­4‹>Þ?U;ì»z„?^OQÆW?£mq€Éd?¹JÃsðs @Ÿn[ðð7–@·@ªhr° Å@ªg0 šc@ªhr° Å@ªe#v/n@ªhr° Å@ªir} +[@ªhr° Å@ªl =§„@ªhr° Å@ªfŒ3 @ªhr° Å@ªgÖ›%Ë@›b0 Ä›¦@›b0Ó¢±@›b0 Ä›¦@›b&DΙ@›b0 Ä›¦@›b)¾'*£@›b0 Ä›¦@›b(îëKÜ@›b0 Ä›¦@›b,&bT@›b0 Ä›¦@›b"ÿ/M@7Bò䎊@7E®“<æ@3«¥ãS÷Ï@3«Íë)xã@3`A‰7L@3n@2ºÔ,<ží@2·®ñu ¿@2ºÔ,<ží@2¹-›;.@2ºÔ,<ží@2¸g^eñs?}x—™?ŒUrx¨â?‘àÙN½²l?‘õ>£Uâ?~Ov_Ø­«?’fÊc?’ÌR úã?[[äÿ?”ªm™Žn?„¾T¢bå?ƒs'£Ù%ˆ?ŽwGÈ{ÙC?…ºA_K?„ª.XýÎ?ˆ±%û¥c ?‡–jÕ¡º@@"@&@@3@&?ð?ð?ð?ð?ð?ð?7k“ ¿SÒ˜?H-*gM6?4‹>²ñb@ªh`?3¤@›b+š i?gÛ7](…Þ?TâË¿¡À­?ܤìr²?´•?·WR@ŸfÇkYä²@¸@Ÿÿ¬1'@Ÿÿ¥ãSø@Ÿÿ¬1'@Ÿÿ¬·h@Ÿÿ¬1'@Ÿÿ"Œßp@Ÿÿ¬1'@ŸÿRÖË@Ÿÿ¬1'@Ÿÿ #”;@Ÿÿ¬1'@ŸÿiÀ9@£ì1&é@£ìIº^5@£ì1&é@£äo.´Š@£ì1&é@£Þf¹À@£ì1&é@£çà$È<@£ì1&é@£çfòAÛ@£ì1&é@£ãÚ$¬5@3½:’£@3½5¨Xy>@0«¥ãS÷Î@0ªo»½Mâ@04“t¼j@00óXÃe@/³üPH@/­ ŒFgÉ@/³üPH@/­6 E@/³üPH@/®¨.î—R?|¬h2:“?ãr—•{á?’QÜ:U?ü¶\kŸ +?‘ÃàcD:Ö?‘R«d"?|Ñb×¶@?’1˜… ”}?’­%¬?’1>á”’?‘þö2Ÿ¿?‘XѪƒˆ4?‚š@”?Œ¼‚wàÿš?‚­‚_6C?ƒšO¦è ?‡'µ0È?ˆ7ÚsÔh@@$@&@,@7@7?ð?ð?ð?ð?ð?ð¿b7eQ0¿Yw%Є?<‹ãX½†Ü?'þ>Ê.î£@Ÿÿ–+cÊ@£èþ˺ô?\rð<€ñ?Hm®g>Ôm?Åòe3ƒÍ?œ†uq¾@Ÿf“5ÚMâ@¹@ªv'l‹C–@ªv+C•@ªv'l‹C–@ªv6âëC@ªv'l‹C–@ªvA:’£@ªv'l‹C–@ªvBœwšj@ªv'l‹C–@ªv14êJ@ªv'l‹C–@ªv2{²þÅ@cMÒñ©ü@cY™™™š@cMÒñ©ü@c~($ x@cMÒñ©ü@c‰ 'RS@cMÒñ©ü@cšu%G@cMÒñ©ü@c£S÷ÎÚ@cMÒñ©ü@c¥ýŠÚ¹@504mÅÖ8@5FIlÊ@2—+ Iº@2$¢3œ¿@2²-V@1ÛÓÃa@@2TmÅÖ8†@1~šu@2TmÅÖ8†@1€Ë)^ž@2TmÅÖ8†@1€Ë)^ž?|Ñb×¶@?W[†?–•Kù̃æ?r*ž¾Ž?”Ôð|c¤?‘£‡9²þ?}õ¬#„­?“$i «%h?’˜l%F…Z?‘ÿŒŒhÚ?“Al.6¸?”Æ*%>g?‚o†#BpW?œ‘z¥æ?„ü›ðÓ?‡W·ŽA:Þ?‡æê7²zE?ŠE§e,¤@@@@@,@(?ð?ð?ð?ð?ð?ð?d›P?‚A¼™«À?c|1®Ìèt?UûP Mõ@ªv1­ºÝ”@cˆ©fý?ƒWÐÄ`Ûo?u¡ˆ‡[¢ +@Äa ++ä?ó—wäœ_@Ÿeù{έ +@º@£áŒÌÌÌÍ@£áŽV“@£áŒÌÌÌÍ@£áŽ}Vlô@£áŒÌÌÌÍ@£áŽ}Vlô@£áŒÌÌÌÍ@£á’-V@£áŒÌÌÌÍ@£á‹C,¦@£áŒÌÌÌÍ@£á‹¬q ´@®\=p£× +@®\A‰7KÇ@®\=p£× +@®\>š@®\=p£× +@®\@ù kº@®\=p£× +@®\A£n.²@®\=p£× +@®\@ù kº@®\=p£× +@®\>ùÛ"Ñ@6^Hè§æ@6^¸Që…@3° Ä›¦@3“Ý—ö+@2V”@2œç¯·é@1°–»˜Çã@1³Ãa@O@1°–»˜Çã@1¯ „M;@1°–»˜Çã@1®ÒˆÎp;?‚á²Olºü?’Qÿc +?”—ýÉò€?Aš%ðï?’¥.Kn Í?’ß5G]!?’W;„zY?“‚í?eBZ?•@K/Ù{?‘5ø gµÒ?„A'Š_^?…<ò N ?‰ö±«tï?ŠEÝ‹N@@@@@*@*?ð?ð?ð?ð?ð?ð¿6°‹X¿7¢»ð?K b‚F«?.tÁ…V@£áŽ(r·|@®\@윟½?k18k¨ß?M¨Ýâ':F?Ü/~{m»Ê?šÍšÁê@Ÿi'PÔ̽@»@¥!õ?|í‘@¥!ã× +=q@¥!õ?|í‘@¥"·éù@¥!õ?|í‘@¥"záH@¥!õ?|í‘@¥"§ï±@¥!õ?|í‘@¥"Ü]cˆ@¥!õ?|í‘@¥"ohÜ@ŸI Oß;d@ŸIOß;@ŸI Oß;d@ŸITÉ…ï@ŸI Oß;d@ŸHþùÛ"Ð@ŸI Oß;d@ŸI + Þ@ŸI Oß;d@ŸHûµsì@ŸI Oß;d@ŸH÷škP±@8?–»˜È@8OŸ¾vÈ@3 Iº^5@32ÊW§†@2²-V@2g8}¿@1®_oÒ @1œ‹C•@1®_oÒ @1˜1&éxÕ@1®_oÒ @1˜r° Äœ?ð°–Ž]?¥L 5¨dÍ?š^ÇÙ*G?–õJe ?¢cfµ(ë?  =%º?ð°–Ž]?™jK¸­€t?’Qÿc +? ¬%)¯?ªä¬¯kF?¨Ò,[œ•?ð*wjs—?™Ø7&½ x?„W;RT?”*+JÒšF?‘éXñ„–†?‘À³ûê%§?ð@@@@,@*?ð?ð?ð?ð?ð?ð¿`ƒÿ¿qXps€?PmÌnÅý³?DàÕÙõ@¥"'‡ß@ŸI2Ó#BZî@¡ûixÔýô@¡ûhe”¯O@¡ûixÔýô@¡ûgRT`ª@1Ñ|ÚQ@1щ7Kƨ@.kƧï²@.iº^5?}@-ÊÀƒo@-~¸Që…@,õ¨Xy=Ú@,ðÿ—$tT@,õ¨Xy=Ú@,ñ&éxÔý@,õ¨Xy=Ú@,ò:)Çy§?Éa—Ã(Ê?ôÊ_?‘SŸ[ÈÙ?Œݶ\ñr?‘¾%î +ã?È2I/?ÐbV‡,?’,ö´´Ï#?‘t‰WZñ?‘.“¥?‘ ÛÌÏõA?‘yÃúCŠ?€cPßQª?Œ».êxóÚ?‚¸“Îè ø?ƒ=rµE=?†å·ÑfWà?ˆ0&YÊEd@@@@@&@,?ð?ð?ð?ð?ð?ð¿K“XÙ€¿8[Us2?1œnnË·?/ñÊdþ @§ÂLDYº@¡ûh ÕÝ?@ó¿ÀÓÁ?=\e¦÷?{µõŸþ7?pàÐT‰P€@Ÿs†k<Ú@¾@©ß;çl‹D@©ß@©ß;çl‹D@©ß<ðG»¦@©ß;çl‹D@©ß:í‡,@©ß;çl‹D@©ß; ¶ÅŒ@”­å`A‰7@”­æƒB@”­å`A‰7@”­æÄÏE@”­å`A‰7@”­ãj\ÜÆ@”­å`A‰7@”­ã_œ^@”­å`A‰7@”­åŸ{@”­å`A‰7@”­ã튫©@5‘|ÚQ@5’«Crél@1f‡+ J@1gD5ÎŽ@0´“t¼j@0´±î$5j@/ð‰ 'RU@/òkŸÔ:@/ð‰ 'RU@/ñÿúâ @/ð‰ 'RU@/ñƽúã?~ì“?ÕÒJ?ü›Î>SU?‘/þù:hn?‹Þ%À£ ?‘ ‡  ¬?ȾŸ¸ª?~Ov_Ø­«?’%õ…mR ?ž8‡Üõä?DNX”1°?ì*d?€˜?rÐûG½?‚tî_™FS?Œ½K ìë?‚š°3ÙÄt?‚ærݳ«&?†œ!R#?†Ä?÷d±@@*@&@*@;@8?ð?ð?ð?ð?ð?ð¿/‰åXÀ¿)÷ëE¸?(¯äˇƒ¥? ÞoÙ³kF@©ß;ÿûÉv@”­åÀê`?H¢‡å,?AI ˆÝX”?Ÿ&eõ¶h?•©@Ð\@Ÿgbm!Oõ@¿@¢°‡®zá@¢°‰ûçl‹@¢°‡®zá@¢°$Ý/@¢°‡®zá@¢°†Ü]c‡@¢°‡®zá@¢°°‰ '@¢°‡®zá@¢°‡ÕfÏB@¢°‡®zá@¢°‚@·€4@¨ûÖ‡+ @¨ûÛdZ«@¨ûÖ‡+ @¨ûÓMj@¨ûÖ‡+ @¨ûÕfÏAò@¨ûÖ‡+ @¨ûÚ…‡“Þ@¨ûÖ‡+ @¨ûÙe+ÓÃ@¨ûÖ‡+ @¨ûÓüPI@8eöý!ÿ.@8S33333@3‡ÎÙ‡+@3…oi@2ß²-V@2Ü‘ÑN;Í@1𖻘Çã@1ìÚQÎ@1𖻘Çã@1ëµsê´@1𖻘Çã@1ì£n.²?óA[ØïF?*£|3Né?–/¸Í”p?Uÿyu”#?šµV0o~8?•iá¸OL™? Eˆ‡ðó‹?“-N•I`(?”€@N¯â?’k­ªì¢H?¢£xŒ(Â7?šºi 0/¥?–Ϥ?þ,DöP?“àÕèéa‚?„XïWÉò~?%üdêË?Ò0aˆ‡‡@@@@@,@(?ð?ð?ð?ð?ð?ð¿W[UÁ6¿Zæ02 +?P›ä‰ÇÍ?K™ª\õV@¢°„­C¨ù@¨ûØìfy„?oú“{IÞ?e*ˆÚðôë?Óál³‹%?µ}+åÎ*Þ@Ÿl'螎@À@§[~ùÛ"Ñ@§[‚p„ÿà@§[~ùÛ"Ñ@§[dŽŠqß@§[~ùÛ"Ñ@§[_b¶®}@§[~ùÛ"Ñ@§[E8ï4×@§[~ùÛ"Ñ@§[ªÍž„@§[~ùÛ"Ñ@§[–ý!ÿ.@šÃ•%@šÌ`¿V@šÃ•%@š€ëíúC@šÃ•%@šTzáG®@šÃ•%@š6È´9X@šÃ•%@›0:û~@šÃ•%@šï²- @8=:’£@8GõÅ;n@3E?|í‘h@32×sü@2È“t¼j@2¯Š Þ@2fYJôðØ@2vs×Ûõ@2fYJôðØ@2<ÌÌÌÌÍ@2fYJôðØ@2 Ì?¯AŸð~“?¬úh¬‹îÂ?…ÅBðrç?ð¢dx/?׈à(ì?ÈÂÙ`Ý|?´ºúÌ!{’?³³¬è®û›?Ÿ|–„aQ?ðfÁbÂô?ø«RCK¼?˜m7>ên?‹&¸ê±fÂ?¨jN‹­÷R@?ð@@@(@(?ð?ð?ð?ð?ð?ð?o¬Qç:?‡vAg8€?‘½6‚óÇQ?„ý¦>;3c@­­ìMôã@­Ñ +H\?«÷s‚s ?œÛ f0&Í@;ÞzÙ0È@®‡|s @Ÿ`{…¤ @Â@­töÈ´9X@­t÷KƧñ@­töÈ´9X@­tû=ÈL@­töÈ´9X@­týIQ‚ª@­töÈ´9X@­uä÷eÿ@­töÈ´9X@­tüÚQ@­töÈ´9X@­tú)Çy¨@¥pyXbN@¥pyXbN@¥pyXbN@¥p{çl‹E@¥pyXbN@¥pxQë…@¥pyXbN@¥pz¬Ùè=@¥pyXbN@¥px_ö”@¥pyXbN@¥py‡+@4Œ]cˆe”@4ŒIº^5@@2+¥ãS÷Ï@2(>BZîc@1š~ùÛ"Ñ@1”ohÜ@1 ù kº@0ÿØ­«ŸV@1 ù kº@1-w1Å@1 ù kº@1ò×s?}Ñ¿ž,?¥nÇx?)?ššÒèôɲ?•oÕ=\<Â?’š'†­`í?’T«¥-ÚN?}Ñ¿ž,?“xß–ø6œ?– íÇyz?“¶Ì¶Öj”?• ¸°R¨?”Æ*%>g?‚oÁÆÜ§ö?þþoÀM?‰ÕäÖ‚‚?‡õ{CxÞ?‹aÊ•TI?‰Â“yä–ê@@@@@(@,?ð?ð?ð?ð?ð?ð?QÕÝôп.Z?L¿›*¬W?*¼'9DÂã@­tù;@¥pyT²ˆ½?m nèÒB$?J‚óÕˆO?â‰FË‘?›rD‰è–…@Ÿeâ­Û'Á@Ã@¤Ò…¡ÊÀƒ@¤Ò…¡ÊÀƒ@¤Ò…¡ÊÀƒ@¤Ò†?@¤Ò…¡ÊÀƒ@¤Ò†$Ý/@¤Ò…¡ÊÀƒ@¤Ò† +¦L/@¤Ò…¡ÊÀƒ@¤Ò…F +¦L@¤Ò…¡ÊÀƒ@¤Ò„Âø7µ@®=ë…¸@®=©ûçn@®=ë…¸@®=ÊW§‡@®=ë…¸@®=T`ªf@®=ë…¸@®=Î_@®=ë…¸@®=a|Ú@®=ë…¸@®=GE8ï@3åöý!ÿ.@3åðoiDh@0O|í‘hr@0O±[W>«@/¥¡ÊÀƒ@/¦$Ý/ @/­úCþ\’@/¯'»/ìX@/­úCþ\’@/®}Vlô @/­úCþ\’@/®cŠ ?|¬Çëý ?äm°û0Ž?‘ÌË>¯f?‹ë¤½?‡á?‘çG¸?âé¨ë7F?|öOÿÝ?’ +‰¸Ì?~ËQ§?Hª¦ºón?îCq$u?ƒÁþGEÛ?‚‹¡8*ùÿ?Œ».êxóÚ?‚¸“Îè ø?ƒ ?ÿ½?†¼Š˜L¥÷?†¼Š˜L¥÷@@@@@(@(?ð?ð?ð?ð?ð?ð¿_Le@?q˜Ó@?Iaè?ä°‰Êí@¤Ò…|u~Ä@®=Õ;ž8?fÂ1åþe?…Û÷<б?‡ß‡R% +@Ÿf꼄IA@Ä@®ò#× +=q@®ò(´9X@®ò#× +=q@®òš@®ò#× +=q@®òÆ?@®ò#× +=q@®ò -à@®ò#× +=q@®òÅ€@®ò#× +=q@®òÎÙ‡@§‚\(ö@§fffff@§‚\(ö@§÷ÎÙ‡@§‚\(ö@§ó¶E¢@§‚\(ö@§½¥ž@§‚\(ö@§†Á½¦@§‚\(ö@§ÿ;dZ@804mÅÖ8@8#©*0U2@3‡ÎÙ‡+@3W ù k¹@3“t¼@2Ï—$tS@2ý!ÿ.I@1íæšÔ,=@2ý!ÿ.I@1óZ…‡“Þ@2ý!ÿ.I@1ðbMÒñª?„F/·ÿP5?”·'‚5â–?“mî–‚Žr? Í‹hÆ?–ç=ìW·¹?”ÙA!Xá¨?…ÅBðrç?¿è„åÕ?À!ÕÞBL¾?ÏGjH>?Ò¨òv‡í?ÌBL«³?¥×»xG–?”kcÿä©Ú?‹ÛÛÐïF?‘V]9½êV?—H—‹‰ +0?¬øþÓQ@@@@@,@,?ð?ð?ð?ð?ð?ð¿pdóŸ¿ + Òüu?Ÿ”ºs¶Q?¸ùåá+"@ŸqÙǨ@È@¬„záG®@¬„¼j~ú@¬„záG®@¬„,<ží@¬„záG®@¬„¨Xy>@¬„záG®@¬„%F +¦@¬„záG®@¬„3333@¬„záG®@¬„,<ží@¡x!G®{@¡x Ä›¥ã@¡x!G®{@¡x!G®{@¡x!G®{@¡x Ä›¥â@¡x!G®{@¡x"MÒñª@¡x!G®{@¡x!|ÚQ@¡x!G®{@¡x ƒn˜@4 ]cˆe”@4 £n.²@0ahr° Ä@0aœàuöý@/ ƒn—Ž@/¡:’£R@/¸7´¢3œ@/¹e+ÓÃa@/¸7´¢3œ@/¸Çâ‚@¸@/¸7´¢3œ@/¹JôðØD?|öOÿÝ?/³)sšÌ?‘:€¾¶ˆ?‹ë¤½?‡á?‘5ø gµÒ?âé¨ë7F?}Ñ¿ž,?’ +‰¸Ì?«'Q™µ?>\‰å‘?‘+ùÔ!½‹?›ªU3Îp?ƒúʳ_Ã?Œµ3‰;šÏ?‚á²Olºý?ƒ†+ Å?†ÃÛSPã?‡ã ËÄž@@@@@,@,?ð?ð?ð?ð?ð?ð¿$“à2@?×=Ÿ`?&)"&yE(?)by—þëW@¬„tœ@¡x!3£L?F,½¼â?IÓ#ÉÑ5ì?šw C÷Q? ¶J »¼D@ŸgÁ“`[@É@¤$ºáG®@¤$§ï²,@¤$ºáG®@¤$¾ÿ—$@¤$ºáG®@¤$½ÈK^@¤$ºáG®@¤$¼ú¬Ùè@¤$ºáG®@¤$¹=Ùc@¤$ºáG®@¤$Çï²-@®wgl‹C–@®w}ó¶E¡@®wgl‹C–@®wdZ¬@®wgl‹C–@®wh1&éz@®wgl‹C–@®weãS÷Ï@®wgl‹C–@®whð@®wgl‹C–@®w•Â\)@6àØDЩ@6ÉXbMÓ@2ÜIº^5?@2ÛàÞÒˆÎ@2²-V@2\(õÂ@1ýcˆe”°@1û~ÿ—%@1ýcˆe”°@1û/ìVÕÐ@1ýcˆe”°@2ÊW§†Â?¶™b’jk±?½Ë9ØŠ§?’µ<ëvar?Ž £Ú?‘§›ßÉîj?–ËÒÙI°?¶™b’jk±?“ý•‘|?Ê +ä\ä?‘3)10ÑF?‘„ÅMè?•±ŽnBTß?É ‘˜çZ?\{ÏïŽ?†aÞàI*•?…âC£½¾Ý?‡2[síç?”ø™¾@@@@@"@&?ð?ð?ð?ð?ð?ð?n8â½ö?Œ«zŒ?jùާC?„šK.aR2@¤$½½ùTê@®wp‚Ö–?y·©ÿ1¿è?”USuðUH?ê[ ñëÒ„@Ú½Eeaì@ŸqEh^Rp@Ê@¯¼œ¬1'@¯¼ŽÙ‡+@¯¼œ¬1'@¯¼.—Oß@¯¼œ¬1'@¯¼T,<ží@¯¼œ¬1'@¯¼E¡ÊÀƒ@¯¼œ¬1'@¯¼ uöý!@¯¼œ¬1'@¯¼š@ŸÃ]/Ÿ¾@ŸÃKC•@ŸÃ]/Ÿ¾@ŸºÊqÞi­@ŸÃ]/Ÿ¾@Ÿ»Ž¾ß¤@@ŸÃ]/Ÿ¾@Ÿ¹¸ -à@ŸÃ]/Ÿ¾@Ÿ»BÃÉîÍ@ŸÃ]/Ÿ¾@ŸºåÉä@8kµsê´@8c•$Ý@5k¥ãS÷Ï@4BëC,¥@5å`A‰7@3ŒC,¥zx@4ÚQÎ@2Îp:û~‘@4ÚQÎ@2ׯ·é@4ÚQÎ@2ÛP°ò{³?ªÝ8Ⱥ™J?²Z£éð ?³K¸šïHä?›À‰¥xsÎ?ªõ9Vc‚ ?¬–f¥Ï?·à¦_ëý?Äyï ~L?àQ‹Àn?ºº!Ú?à>Êš€Cq?Þ÷•pŠ«u?Äz§6À¿?•ða˜,F?£?k2ö5?†Á{0Ÿà®?¢¼@•&ö?¢VÂÀ@@@@@,@*?ð?ð?ð?ð?ð?ð¿˜Òš£@¿Ù¹÷†œ°?ksHØ*¬?¶oí94 ë@¯¼[—@Ÿ½Z]ÿ?†Ož<}?Ðø®/?Åo?Ú{ /gv@: I ò€4@Ÿd–!}zi@Ë@§ò Iº^@§òÃ× +=q@§ò Iº^@§òÄtSŽó@§ò Iº^@§ò²n—P@§ò Iº^@§òÂMÒñª@§ò Iº^@§òÂ\(ö@§ò Iº^@§òÂ&€J@×Þ5?|î@×õ?|í‘@×Þ5?|î@×Ö8†YL@×Þ5?|î@×ïiDg8@×Þ5?|î@×áÿ.Hê@×Þ5?|î@×ãn.±Å@×Þ5?|î@×ÜwškQ@7àØDЩ@7á‰7Kƨ@3pÄ›¥ãT@3nÅm\ú­@2ÝV”@2ßHË’:@2Eœàu÷@2F”FsØ@2Eœàu÷@2G$tSŽô@2Eœàu÷@2FÕϪ͟?’Óusÿ\Ã?™Ô_ Ï ý?£ÃŠëyŠ?’ñ¼wn-?“XMHñëž?’_‘Oo¨Ž?¢F^ì¼Sð?•¤-'Ä,?œT¹o¿‹õ?“ÅëJkÙ?“4¦{ºÕ?“{P»á? øk@×õ{?‘ÌAzÁý?‰ZaizÚD?‹8¹ª?‹¼`’ i2?ˆk! ¨l@@@@@*@&?ð?ð?ð?ð?ð?ð¿5CÆÈ¿`–íŒ.€?ñF%žKÃ?H¯Lfˆd¦@§ò  j@×ãÓ +‘ã?:a݂½-?ahdí‚T?ob´²I?´O*NÍ:™@Ÿn¡9½q…@Ì@¦Ñhr°!@¦Ò-V@¦Ñhr°!@¦æfffg@¦Ñhr°!@¦ܬ1(@¦Ñhr°!@¦Ûšu@¦Ñhr°!@¦ÙrGE9@¦Ñhr°!@¦ß±[W?@£žD›¥ãT@£žKC•@£žD›¥ãT@£žE‡“ݘ@£žD›¥ãT@£žG“Ý—÷@£žD›¥ãT@£ž9=Ùc@£žD›¥ãT@£žKƧïž@£žD›¥ãT@£žN;Í5¨@7ãg ù l@7Úxl"h +@3óS÷ÎÙ@3èDЩ*@3²-V@3$Ý/ @2œÚQÎ@2’T`ªdÃ@2œÚQÎ@2‹ Iº_@2œÚQÎ@2Œ64ë?Ž=fA:?¡D&d4?œrôeEÜ?“êXÔ #{? òñJÏg?œH÷A”mà?Œs¤DÅÐ?šækM..?™ ?G·W?’îy†Ò‡‚?¢]dÔ}Ê?¢K‡À3I?¤¤zP¼z?”3®èÚ ?qÂ' +Bœ?“ÍÁ!÷G?’d­©‡ò?‘ýÂHåÅÐ@@@@@,@,?ð?ð?ð?ð?ð?ð?ej7H¿\‰ÂÄ?A>ÈÑÇ;W?jh,@¦ØUPÍ@£žDÙây2?`ZâòC?ˆ_‡Ùë)?²župb»Ë@¯ñ00 @Ÿgw]…@Í@©\7ÎÙ‡@©\7 +=p¤@©\7ÎÙ‡@©\4¯O „@©\7ÎÙ‡@©\?b¶®}@©\7ÎÙ‡@©\A×Ûôˆ@©\7ÎÙ‡@©\:…‡“Þ@©\7ÎÙ‡@©\Cˆe”¯@ Æ»çl‹D@ Æ½/Ÿ¾@ Æ»çl‹D@ Æ¿.Hè§@ Æ»çl‹D@ ÆÀ@ Æ»çl‹D@ Æ¾ í(@ Æ»çl‹D@ ÆÕL˜_@ Æ»çl‹D@ ÆÆ§ï²@6쿱[X@6¤?åÉ@3sS÷ÎÙ@3pƒn—@2Ú~ùÛ"Ñ@2à:û~‘@2Š0U2a|@2†µ '¼@2Š0U2a|@2•¸Që…@2Š0U2a|@2…8ï4Ö¢?žˆ2}?’ÕOäª9ô?”lš5B¬î?Œ9‚Ù.?™¼wX¬?—>æV¡¶$?1·†Æjñ?•yom?˜“º£¹‡b?‘3)10ÑF?˜ +†Y ë*?žƒ2¶Í¾?š¡‚\i?[™ÕÈ™8?ޏQë…¹?‹µ¼a?¥VËMª¼‰?°4\ɵ@@@@@*@,?ð?ð?ð?ð?ð?ð?d–êû +?h‘µg?Q+«Þfá¡?`\Z ×ø?@©\¦ß°D@Ÿe8á›S=@Î@®#Z¬1@®#Z¬1@®#Z¬1@®#Zîc‹@®#Z¬1@®#XºÇÊ@®#Z¬1@®#\(õÂ@®#Z¬1@®#X -à@®#Z¬1@®#Y=Ùc@¤ÐÜ(õÂ@¤ÐÜ(õÂ@¤ÐÜ(õÂ@¤ÐÜ64@¤ÐÜ(õÂ@¤ÐÚ^5?}@¤ÐÜ(õÂ@¤ÐÛ=ÈK@¤ÐÜ(õÂ@¤ÐÛÍ5¨X@¤ÐÜ(õÂ@¤ÐÚ–¼@2°4mÅÖ8@2°A‰7KÆ@0Ùº^5?|@0Øè§æš@0±‰7Kƨ@0°°ò{²ÿ@0!:’£T@0 ƒn—Ž@0!:’£T@0 ¾ í(@0!:’£T@0 ØDЪ?É^òÀXæN?Qdöÿô¼?‘`×›mÏ?‹×lÇ…N9?‘çG¸?ÛF»0?ÐbMçê_x?’,ö´´Ï#?ÀpMºÅ?K·‘d]?‘Ú‚ýc¯?b¶­-Óx?€b¡´ñ@?ŒÂ§dß±?ƒmÕ+&¬Š?ƒE 8?†ùadô|?†ïRÉv‘Ñ@@@@@*@(?ð?ð?ð?ð?ð?ð¿V‹Lˆì¿>?¾U?D`?¦x¿¹?;gxµ'YÊ@®#Z?ÄáÔ@¤ÐÛ¹XÒ?Sž¿wÅj?Iüiµª?¢ŽõMÂ?6O2œ<@Ÿs8…ð@Ï@­ö˜bMÓ@­ö˜Që… @­ö˜bMÓ@­ö²-V@­ö˜bMÓ@­ö hÛ‹¬@­ö˜bMÓ@­ö¥ãS÷Ï@­ö˜bMÓ@­ö˜üPH@­ö˜bMÓ@­ö˜Çâ‚A@¥Wçl‹C–@¥Wçl‹C–@¥Wçl‹C–@¥W×süP@¥Wçl‹C–@¥WÁ°‰ '@¥Wçl‹C–@¥WÂÃÉîÌ@¥Wçl‹C–@¥WÀÄ›¥ã@¥Wçl‹C–@¥Wµsê³g@4|ÚQ@4G®zâ@1Ê^5?|í@1Áë…¸R@1¬j~ùÛ#@1›ÚQÎ@1œàu÷@0òa|ÚQ@1œàu÷@0òþÅm\û@1œàu÷@0óÝ—ö+k?|öOÿÝ?%¼ÇÆÃ±?”lš5B¬î?’~ò™rV?’2’Ö¼9?“°™²!¨w?|¬Çëý ?™ Ê£ð‡V?¦Ì· ”?¥fóa]G?¡^候¼?¯{Æì5è?‚‘´…=Ca?ŒÛÏ·+?‚Ì ÝŽ‚8?„XïWÉò~?ˆ¾þúWZ‹?–¨¬:­÷@@@@@*@,?ð?ð?ð?ð?ð?ð?H2¤•x¿…BI@?XÂtÐÒ?QÙ9âfR@­öšŸËÆ@¥WØ +þ…?ve&¾úµI?jÕ½Ÿµ?ûqÌÓ|?ÉÌóáoÝÓ@ŸaE›8ÉF@Ð@¥÷+ Iº@¥÷+ Iº@¥÷+ Iº@¥÷*¦L/ƒ@¥÷+ Iº@¥÷+ Iº@¥÷+ Iº@¥÷+6z‘@¥÷+ Iº@¥÷)ûçl‹@¥÷+ Iº@¥÷* Þ@­,G®zá@­,G®zá@­,G®zá@­,H1&éy@­,G®zá@­,H´9X@­,G®zá@­,H1&éy@­,G®zá@­,IxÔýô@­,G®zá@­,HXy=Ú@3úqÞi­C@3ú¦L/ƒ|@0O|í‘hr@0Ov_Ø­¬@/÷Oß;d@/÷$tSŽó@/ +#9Àëî@/ …ðoiE@/ +#9Àëî@/ º^5?}@/ +#9Àëî@/ ÞѸ?}Ñ¿ž,?ß‹’bÏ?‘jh¨qã9?‹Æ úJ-M?‘ä~|+?æöæ×t?|¬Çëý ?’7Îf¬ps?«'Q™µ?CÚ B÷?äú’ Date: Thu, 7 Aug 2025 16:39:05 -0700 Subject: [PATCH 086/124] debug: --- flystar/startables.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flystar/startables.py b/flystar/startables.py index ce7e5bf..90b1a70 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -991,7 +991,7 @@ def fit_velocities_all_detected(self, motion_model_to_fit, weighting='var', epoc for j, param in fit_params: param_data[param][i] = params[j] param_data[param+'_err'][i] = param_errs[j] - chi2x, chi2y = motion_model_to_fit.get_chi2([params], [t0], time, x, y, xe, ye) + chi2x, chi2y = motion_model_to_fit.get_chi2(params, [t0], time, x, y, xe, ye) param_data['chi2_x'][i] = chi2x param_data['chi2_y'][i] = chi2y From 13a523a430a3abda10c7830142b497dd04f3f8fc Mon Sep 17 00:00:00 2001 From: Lingfeng Wei Date: Thu, 7 Aug 2025 16:42:38 -0700 Subject: [PATCH 087/124] Fix undefined startable --- flystar/motion_model.py | 6 +++--- flystar/startables.py | 30 +++++++++++++++--------------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 2429a0b..dddcb4e 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -91,13 +91,13 @@ def fit_motion_model(self, t, x, y, xe, ye, t0, bootstrap=0, weighting='var'): param_errs[inf_errs] = 0.0 return params, param_errs - - def get_chi2(self,fit_params,fixed_params, t,x,y,xe,ye,reduced=False): + + def get_chi2(self, fit_params, fixed_params, t, x, y, xe, ye, reduced=False): """ Get the chi^2 value for the current MM and the input data. """ - x_pred,y_pred = self.get_pos_at_time(fit_params,fixed_params, t) + x_pred, y_pred = self.get_pos_at_time(fit_params, fixed_params, t) chi2x = np.sum((x-x_pred)**2 / xe**2) chi2y = np.sum((y-y_pred)**2 / ye**2) if reduced: diff --git a/flystar/startables.py b/flystar/startables.py index ce7e5bf..8bbcc86 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -903,7 +903,7 @@ def fit_velocities_all_detected(self, motion_model_to_fit, weighting='var', epoc Parameters ---------- motion_model_to_fit : MotionModel - motion model object to use for fitting all stars + Motion model object to use for fitting all stars weighting : str, optional Variance weighting('var') or standard deviation weighting ('std'), by default 'var' epoch_cols : str or list of intergers, optional @@ -954,9 +954,9 @@ def fit_velocities_all_detected(self, motion_model_to_fit, weighting='var', epoc # START FORMER FIT VELOCITY FUNCITON if epoch_cols is None: - epoch_cols = np.arange(len(startable.meta['YEARS'])) # use all cols if not specified` - - N = len(startable) + epoch_cols = np.arange(len(self.meta['YEARS'])) # use all cols if not specified` + + N = len(self) fit_params = motion_model_to_fit.fitter_param_names param_data = {p: np.zeros(N) for p in fit_params} param_data.update({p+'_err': np.zeros(N) for p in fit_params}) @@ -964,20 +964,20 @@ def fit_velocities_all_detected(self, motion_model_to_fit, weighting='var', epoc param_data['chi2_x'] = np.zeros(N) param_data['chi2_y'] = np.zeros(N) - time = np.array(startable.meta['YEARS'])[epoch_cols] + time = np.array(self.meta['YEARS'])[epoch_cols] if not art_star: - x_arr = startable['x'][:, epoch_cols] - y_arr = startable['y'][:, epoch_cols] + x_arr = self['x'][:, epoch_cols] + y_arr = self['y'][:, epoch_cols] else: - x_arr = startable['x'][:, epoch_cols, 1] - y_arr = startable['y'][:, epoch_cols, 1] - - xe_arr = startable['xe'][:, epoch_cols] - ye_arr = startable['ye'][:, epoch_cols] - + x_arr = self['x'][:, epoch_cols, 1] + y_arr = self['y'][:, epoch_cols, 1] + + xe_arr = self['xe'][:, epoch_cols] + ye_arr = self['ye'][:, epoch_cols] + # For each star - for i in tqdm(range(len(startable))): + for i in tqdm(range(N)): x = x_arr[i] y = y_arr[i] xe = xe_arr[i] @@ -988,7 +988,7 @@ def fit_velocities_all_detected(self, motion_model_to_fit, weighting='var', epoc params, param_errs = motion_model_to_fit.fit_motion_model(time, x, y, xe, ye, t0, weighting=weighting) if 't0' in motion_model_to_fit.fixed_param_names: param_data['t0'][i] = t0 - for j, param in fit_params: + for j, param in enumerate(fit_params): param_data[param][i] = params[j] param_data[param+'_err'][i] = param_errs[j] chi2x, chi2y = motion_model_to_fit.get_chi2([params], [t0], time, x, y, xe, ye) From c29daaad7d7c16bdf5754b13a717ae32f008aafe Mon Sep 17 00:00:00 2001 From: Lingfeng Wei Date: Thu, 7 Aug 2025 17:51:49 -0700 Subject: [PATCH 088/124] Added test function for fit_velocities_detected_all --- flystar/startables.py | 6 ++-- ...linear_vel.fits => test_all_detected.fits} | 0 flystar/tests/test_startable.py | 28 +++++++++++++++++++ 3 files changed, 32 insertions(+), 2 deletions(-) rename flystar/tests/{test_linear_vel.fits => test_all_detected.fits} (100%) diff --git a/flystar/startables.py b/flystar/startables.py index ad26d24..8b1d40f 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -1,4 +1,4 @@ -from astropy.table import Table, Column, hstack +from astropy.table import Table, Column, MaskedColumn, hstack from astropy.stats import sigma_clipping from astropy.time import Time from scipy.optimize import curve_fit @@ -11,6 +11,7 @@ import time import copy from flystar import motion_model +import pandas as pd class StarTable(Table): """ @@ -1010,7 +1011,8 @@ def fit_velocities_all_detected(self, motion_model_to_fit, weighting='var', epoc # Update self for column in columns: column_array = np.ma.zeros(N_stars) - column_array[detected_in_all_epochs] = vel_result[column] + print(vel_result[column]) + column_array = MaskedColumn(vel_result[column], dtype=float) column_array[~detected_in_all_epochs] = np.nan column_array.mask = ~detected_in_all_epochs self[column] = column_array diff --git a/flystar/tests/test_linear_vel.fits b/flystar/tests/test_all_detected.fits similarity index 100% rename from flystar/tests/test_linear_vel.fits rename to flystar/tests/test_all_detected.fits diff --git a/flystar/tests/test_startable.py b/flystar/tests/test_startable.py index feda0d6..0bc7f1a 100644 --- a/flystar/tests/test_startable.py +++ b/flystar/tests/test_startable.py @@ -494,6 +494,34 @@ def test_fit_velocities_2epoch(): return +def test_fit_velocities_all_detected(): + """ + Test the fit_velocities function when all stars are detected in all epochs. + """ + tab = StarTable.read(test_dir + '/test_all_detected.fits') + tab_orig = tab.copy() + + epochs = ['2005_F814W', '2010_F160W', '2013_F160W', '2015_F160W'] + epoch_cols = [['_'.join(_.split('_')[:2]) for _ in tab.meta['EPNAMES']].index(epoch) for epoch in epochs] + + mm = Linear(use_scipy=False, absolute_sigma=False) + tab.fit_velocities_all_detected( + weighting='var', + motion_model_to_fit=mm, + ) + + # Check that the output table has the expected columns + for col in ['n_fit', 't0', 'x0', 'y0', 'vx', 'vy', 'x0_err', 'y0_err', 'vx_err', 'vy_err']: + assert col in tab.colnames + + # Check that the fitted values match the original values + np.testing.assert_almost_equal(tab['x0'], tab_orig['x0']) + np.testing.assert_almost_equal(tab['y0'], tab_orig['y0']) + np.testing.assert_almost_equal(tab['vx'], tab_orig['vx']) + np.testing.assert_almost_equal(tab['vy'], tab_orig['vy']) + + return + def make_star_table(): # User input cat_file = test_dir + '/test_catalog.fits' From bf89b6f85a6051aca2701349afa32bfc6d13d3f5 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Fri, 8 Aug 2025 13:33:22 -0700 Subject: [PATCH 089/124] motion model import --- flystar/tests/test_startable.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/flystar/tests/test_startable.py b/flystar/tests/test_startable.py index 0bc7f1a..ad1db21 100644 --- a/flystar/tests/test_startable.py +++ b/flystar/tests/test_startable.py @@ -2,6 +2,7 @@ from astropy import table from flystar.startables import StarTable from flystar.starlists import StarList +from flystar import motion_model import numpy as np import pytest import os @@ -504,7 +505,7 @@ def test_fit_velocities_all_detected(): epochs = ['2005_F814W', '2010_F160W', '2013_F160W', '2015_F160W'] epoch_cols = [['_'.join(_.split('_')[:2]) for _ in tab.meta['EPNAMES']].index(epoch) for epoch in epochs] - mm = Linear(use_scipy=False, absolute_sigma=False) + mm = motion_model.Linear(use_scipy=False, absolute_sigma=False) tab.fit_velocities_all_detected( weighting='var', motion_model_to_fit=mm, From b252fbb0c58ff1eae7fb3a4917dae48f7372df4f Mon Sep 17 00:00:00 2001 From: Lingfeng Wei Date: Fri, 8 Aug 2025 15:25:20 -0700 Subject: [PATCH 090/124] Fix test_fit_velocities_all_detected --- flystar/motion_model.py | 4 ++-- flystar/startables.py | 1 - flystar/tests/test_startable.py | 11 +++++++++-- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index dddcb4e..2ba6846 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -237,8 +237,8 @@ def linear(t, c0, c1): # Use https://en.wikipedia.org/wiki/Weighted_least_squares#Solution scheme x = np.array(x) y = np.array(y) - t = np.array(t) - X_mat_t = np.vander(t, 2) + dt = np.array(dt) + X_mat_t = np.vander(dt, 2) # x calculation W_mat_x = np.diag(x_wt) XTWX_mat_x = X_mat_t.T @ W_mat_x @ X_mat_t diff --git a/flystar/startables.py b/flystar/startables.py index 8b1d40f..a5bb496 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -1011,7 +1011,6 @@ def fit_velocities_all_detected(self, motion_model_to_fit, weighting='var', epoc # Update self for column in columns: column_array = np.ma.zeros(N_stars) - print(vel_result[column]) column_array = MaskedColumn(vel_result[column], dtype=float) column_array[~detected_in_all_epochs] = np.nan column_array.mask = ~detected_in_all_epochs diff --git a/flystar/tests/test_startable.py b/flystar/tests/test_startable.py index 0bc7f1a..8cbb478 100644 --- a/flystar/tests/test_startable.py +++ b/flystar/tests/test_startable.py @@ -1,5 +1,6 @@ from astropy.table import Table from astropy import table +from flystar import motion_model from flystar.startables import StarTable from flystar.starlists import StarList import numpy as np @@ -500,14 +501,17 @@ def test_fit_velocities_all_detected(): """ tab = StarTable.read(test_dir + '/test_all_detected.fits') tab_orig = tab.copy() + # tab = tab[:1] epochs = ['2005_F814W', '2010_F160W', '2013_F160W', '2015_F160W'] epoch_cols = [['_'.join(_.split('_')[:2]) for _ in tab.meta['EPNAMES']].index(epoch) for epoch in epochs] - - mm = Linear(use_scipy=False, absolute_sigma=False) + + mm = motion_model.Linear(use_scipy=False, absolute_sigma=False) tab.fit_velocities_all_detected( weighting='var', motion_model_to_fit=mm, + epoch_cols=epoch_cols, + art_star=True ) # Check that the output table has the expected columns @@ -517,8 +521,11 @@ def test_fit_velocities_all_detected(): # Check that the fitted values match the original values np.testing.assert_almost_equal(tab['x0'], tab_orig['x0']) np.testing.assert_almost_equal(tab['y0'], tab_orig['y0']) + np.testing.assert_almost_equal(tab['t0'], tab_orig['t0']) np.testing.assert_almost_equal(tab['vx'], tab_orig['vx']) np.testing.assert_almost_equal(tab['vy'], tab_orig['vy']) + np.testing.assert_almost_equal(tab['vxe'], tab_orig['vxe']) + np.testing.assert_almost_equal(tab['vye'], tab_orig['vye']) return From 454e49735b4448ccdb1219e9a5cc7d63c93f5a39 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 14 Aug 2025 12:20:29 -0700 Subject: [PATCH 091/124] move fitter options into fit_velocities functions, not motion_model objects --- flystar/align.py | 3 +++ flystar/motion_model.py | 42 +++++++++++++++++++++++++++-------------- flystar/startables.py | 22 ++++++++++++--------- 3 files changed, 44 insertions(+), 23 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 14926d9..811fabe 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -2434,6 +2434,9 @@ def transform_from_object(starlist, transform): if err: xe = starlist_f['xe'] ye = starlist_f['ye'] + else: + xe = np.zeros(len(starlist_f)) + ye = np.zeros(len(starlist_f)) if vel: x0 = starlist_f['x0'] diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 2ba6846..9777152 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -41,7 +41,8 @@ def get_batch_pos_at_time(self, t): #return x, y, x_err, y_err pass - def run_fit(self, t, x, y, xe, ye, t0, weighting='var'): + def run_fit(self, t, x, y, xe, ye, t0, weighting='var', + use_scipy=True, absolute_sigma=True): # Run a single fit (used both for overall fit + bootstrap iterations) pass @@ -63,13 +64,15 @@ def scale_errors(self, errs, weighting='var'): warnings.warn("Invalid weighting, using default weighting scheme var.", UserWarning) return errs - def fit_motion_model(self, t, x, y, xe, ye, t0, bootstrap=0, weighting='var'): + def fit_motion_model(self, t, x, y, xe, ye, t0, bootstrap=0, weighting='var', + use_scipy=True, absolute_sigma=True): """ Fit the input positions on the sky and errors to determine new parameters for this motion model (MM). Best-fit parameters will be returned along with uncertainties. """ - params, param_errs = self.run_fit(t, x, y, xe, ye, t0, weighting=weighting) + params, param_errs = self.run_fit(t, x, y, xe, ye, t0, weighting=weighting, + use_scipy=use_scipy, absolute_sigma=absolute_sigma) if bootstrap>0 and len(x)>(self.n_pts_req): edx = np.arange(len(x), dtype=int) @@ -79,7 +82,9 @@ def fit_motion_model(self, t, x, y, xe, ye, t0, bootstrap=0, weighting='var'): bdx = np.random.choice(edx, len(x)) while len(np.unique(bdx)) 0 and finite, x/y not masked. @@ -986,7 +989,8 @@ def fit_velocities_all_detected(self, motion_model_to_fit, weighting='var', epoc t0 = np.average(time, weights=1. / np.hypot(xe, ye)) # Run fit and record results - params, param_errs = motion_model_to_fit.fit_motion_model(time, x, y, xe, ye, t0, weighting=weighting) + params, param_errs = motion_model_to_fit.fit_motion_model(time, x, y, xe, ye, t0, weighting=weighting, + use_scipy=use_scipy, absolute_sigma=absolute_sigma) if 't0' in motion_model_to_fit.fixed_param_names: param_data['t0'][i] = t0 for j, param in enumerate(fit_params): From dd50d1878bb948952cbdf818d2d0b52b4d47c130 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 14 Aug 2025 12:25:19 -0700 Subject: [PATCH 092/124] move fitter settings for fit_velocities_all_detected test --- flystar/tests/test_startable.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/flystar/tests/test_startable.py b/flystar/tests/test_startable.py index f405101..9962c05 100644 --- a/flystar/tests/test_startable.py +++ b/flystar/tests/test_startable.py @@ -507,9 +507,10 @@ def test_fit_velocities_all_detected(): epochs = ['2005_F814W', '2010_F160W', '2013_F160W', '2015_F160W'] epoch_cols = [['_'.join(_.split('_')[:2]) for _ in tab.meta['EPNAMES']].index(epoch) for epoch in epochs] - mm = motion_model.Linear(use_scipy=False, absolute_sigma=False) + mm = motion_model.Linear() tab.fit_velocities_all_detected( weighting='var', + use_scipy=False, absolute_sigma=False, motion_model_to_fit=mm, epoch_cols=epoch_cols, art_star=True From 1bf24d8a1d6799d54598c2a775abc84772002054 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 14 Aug 2025 17:52:18 -0700 Subject: [PATCH 093/124] change motion_model tests for updates --- flystar/tests/test_motion_model.py | 182 +++++++++++++++-------------- 1 file changed, 93 insertions(+), 89 deletions(-) diff --git a/flystar/tests/test_motion_model.py b/flystar/tests/test_motion_model.py index facb2af..a5d8fdb 100755 --- a/flystar/tests/test_motion_model.py +++ b/flystar/tests/test_motion_model.py @@ -9,21 +9,19 @@ def within_error(true_val, fit_val, fit_err, n_sigma=3): def test_Fixed(): # Test handling of a single star true_params = {'x0': 1.0, 'y0':0.5, 'x0_err':0.1, 'y0_err':0.1} - mod_true = motion_model.Fixed(**true_params) - param_list = mod_true.fitter_param_names + mod = motion_model.Fixed() + param_list = mod.fitter_param_names + fixed_param_list = mod.fixed_param_names # Confirm return of proper values for single t and array t - x_t, y_t = mod_true.get_pos_at_time(0.0) + x_t, y_t = mod.get_pos_at_time([true_params[p] for p in param_list], + [true_params[p] for p in fixed_param_list], 0.0) assert x_t==true_params['x0'] assert y_t==true_params['y0'] - x_t, y_t = mod_true.get_pos_at_time([0.0,mod_true.t0,10000]) + x_t, y_t = mod.get_pos_at_time([true_params[p] for p in param_list], + [true_params[p] for p in fixed_param_list], + [0.0,2025.0,10000]) assert (x_t==true_params['x0']).all() assert (y_t==true_params['y0']).all() - x_err_t, y_err_t = mod_true.get_pos_err_at_time(0.0) - assert x_err_t==true_params['x0_err'] - assert y_err_t==true_params['y0_err'] - x_err_t, y_err_t = mod_true.get_pos_err_at_time([0.0,mod_true.t0,10000]) - assert (x_err_t==true_params['x0_err']).all() - assert (y_err_t==true_params['y0_err']).all() # Check behavior of get_batch_pos_at_time x0_batch = np.random.uniform(-2.0,2.0, 50) @@ -32,7 +30,7 @@ def test_Fixed(): y0_err_batch = np.repeat(0.1, 50) # Single epoch t_batch=2020.0 - x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod_true.get_batch_pos_at_time(t_batch, + x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod.get_batch_pos_at_time(t_batch, x0=x0_batch, y0=y0_batch, x0_err=x0_err_batch, y0_err=y0_err_batch) assert (x_t_batch==x0_batch).all() assert (y_t_batch==y0_batch).all() @@ -40,7 +38,7 @@ def test_Fixed(): assert (y_err_t_batch==y0_err_batch).all() # Multiple times t_batch = np.arange(2015.0,2025.0, 0.5) - x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod_true.get_batch_pos_at_time(t_batch, + x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod.get_batch_pos_at_time(t_batch, x0=x0_batch, y0=y0_batch, x0_err=x0_err_batch, y0_err=y0_err_batch) assert (x_t_batch==np.array([np.repeat(x0_batch_i, len(t_batch)) for x0_batch_i in x0_batch])).all() assert (y_t_batch==np.array([np.repeat(y0_batch_i, len(t_batch)) for y0_batch_i in y0_batch])).all() @@ -50,13 +48,15 @@ def test_Fixed(): # Test fitter t = np.arange(2015.0,2025.0, 0.5) # Get values from model and add scatter - x_true, y_true = mod_true.get_pos_at_time(t) - x_true_err, y_true_err = mod_true.get_pos_err_at_time(t) - x_sim = np.random.normal(x_true, x_true_err) - y_sim = np.random.normal(y_true, y_true_err) + x_true, y_true = mod.get_pos_at_time([true_params[p] for p in param_list], + [true_params[p] for p in fixed_param_list], t) + x_sim = np.random.normal(x_true, true_params['x0_err']) + y_sim = np.random.normal(y_true, true_params['y0_err']) # Run fit - mod_fit = motion_model.Fixed() - params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) + params, param_errs = mod.fit_motion_model(t, x_sim,y_sim, + np.ones(len(t))*true_params['x0_err'], + np.ones(len(t))*true_params['y0_err'], + np.nan) # Confirm true value is within error bar of fit value assert np.all([within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))]) @@ -66,22 +66,21 @@ def test_Linear(): true_params = {'x0': 1.0, 'y0':0.5, 'x0_err':0.1, 'y0_err':0.1, 'vx':0.2, 'vy':0.5, 'vx_err':0.05, 'vy_err':0.05, 't0':2025.0} - mod_true = motion_model.Linear(**true_params) - param_list = mod_true.fitter_param_names + mod = motion_model.Linear() + param_list = mod.fitter_param_names + fixed_param_list = mod.fixed_param_names # Confirm return of proper values for single t=t0 and array t - x_t, y_t = mod_true.get_pos_at_time(mod_true.t0) + x_t, y_t = mod.get_pos_at_time([true_params[p] for p in param_list], + [true_params[p] for p in fixed_param_list], + true_params['t0']) assert x_t==true_params['x0'] assert y_t==true_params['y0'] - t_arr = np.array([2010.0,mod_true.t0,2030.0]) - x_t, y_t = mod_true.get_pos_at_time(t_arr) - assert (x_t==(true_params['x0'] + (t_arr-mod_true.t0)*true_params['vx'])).all() - assert (y_t==(true_params['y0'] + (t_arr-mod_true.t0)*true_params['vy'])).all() - x_err_t, y_err_t = mod_true.get_pos_err_at_time(mod_true.t0) - assert x_err_t==true_params['x0_err'] - assert y_err_t==true_params['y0_err'] - x_err_t, y_err_t = mod_true.get_pos_err_at_time(t_arr) - assert (x_err_t==np.hypot(true_params['x0_err'],(t_arr-mod_true.t0)*true_params['vx_err'])).all() - assert (y_err_t==np.hypot(true_params['y0_err'],(t_arr-mod_true.t0)*true_params['vy_err'])).all() + t_arr = np.array([2010.0,true_params['t0'],2030.0]) + x_t, y_t = mod.get_pos_at_time([true_params[p] for p in param_list], + [true_params[p] for p in fixed_param_list], + t_arr) + assert (x_t==(true_params['x0'] + (t_arr-true_params['t0'])*true_params['vx'])).all() + assert (y_t==(true_params['y0'] + (t_arr-true_params['t0'])*true_params['vy'])).all() # Check behavior of get_batch_pos_at_time x0_batch = np.random.uniform(-2.0,2.0, 50) @@ -95,7 +94,7 @@ def test_Linear(): t0_batch = np.repeat(2025.0,50) # Single epoch t_batch=2020.0 - x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod_true.get_batch_pos_at_time(t_batch, + x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod.get_batch_pos_at_time(t_batch, x0=x0_batch, y0=y0_batch, x0_err=x0_err_batch, y0_err=y0_err_batch, vx=vx_batch, vy=vy_batch, vx_err=vx_err_batch, vy_err=vy_err_batch, t0=t0_batch) @@ -105,7 +104,7 @@ def test_Linear(): assert (y_err_t_batch==np.hypot(y0_err_batch, (t_batch-t0_batch)*vy_err_batch)).all() # Multiple times t_batch = np.arange(2015.0,2025.0, 0.5) - x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod_true.get_batch_pos_at_time(t_batch, + x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod.get_batch_pos_at_time(t_batch, x0=x0_batch, y0=y0_batch, x0_err=x0_err_batch, y0_err=y0_err_batch, vx=vx_batch, vy=vy_batch, vx_err=vx_err_batch, vy_err=vy_err_batch, t0=t0_batch) @@ -117,13 +116,13 @@ def test_Linear(): # Test fitter t = np.arange(2015.0,2025.0, 0.5) # Get values from model and add scatter - x_true, y_true = mod_true.get_pos_at_time(t) - x_true_err, y_true_err = mod_true.get_pos_err_at_time(t) - x_sim = np.random.normal(x_true, x_true_err) - y_sim = np.random.normal(y_true, y_true_err) + x_true, y_true = mod.get_pos_at_time([true_params[p] for p in param_list], + [true_params[p] for p in fixed_param_list],t) + x_sim = np.random.normal(x_true, 0.05) + y_sim = np.random.normal(y_true, 0.05) # Run fit - mod_fit = motion_model.Linear(t0=true_params['t0']) - params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) + params, param_errs = mod.fit_motion_model(t, x_sim,y_sim, + np.repeat(0.05, len(t)), np.repeat(0.05,len(t)), true_params['t0']) print(param_errs) # Confirm true value is within error bar of fit value assert np.all([within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))]) @@ -131,30 +130,34 @@ def test_Linear(): # Test fitter with bootstrap t = np.arange(2015.0,2025.0, 0.5) # Get values from model and add scatter - x_true, y_true = mod_true.get_pos_at_time(t) - x_true_err, y_true_err = mod_true.get_pos_err_at_time(t) + x_true, y_true = mod.get_pos_at_time([true_params[p] for p in param_list], + [true_params[p] for p in fixed_param_list],t) + x_true_err, y_true_err = np.repeat(0.05,len(t)), np.repeat(0.05,len(t)) x_sim = np.random.normal(x_true, x_true_err) y_sim = np.random.normal(y_true, y_true_err) # Run fit - mod_fit = motion_model.Linear(t0=true_params['t0']) - params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err,bootstrap=10) + params, param_errs = mod.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err, true_params['t0'],bootstrap=10) print(param_errs) # Confirm true value is within error bar of fit value assert np.all([within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))]) - # Test fitter for 2 pts - t = np.array([2015.0,2025.0]) - # Get values from model and add scatter - x_true, y_true = mod_true.get_pos_at_time(t) - x_true_err, y_true_err = mod_true.get_pos_err_at_time(t) - x_sim = np.random.normal(x_true, x_true_err) - y_sim = np.random.normal(y_true, y_true_err) - # Run fit - mod_fit = motion_model.Linear(t0=true_params['t0']) - params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) - print(param_errs) - # Confirm true value is within error bar of fit value - assert np.all([within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))]) +# # Test fitter for 2 pts +# t = np.array([2015.0,2025.0]) +# # Get values from model and add scatter +# x_true, y_true = mod.get_pos_at_time([true_params[p] for p in param_list], +# [true_params[p] for p in fixed_param_list],t) +# x_true_err, y_true_err = np.repeat(0.05,len(t)), np.repeat(0.05,len(t)) +# x_sim = np.random.normal(x_true, x_true_err) +# y_sim = np.random.normal(y_true, y_true_err) +# # Run fit +# mod_fit = motion_model.Linear(t0=true_params['t0']) +# params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err, true_params['t0']) +# print("DJSKBGJ",param_list) +# print([true_params[p] for p in param_list]) +# print(params) +# print(param_errs) +# # Confirm true value is within error bar of fit value +# assert np.all([within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params),2)]) def test_Acceleration(): @@ -163,24 +166,21 @@ def test_Acceleration(): 'vx0':0.2, 'vy0':0.5, 'vx0_err':0.05, 'vy0_err':0.05, 'ax':0.1, 'ay':-0.1, 'ax_err':0.02, 'ay_err':0.02, 't0':2025.0} - mod_true = motion_model.Acceleration(**true_params) - param_list = mod_true.fitter_param_names + mod = motion_model.Acceleration() + param_list = mod.fitter_param_names + fixed_param_list = mod.fixed_param_names # Confirm return of proper values for single t=t0 and array t - x_t, y_t = mod_true.get_pos_at_time(mod_true.t0) + x_t, y_t = mod.get_pos_at_time([true_params[p] for p in param_list], + [true_params[p] for p in fixed_param_list], + true_params['t0']) assert x_t==true_params['x0'] assert y_t==true_params['y0'] - t_arr = np.array([2010.0,mod_true.t0,2030.0]) - x_t, y_t = mod_true.get_pos_at_time(t_arr) - assert (x_t==(true_params['x0'] + (t_arr-mod_true.t0)*true_params['vx0'] + 0.5*(t_arr-mod_true.t0)**2*true_params['ax'])).all() - assert (y_t==(true_params['y0'] + (t_arr-mod_true.t0)*true_params['vy0'] + 0.5*(t_arr-mod_true.t0)**2*true_params['ay'])).all() - x_err_t, y_err_t = mod_true.get_pos_err_at_time(mod_true.t0) - assert x_err_t==true_params['x0_err'] - assert y_err_t==true_params['y0_err'] - x_err_t, y_err_t = mod_true.get_pos_err_at_time(t_arr) - assert (x_err_t==np.sqrt(true_params['x0_err']**2 + ((t_arr-mod_true.t0)*true_params['vx0_err'])**2 + - (0.5*(t_arr-mod_true.t0)**2*true_params['ax_err'])**2)).all() - assert (y_err_t==np.sqrt(true_params['y0_err']**2 + ((t_arr-mod_true.t0)*true_params['vy0_err'])**2 + - (0.5*(t_arr-mod_true.t0)**2*true_params['ay_err'])**2)).all() + t_arr = np.array([2010.0,true_params['t0'],2030.0]) + x_t, y_t = mod.get_pos_at_time([true_params[p] for p in param_list], + [true_params[p] for p in fixed_param_list], + t_arr) + assert (x_t==(true_params['x0'] + (t_arr-true_params['t0'])*true_params['vx0'] + 0.5*(t_arr-true_params['t0'])**2*true_params['ax'])).all() + assert (y_t==(true_params['y0'] + (t_arr-true_params['t0'])*true_params['vy0'] + 0.5*(t_arr-true_params['t0'])**2*true_params['ay'])).all() # Check behavior of get_batch_pos_at_time x0_batch = np.random.uniform(-2.0,2.0, 50) @@ -198,7 +198,7 @@ def test_Acceleration(): t0_batch = np.repeat(2025.0,50) # Single epoch t_batch=2020.0 - x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod_true.get_batch_pos_at_time(t_batch, + x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod.get_batch_pos_at_time(t_batch, x0=x0_batch, y0=y0_batch, x0_err=x0_err_batch, y0_err=y0_err_batch, vx0=vx0_batch, vy0=vy0_batch, vx0_err=vx0_err_batch, vy0_err=vy0_err_batch, ax=ax_batch, ay=ay_batch, ax_err=ax_err_batch, ay_err=ay_err_batch, @@ -211,7 +211,7 @@ def test_Acceleration(): (0.5*(t_batch-t0_batch)**2*ay_err_batch)**2)).all() # Multiple times t_batch = np.arange(2015.0,2025.0, 0.5) - x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod_true.get_batch_pos_at_time(t_batch, + x_t_batch, y_t_batch, x_err_t_batch, y_err_t_batch = mod.get_batch_pos_at_time(t_batch, x0=x0_batch, y0=y0_batch, x0_err=x0_err_batch, y0_err=y0_err_batch, vx0=vx0_batch, vy0=vy0_batch, vx0_err=vx0_err_batch, vy0_err=vy0_err_batch, ax=ax_batch, ay=ay_batch, ax_err=ax_err_batch, ay_err=ay_err_batch, @@ -224,13 +224,17 @@ def test_Acceleration(): # Test fitter t = np.arange(2015.0,2025.0, 0.5) # Get values from model and add scatter - x_true, y_true = mod_true.get_pos_at_time(t) - x_true_err, y_true_err = mod_true.get_pos_err_at_time(t) + x_true, y_true = mod.get_pos_at_time([true_params[p] for p in param_list], + [true_params[p] for p in fixed_param_list],t) + x_true_err = np.sqrt(true_params['x0_err']**2 + ((t-true_params['t0'])*true_params['vx0_err'])**2 + + (0.5*(t-true_params['t0'])**2*true_params['ax_err'])**2) + y_true_err = np.sqrt(true_params['y0_err']**2 + ((t-true_params['t0'])*true_params['vy0_err'])**2 + + (0.5*(t-true_params['t0'])**2*true_params['ay_err'])**2) x_sim = np.random.normal(x_true, x_true_err) y_sim = np.random.normal(y_true, y_true_err) # Run fit - mod_fit = motion_model.Acceleration(t0=mod_true.t0) - params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) + mod_fit = motion_model.Acceleration(t0=true_params['t0']) + params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err, true_params['t0']) # Confirm true value is within error bar of fit value assert np.all([within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))]) @@ -241,19 +245,21 @@ def test_Parallax(): 'vx':-0.2, 'vy':0.5, 'vx_err':0.05, 'vy_err':0.05, 'pi':0.5, 'RA':17.76, 'Dec':-28.933, 'PA':0, 't0':2020.0} - mod_true = motion_model.Parallax(**true_params) - param_list = mod_true.fitter_param_names + mod = motion_model.Parallax(**{'RA':17.76, 'Dec':-28.933, 'PA':0}) + param_list = mod.fitter_param_names + fixed_param_list = mod.fixed_param_names + print(param_list) # Test fitter t = np.arange(2015.0,2025.0, 0.5) # Get values from model and add scatter - x_true, y_true = mod_true.get_pos_at_time(t) - x_true_err, y_true_err = mod_true.get_pos_err_at_time(t) + x_true, y_true = mod.get_pos_at_time([true_params[p] for p in param_list], + [true_params[p] for p in fixed_param_list],t) + x_true_err, y_true_err = np.repeat(0.1,len(t)), np.repeat(0.1,len(t)) x_sim = np.random.normal(x_true, x_true_err) y_sim = np.random.normal(y_true, y_true_err) # Run fit - mod_fit = motion_model.Parallax(RA=17.76, Dec=-28.933, PA=0, t0=mod_true.t0) - params, param_errs = mod_fit.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err) + params, param_errs = mod.fit_motion_model(t, x_sim,y_sim, x_true_err, y_true_err, true_params['t0']) # Confirm true value is within error bar of fit value assert np.all([within_error(true_params[param_list[i]], params[i], param_errs[i]) for i in range(len(params))]) @@ -264,13 +270,11 @@ def test_Parallax_PA(): vx, vy = 0.2, 0.5 RA, Dec = 17.76, -28.933 pi = 0.5 - mod_pa0 = motion_model.Parallax(x0=x0,vx=vx,y0=y0,vy=vy,pi=pi, - RA=RA,Dec=Dec,t0=2020.0, PA=0) + mod_pa0 = motion_model.Parallax(RA=RA,Dec=Dec, PA=0) # Set PA=90 model with equivalent parameters in that frame - mod_pa90 = motion_model.Parallax(x0=y0,vx=vy,y0=-x0,vy=-vx,pi=pi, - RA=RA,Dec=Dec,t0=2020.0, PA=90) + mod_pa90 = motion_model.Parallax(RA=RA,Dec=Dec,t0=2020.0, PA=90) t_set = np.arange(2018,2024,0.01) - dat_pa0 = mod_pa0.get_pos_at_time(t_set) - dat_pa90 = mod_pa90.get_pos_at_time(t_set) + dat_pa0 = mod_pa0.get_pos_at_time([x0,vx,y0,vy,pi],[2020.0],t_set) + dat_pa90 = mod_pa90.get_pos_at_time([y0,vy,-x0,-vx,pi],[2020.0],t_set) assert (np.abs(dat_pa0[0]-(-dat_pa90[1]))<1e-10).all() assert (np.abs(dat_pa0[1]-(dat_pa90[0]))<1e-10).all() From ed803320da47915ea77964ae79bf51bef3610fe4 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 27 Aug 2025 15:09:58 -0700 Subject: [PATCH 094/124] remove some unecessary fitting --- flystar/align.py | 39 +++++++++++++++++++++++++-------------- 1 file changed, 25 insertions(+), 14 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 811fabe..36f7cf5 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -325,7 +325,7 @@ def fit(self): self.match_lists(self.dr_tol[-1], self.dm_tol[-1]) # Hard-coded not to keep ref values for MosaicSelfRef - self.update_ref_table_aggregates(False) + self.update_ref_table_aggregates() ########## # Clean up output table. @@ -498,7 +498,15 @@ def match_and_transform(self, ref_mag_lim, dr_tol, dm_tol, outlier_tol, trans_ar ### Update the "average" values to be used as the reference frame for the next list. keep_ref_orig = (self.update_ref_orig==False) or (self.update_ref_orig=='atend') or (self.update_ref_orig=='periter' and ii<(len(self.star_lists)-1)) - self.update_ref_table_aggregates(keep_ref_orig) + if keep_ref_orig and ii<(len(self.star_lists)-1): + keep_orig = np.where(self.ref_table['ref_orig'] | np.isnan(self.ref_table['x'][:,ii]))[0] + elif keep_ref_orig: + keep_orig = np.where(self.ref_table['ref_orig'])[0] + elif ii<(len(self.star_lists)-1): + keep_orig = np.where(np.isnan(self.ref_table['x'][:,ii]))[0] + else: + keep_orig=None + self.update_ref_table_aggregates(keep_orig=keep_orig) # Print out some metrics if self.verbose > 0: @@ -797,7 +805,7 @@ def update_ref_table_from_list(self, star_list, star_list_T, ii, idx_ref, idx_li return - def update_ref_table_aggregates(self, keep_ref_orig, n_boot=0): + def update_ref_table_aggregates(self, keep_orig=None, n_boot=0): """ Average positions or fit velocities. Average magnitudes. @@ -809,20 +817,19 @@ def update_ref_table_aggregates(self, keep_ref_orig, n_boot=0): """ # Keep track of the original reference values. # In certain cases, we will NOT update these. - if keep_ref_orig: - ref_orig_idx = np.where(self.ref_table['ref_orig'] == True)[0] + if keep_orig is not None: vals_orig = {} - vals_orig['m0'] = self.ref_table['m0'][ref_orig_idx] - vals_orig['m0_err'] = self.ref_table['m0_err'][ref_orig_idx] + vals_orig['m0'] = self.ref_table['m0'][keep_orig] + vals_orig['m0_err'] = self.ref_table['m0_err'][keep_orig] motion_model_class_names = self.ref_table['motion_model_input'].tolist() if 'motion_model_used' in self.ref_table.keys(): - motion_model_class_names += self.ref_table['motion_model_used'][ref_orig_idx].tolist() - vals_orig['motion_model_used'] = self.ref_table['motion_model_used'][ref_orig_idx] + motion_model_class_names += self.ref_table['motion_model_used'][keep_orig].tolist() + vals_orig['motion_model_used'] = self.ref_table['motion_model_used'][keep_orig] motion_model_col_names = motion_model.get_list_motion_model_param_names(motion_model_class_names, with_errors=True, with_fixed=True) for mm in motion_model_col_names: if mm in self.ref_table.keys(): - vals_orig[mm] = self.ref_table[mm][ref_orig_idx] - fit_star_idxs = np.where(self.ref_table['ref_orig'] == False)[0] + vals_orig[mm] = self.ref_table[mm][keep_orig] + fit_star_idxs = [idx for idx in range(len(self.ref_table)) if idx not in keep_orig] else: fit_star_idxs = None #pdb.set_trace() @@ -847,9 +854,9 @@ def update_ref_table_aggregates(self, keep_ref_orig, n_boot=0): self.ref_table.combine_lists('m', weights_col=weights_col, ismag=True) #pdb.set_trace() # Replace the originals if we are supposed to keep them fixed. - if keep_ref_orig: + if keep_orig is not None: for val in vals_orig.keys(): - self.ref_table[val][ref_orig_idx] = vals_orig[val] + self.ref_table[val][keep_orig] = vals_orig[val] #pdb.set_trace() return @@ -1622,7 +1629,11 @@ def fit(self): self.match_lists(self.dr_tol[-1], self.dm_tol[-1]) keep_ref_orig = (self.update_ref_orig==False) - self.update_ref_table_aggregates(keep_ref_orig) + if keep_ref_orig: + keep_orig = np.where(self.ref_table['ref_orig'])[0] + else: + keep_orig=None + self.update_ref_table_aggregates(keep_orig=keep_orig) ########## # Clean up output table. From 1c80e66bef296e1c26756b6349c16d24a48bd8db Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 28 Aug 2025 11:24:22 -0700 Subject: [PATCH 095/124] remove fit_velocities.py --- flystar/startables.py | 1 - 1 file changed, 1 deletion(-) diff --git a/flystar/startables.py b/flystar/startables.py index 0a41859..a56a79f 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -2,7 +2,6 @@ from astropy.stats import sigma_clipping from astropy.time import Time from scipy.optimize import curve_fit -#from flystar.fit_velocity import linear_fit, calc_chi2, linear, fit_velocity from tqdm import tqdm import numpy as np import warnings From 495690b65d5602f6dac045a776e0db851563f560 Mon Sep 17 00:00:00 2001 From: Lingfeng Wei Date: Thu, 28 Aug 2025 11:42:31 -0700 Subject: [PATCH 096/124] Add select_idx function and single epoch case --- flystar/startables.py | 133 +++++++++++++++++++++++------------------- 1 file changed, 73 insertions(+), 60 deletions(-) diff --git a/flystar/startables.py b/flystar/startables.py index 0a41859..ff08dfc 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -547,7 +547,7 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b weighting : str, optional Weight by variance 'var' or standard deviation 'std', by default 'var' bootstrap : int, optional - Calculate uncertain using bootstraping or not, by default 0 + Calculate uncertainty using bootstraping or not, by default 0 fixed_t0 : bool or array-like, optional Fix the t0 in dt = time - t0 if user provides an array with the same length of the table, or automatically calculate t0 = np.average(time, weights=1/np.hypot(xe, ye)) if False, by default False verbose : bool, optional @@ -754,7 +754,7 @@ def fit_velocity_for_star(self, ss, motion_model_dict, weighting='var', use_scip if isinstance(mask_lists, list): if all(isinstance(item, int) for item in mask_lists): t.mask[mask_lists] = True - + # Throw a warning if mask_lists is not a list if not isinstance(mask_lists, list): raise RuntimeError('mask_lists needs to be a list.') @@ -899,8 +899,8 @@ def get_star_positions_at_time(self, t, motion_model_dict, allow_alt_models=True return x,y,xe,ye - def fit_velocities_all_detected(self, motion_model_to_fit, weighting='var', use_scipy=True, absolute_sigma=True, - default_motion_model='Linear', epoch_cols='all', mask_val=None, art_star=False, return_result=False): + def fit_velocities_all_detected(self, motion_model_to_fit, weighting='var', use_scipy=True, absolute_sigma=True, times=None, + select_stars=None, epoch_cols='all', mask_val=None, art_star=False, return_result=False): """Fit velocities for stars detected in all epochs specified by epoch_cols. Criterion: xe/ye error > 0 and finite, x/y not masked. @@ -910,6 +910,8 @@ def fit_velocities_all_detected(self, motion_model_to_fit, weighting='var', use_ Motion model object to use for fitting all stars weighting : str, optional Variance weighting('var') or standard deviation weighting ('std'), by default 'var' + select_idx : array-like, optional + Indices of stars to select for fitting, by default None (fit all detected stars) epoch_cols : str or list of intergers, optional List of epoch column indices used for fitting velocity, by default 'all' mask_val : float, optional @@ -926,100 +928,111 @@ def fit_velocities_all_detected(self, motion_model_to_fit, weighting='var', use_ """ N_stars = len(self) - + if select_stars is None: + select_stars = np.arange(N_stars) + else: + select_stars = np.asarray(select_stars) + if epoch_cols == 'all': epoch_cols = np.arange(np.shape(self['x'])[1]) - + # Artificial Star if art_star: - detected_in_all_epochs = np.all(self['det'][:, epoch_cols], axis=1) - + detected_in_all_epochs = np.all(self['det'][select_stars, :][:, epoch_cols], axis=1) + # Observation Star else: - valid_xe = np.all(self['xe'][:, epoch_cols]!=0, axis=1) & np.all(np.isfinite(self['xe'][:, epoch_cols]), axis=1) - valid_ye = np.all(self['ye'][:, epoch_cols]!=0, axis=1) & np.all(np.isfinite(self['ye'][:, epoch_cols]), axis=1) - + valid_xe = np.all(self['xe'][select_stars, :][:, epoch_cols]!=0, axis=1) & np.all(np.isfinite(self['xe'][select_stars, :][:, epoch_cols]), axis=1) + valid_ye = np.all(self['ye'][select_stars, :][:, epoch_cols]!=0, axis=1) & np.all(np.isfinite(self['ye'][select_stars, :][:, epoch_cols]), axis=1) + if mask_val: - x = np.ma.masked_values(self['x'][:, epoch_cols], mask_val) - y = np.ma.masked_values(self['y'][:, epoch_cols], mask_val) - + x = np.ma.masked_values(self['x'][select_stars, :][:, epoch_cols], mask_val) + y = np.ma.masked_values(self['y'][select_stars, :][:, epoch_cols], mask_val) + # If no mask, convert x.mask to list if not np.ma.is_masked(x): - x.mask = np.zeros_like(self['x'][:, epoch_cols].data, dtype=bool) + x.mask = np.zeros_like(self['x'][select_stars, :][:, epoch_cols].data, dtype=bool) if not np.ma.is_masked(y): - y.mask = np.zeros_like(self['y'][:, epoch_cols].data, dtype=bool) - + y.mask = np.zeros_like(self['y'][select_stars, :][:, epoch_cols].data, dtype=bool) + valid_x = ~np.any(x.mask, axis=1) valid_y = ~np.any(y.mask, axis=1) detected_in_all_epochs = np.logical_and.reduce(( valid_x, valid_y, valid_xe, valid_ye)) else: detected_in_all_epochs = np.logical_and(valid_xe, valid_ye) - - # START FORMER FIT VELOCITY FUNCITON - if epoch_cols is None: - epoch_cols = np.arange(len(self.meta['YEARS'])) # use all cols if not specified` - N = len(self) + N = len(self['x'][select_stars, :]) fit_params = motion_model_to_fit.fitter_param_names param_data = {p: np.zeros(N) for p in fit_params} param_data.update({p+'_err': np.zeros(N) for p in fit_params}) param_data.update({p: np.zeros(N) for p in motion_model_to_fit.fixed_param_names}) param_data['chi2_x'] = np.zeros(N) param_data['chi2_y'] = np.zeros(N) + + if times is None: + if 'YEARS' in self.meta: + times = np.array(self.meta['YEARS'])[epoch_cols] + elif 't' in self.colnames: + times = self['t'][0, epoch_cols] + else: + raise ValueError("No valid time column found.") - time = np.array(self.meta['YEARS'])[epoch_cols] - if not art_star: - x_arr = self['x'][:, epoch_cols] - y_arr = self['y'][:, epoch_cols] + x_arr = self['x'][select_stars, :][:, epoch_cols] + y_arr = self['y'][select_stars, :][:, epoch_cols] else: - x_arr = self['x'][:, epoch_cols, 1] - y_arr = self['y'][:, epoch_cols, 1] - - xe_arr = self['xe'][:, epoch_cols] - ye_arr = self['ye'][:, epoch_cols] - - # For each star - for i in tqdm(range(N)): - x = x_arr[i] - y = y_arr[i] - xe = xe_arr[i] - ye = ye_arr[i] - t0 = np.average(time, weights=1. / np.hypot(xe, ye)) - - # Run fit and record results - params, param_errs = motion_model_to_fit.fit_motion_model(time, x, y, xe, ye, t0, weighting=weighting, - use_scipy=use_scipy, absolute_sigma=absolute_sigma) - if 't0' in motion_model_to_fit.fixed_param_names: - param_data['t0'][i] = t0 - for j, param in enumerate(fit_params): - param_data[param][i] = params[j] - param_data[param+'_err'][i] = param_errs[j] - chi2x, chi2y = motion_model_to_fit.get_chi2(params, [t0], time, x, y, xe, ye) - param_data['chi2_x'][i] = chi2x - param_data['chi2_y'][i] = chi2y + x_arr = self['x'][select_stars, :][:, epoch_cols, 1] + y_arr = self['y'][select_stars, :][:, epoch_cols, 1] + + xe_arr = self['xe'][select_stars, :][:, epoch_cols] + ye_arr = self['ye'][select_stars, :][:, epoch_cols] + # Only fit for >1 epochs, otherwise all velocities will be 0 + if len(epoch_cols) > 1: + # For each star + for i in tqdm(range(N)): + x = x_arr[i] + y = y_arr[i] + xe = xe_arr[i] + ye = ye_arr[i] + t0 = np.average(times, weights=1. / np.hypot(xe, ye)) + + # Run fit and record results + params, param_errs = motion_model_to_fit.fit_motion_model( + times, x, y, xe, ye, t0, weighting=weighting, + use_scipy=use_scipy, absolute_sigma=absolute_sigma + ) + if 't0' in motion_model_to_fit.fixed_param_names: + param_data['t0'][i] = t0 + for j, param in enumerate(fit_params): + param_data[param][i] = params[j] + param_data[f'{param}_err'][i] = param_errs[j] + chi2x, chi2y = motion_model_to_fit.get_chi2(params, [t0], times, x, y, xe, ye) + param_data['chi2_x'][i] = chi2x + param_data['chi2_y'][i] = chi2y + vel_result = Table.from_pandas(pd.DataFrame(param_data)) - # END FUNCTION - + # Add n_vfit n_fit = len(epoch_cols) vel_result['n_fit'] = n_fit - + # Clean/remove up old arrays. columns = [*vel_result.keys(), 'n_fit'] for column in columns: if column in self.colnames: self.remove_column(column) - + # Update self for column in columns: - column_array = np.ma.zeros(N_stars) - column_array = MaskedColumn(vel_result[column], dtype=float) - column_array[~detected_in_all_epochs] = np.nan - column_array.mask = ~detected_in_all_epochs + column_array = MaskedColumn(np.ma.zeros(N_stars), dtype=float, name=column) + column_array[select_stars] = vel_result[column] + column_array[select_stars][~detected_in_all_epochs] = np.nan + column_array.mask[select_stars] = ~detected_in_all_epochs + # Mask unselected indices + column_array.mask[~np.isin(np.arange(N_stars), select_stars)] = True self[column] = column_array - + if return_result: return vel_result else: From fef5025204c02983ce0d711dc0d7f9c9e0ba5b38 Mon Sep 17 00:00:00 2001 From: Lingfeng Wei Date: Thu, 28 Aug 2025 11:42:59 -0700 Subject: [PATCH 097/124] Default t0 to 0 --- flystar/motion_model.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 9777152..bf79502 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -41,7 +41,7 @@ def get_batch_pos_at_time(self, t): #return x, y, x_err, y_err pass - def run_fit(self, t, x, y, xe, ye, t0, weighting='var', + def run_fit(self, t, x, y, xe, ye, t0=0, weighting='var', use_scipy=True, absolute_sigma=True): # Run a single fit (used both for overall fit + bootstrap iterations) pass @@ -64,14 +64,14 @@ def scale_errors(self, errs, weighting='var'): warnings.warn("Invalid weighting, using default weighting scheme var.", UserWarning) return errs - def fit_motion_model(self, t, x, y, xe, ye, t0, bootstrap=0, weighting='var', + def fit_motion_model(self, t, x, y, xe, ye, t0=0, bootstrap=0, weighting='var', use_scipy=True, absolute_sigma=True): """ Fit the input positions on the sky and errors to determine new parameters for this motion model (MM). Best-fit parameters will be returned along with uncertainties. """ - params, param_errs = self.run_fit(t, x, y, xe, ye, t0, weighting=weighting, + params, param_errs = self.run_fit(t, x, y, xe, ye, t0=t0, weighting=weighting, use_scipy=use_scipy, absolute_sigma=absolute_sigma) if bootstrap>0 and len(x)>(self.n_pts_req): @@ -82,7 +82,7 @@ def fit_motion_model(self, t, x, y, xe, ye, t0, bootstrap=0, weighting='var', bdx = np.random.choice(edx, len(x)) while len(np.unique(bdx)) Date: Thu, 28 Aug 2025 12:04:27 -0700 Subject: [PATCH 098/124] Nothing but code format change --- flystar/align.py | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 36f7cf5..7ccfff6 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -841,10 +841,15 @@ def update_ref_table_aggregates(self, keep_orig=None, n_boot=0): self.ref_table.combine_lists_xym(weighted_xy=weighted_xy, weighted_m=weighted_m) else: - # Combine positions with a velocity fit. - self.ref_table.fit_velocities(bootstrap=n_boot, verbose=self.verbose, - default_motion_model=self.default_motion_model, select_stars=fit_star_idxs, - motion_model_dict=self.motion_model_dict) + + + self.ref_table.fit_velocities( + bootstrap=n_boot, + verbose=self.verbose, + default_motion_model=self.default_motion_model, + select_stars=fit_star_idxs, + motion_model_dict=self.motion_model_dict + ) # Combine (transformed) magnitudes if 'me' in self.ref_table.colnames: @@ -857,8 +862,6 @@ def update_ref_table_aggregates(self, keep_orig=None, n_boot=0): if keep_orig is not None: for val in vals_orig.keys(): self.ref_table[val][keep_orig] = vals_orig[val] - - #pdb.set_trace() return def get_weights_for_lists(self, ref_list, star_list): @@ -1233,7 +1236,11 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot # Now, do proper motion calculation, making sure to fix t0 to the # orig value (so we can get a reasonable error on x0, y0) - star_table.fit_velocities(fixed_t0=t0_arr, default_motion_model=self.default_motion_model, motion_model_dict=self.motion_model_dict) + star_table.fit_velocities( + fixed_t0=t0_arr, + default_motion_model=self.default_motion_model, + motion_model_dict=self.motion_model_dict + ) # Save proper motion fit results to output arrays for col in motion_col_list: From 0ce481497eaf4feed8c68f324348320a35fac91a Mon Sep 17 00:00:00 2001 From: Lingfeng Wei Date: Fri, 29 Aug 2025 14:33:39 -0700 Subject: [PATCH 099/124] Add use_scipy, absolute_sigma, and save_path in align.py --- flystar/align.py | 50 +++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 45 insertions(+), 5 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 7ccfff6..e67e635 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -12,6 +12,7 @@ import pdb import time import warnings +import pickle from astropy.utils.exceptions import AstropyUserWarning class MosaicSelfRef(object): @@ -26,6 +27,9 @@ def __init__(self, list_of_starlists, ref_index=0, iters=2, init_guess_mode='miracle', iter_callback=None, default_motion_model='Fixed', motion_model_dict = {}, + use_scipy=True, + absolute_sigma=False, + save_path=None, verbose=True): """ Make a mosaic object by passing in a list of starlists and then running fit(). @@ -121,13 +125,22 @@ def = None. If not None, then this should contain an array or list of transform iter_callback : None or function A function to call (that accepts a StarTable object and an iteration number) at the end of every iteration. This can be used for plotting or printing state. - + default_motion_model : string Name of motion model to use for new or unassigned stars - + motion_model_dict : None or dict Dict of motion model name keys (strings) and corresponding MotionModel object values + use_scipy : bool, optional + If True, use scipy.optimize.curve_fit for velocity fitting. If False, use linear algebra fitting, by default True. + + absolute_sigma : bool, optional + If True, the velocity fit will use absolute errors in the data. If False, relative errors will be used, by default False. + + save_path : str, optional + Path to save the MosaicSelfRef object as a pickle file. + verbose : int (0 to 9, inclusive) Controls the verbosity of print statements. (0 least, 9 most verbose). For backwards compatibility, 0 = False, 9 = True. @@ -178,9 +191,12 @@ def = None. If not None, then this should contain an array or list of transform self.trans_class = trans_class self.calc_trans_inverse = calc_trans_inverse self.motion_model_dict = motion_model_dict + self.use_scipy = use_scipy + self.absolute_sigma = absolute_sigma self.default_motion_model = default_motion_model self.init_guess_mode = init_guess_mode self.iter_callback = iter_callback + self.save_path = save_path self.verbose = verbose # For backwards compatibility. @@ -346,6 +362,9 @@ def fit(self): if self.iter_callback != None: self.iter_callback(self.ref_table, nn) + if self.save_path: + with open(self.save_path, 'wb') as file: + pickle.dump(self, file) return def match_and_transform(self, ref_mag_lim, dr_tol, dm_tol, outlier_tol, trans_args): @@ -845,6 +864,8 @@ def update_ref_table_aggregates(self, keep_orig=None, n_boot=0): self.ref_table.fit_velocities( bootstrap=n_boot, + use_scipy=self.use_scipy, + absolute_sigma=self.absolute_sigma, verbose=self.verbose, default_motion_model=self.default_motion_model, select_stars=fit_star_idxs, @@ -1239,7 +1260,9 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot star_table.fit_velocities( fixed_t0=t0_arr, default_motion_model=self.default_motion_model, - motion_model_dict=self.motion_model_dict + motion_model_dict=self.motion_model_dict, + use_scipy=self.use_scipy, + absolute_sigma=self.absolute_sigma ) # Save proper motion fit results to output arrays @@ -1332,6 +1355,9 @@ def __init__(self, ref_list, list_of_starlists, iters=2, iter_callback=None, default_motion_model='Fixed', motion_model_dict={}, + use_scipy=True, + absolute_sigma=False, + save_path=None, verbose=True): """ @@ -1459,6 +1485,15 @@ def = None. If not None, then this should contain an array or list of transform motion_model_dict : None or dict Dict of motion model name keys (strings) and corresponding MotionModel object values + use_scipy : bool, optional + If True, use scipy.optimize.curve_fit for velocity fitting. If False, use linear algebra fitting, by default True. + + absolute_sigma : bool, optional + If True, the velocity fit will use absolute errors in the data. If False, relative errors will be used, by default False. + + save_path : str, optional + Path to save the MosaicToRef object as a pickle file. + Example ---------- msc = align.MosaicToRef(my_gaia, list_of_starlists, iters=1, @@ -1501,8 +1536,9 @@ def = None. If not None, then this should contain an array or list of transform init_guess_mode=init_guess_mode, iter_callback=iter_callback, motion_model_dict=motion_model_dict, - verbose=verbose) - + verbose=verbose, use_scipy=use_scipy, + absolute_sigma=absolute_sigma, save_path=save_path) + self.ref_list = copy.deepcopy(ref_list) self.ref_mag_lim = ref_mag_lim self.update_ref_orig = update_ref_orig @@ -1660,6 +1696,10 @@ def fit(self): if self.iter_callback != None: self.iter_callback(self.ref_table, nn) + + if self.save_path: + with open(self.save_path, 'wb') as file: + pickle.dump(self, file) return def get_all_epochs(t): From c062a35b65690db692c6d1be7f8419472975fcad Mon Sep 17 00:00:00 2001 From: Lingfeng Wei Date: Fri, 29 Aug 2025 14:34:22 -0700 Subject: [PATCH 100/124] Reverting the t0 to be required parameter --- flystar/motion_model.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index bf79502..268f7da 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -41,7 +41,7 @@ def get_batch_pos_at_time(self, t): #return x, y, x_err, y_err pass - def run_fit(self, t, x, y, xe, ye, t0=0, weighting='var', + def run_fit(self, t, x, y, xe, ye, t0, weighting='var', use_scipy=True, absolute_sigma=True): # Run a single fit (used both for overall fit + bootstrap iterations) pass @@ -64,7 +64,7 @@ def scale_errors(self, errs, weighting='var'): warnings.warn("Invalid weighting, using default weighting scheme var.", UserWarning) return errs - def fit_motion_model(self, t, x, y, xe, ye, t0=0, bootstrap=0, weighting='var', + def fit_motion_model(self, t, x, y, xe, ye, t0, bootstrap=0, weighting='var', use_scipy=True, absolute_sigma=True): """ Fit the input positions on the sky and errors @@ -111,7 +111,7 @@ def get_chi2(self, fit_params, fixed_params, t, x, y, xe, ye, reduced=False): else: chi2x, chi2y = chi2x/(len(x)-self.n_params), chi2y/(len(x)-self.n_params) return chi2x,chi2y - + class Fixed(MotionModel): """ A non-moving motion model for a star on the sky. @@ -142,7 +142,7 @@ def get_batch_pos_at_time(self,t, else: return x0,y0,x0_err,y0_err - def run_fit(self, t, x, y, xe, ye, t0=0, weighting='var', params_guess=None, + def run_fit(self, t, x, y, xe, ye, t0, weighting='var', params_guess=None, use_scipy=True, absolute_sigma=True): if not use_scipy: Warning("Fixed model has no non-scipy fitter option. Running with scipy.") @@ -200,7 +200,7 @@ def get_batch_pos_at_time(self, t, x0=[],vx=[], y0=[],vy=[], t0=[], y_err = np.hypot(y0_err, vy_err*dt) return x,y,x_err,y_err - def run_fit(self, t, x, y, xe, ye, t0=0, weighting='var', params_guess=None, + def run_fit(self, t, x, y, xe, ye, t0, weighting='var', params_guess=None, use_scipy=True, absolute_sigma=True): dt = t-t0 x_wt, y_wt = self.get_weights(xe,ye, weighting=weighting) From 55ca61aa2ca08fa6326ff3feff2ac14c73967e1f Mon Sep 17 00:00:00 2001 From: Lingfeng Wei Date: Fri, 29 Aug 2025 14:35:15 -0700 Subject: [PATCH 101/124] Removing the all detected requirement for time array --- flystar/plots.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flystar/plots.py b/flystar/plots.py index 61df7c1..be6f0fe 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -1131,9 +1131,9 @@ def plot_quiver_residuals_all_epochs(tab, motion_model_dict={}, unit='arcsec', s n_ref = np.zeros(len(tab), dtype=int) motion_model_dict = motion_model.validate_motion_model_dict(motion_model_dict, tab, None) - i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] - xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], motion_model_dict, allow_alt_models=True) - + complete_times = np.array([np.unique(col[~np.isnan(col)])[0] for col in tab['t'].T]) + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(complete_times, motion_model_dict, allow_alt_models=True) + for ee in range(tab['x'].shape[1]): xt_mod = xt_mod_all[:,ee] yt_mod = yt_mod_all[:,ee] From 1f349e7e9200c35f484a6f25e244ae4ef697c3d2 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Fri, 29 Aug 2025 14:44:59 -0700 Subject: [PATCH 102/124] merging --- flystar/align.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 2ce0df7..53d12cc 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -824,7 +824,7 @@ def update_ref_table_from_list(self, star_list, star_list_T, ii, idx_ref, idx_li return - def update_ref_table_aggregates(self, keep_orig=None, n_boot=0): #, weighting='var', use_scipy=True, absolute_sigma=False, show_progress=True + def update_ref_table_aggregates(self, keep_orig=None, n_boot=0): """ Average positions or fit velocities. Average magnitudes. @@ -1083,9 +1083,6 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot 'var' or 'std' weighting for velocity fitting, by default 'var'. If 'var', use the variance of the residuals to weight the fit. If 'std', use the standard deviation of the residuals to weight the fit. - use_scipy: boolean - If True, use scipy.optimize.curve_fit to fit the velocity. If False, use flystar.fit_velocity.linear_fit, by default True. - absolute_sigma: boolean If True, use the absolute sigma in the velocity fitting. If False, use the relative sigma, by default False. From c696977b236566e7c757d76ab7a74c98d049e920 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Fri, 29 Aug 2025 14:57:09 -0700 Subject: [PATCH 103/124] fitter keyword debug --- flystar/align.py | 14 +++++++++++--- flystar/startables.py | 2 +- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 53d12cc..d26809b 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -187,6 +187,9 @@ def = None. If not None, then this should contain an array or list of transform self.mag_trans = mag_trans self.mag_lim = mag_lim self.weights = weights + self.weighting = 'var' + if self.weights is not None: + self.weighting=self.weights.split(',')[-1] self.trans_input = trans_input self.trans_class = trans_class self.calc_trans_inverse = calc_trans_inverse @@ -860,10 +863,15 @@ def update_ref_table_aggregates(self, keep_orig=None, n_boot=0): self.ref_table.combine_lists_xym(weighted_xy=weighted_xy, weighted_m=weighted_m) else: # Combine positions with a velocity fit. - self.ref_table.fit_velocities(bootstrap=n_boot, verbose=self.verbose, show_progress=(self.verbose>0), - default_motion_model=self.default_motion_model, select_stars=fit_star_idxs, + self.ref_table.fit_velocities(bootstrap=n_boot, + verbose=self.verbose, + show_progress=(self.verbose>0), + default_motion_model=self.default_motion_model, + select_stars=fit_star_idxs, motion_model_dict=self.motion_model_dict, - weighting=self.weighting, use_scipy=self.use_scipy, absolute_sigma=self.absolute_sigma) + weighting=self.weighting, + use_scipy=self.use_scipy, + absolute_sigma=self.absolute_sigma) # Combine (transformed) magnitudes if 'me' in self.ref_table.colnames: diff --git a/flystar/startables.py b/flystar/startables.py index b83d6c4..a0bf3e3 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -660,7 +660,7 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b fixed_t0=fixed_t0, default_motion_model=default_motion_model, mask_val=mask_val, mask_lists=mask_lists) else: - for ss in range(fit_star_idxs): + for ss in fit_star_idxs: self.fit_velocity_for_star(ss, motion_model_dict, weighting=weighting, bootstrap=bootstrap, use_scipy=use_scipy, absolute_sigma=absolute_sigma, fixed_t0=fixed_t0, default_motion_model=default_motion_model, From c8d818658299e882a268627b7116cd96799a5523 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 4 Sep 2025 17:50:13 -0700 Subject: [PATCH 104/124] debug weighting keywords --- flystar/align.py | 46 ++++++++++++++++++++++--------------- flystar/motion_model.py | 2 +- flystar/tests/test_align.py | 18 +++++++-------- 3 files changed, 37 insertions(+), 29 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index d26809b..7b00ba0 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -21,7 +21,7 @@ def __init__(self, list_of_starlists, ref_index=0, iters=2, outlier_tol=[None, None], trans_args=[{'order': 2}, {'order': 2}], init_order=1, - mag_trans=True, mag_lim=None, weights=None, + mag_trans=True, mag_lim=None, trans_weights=None, vel_weights='var', trans_input=None, trans_class=transforms.PolyTransform, calc_trans_inverse=False, init_guess_mode='miracle', iter_callback=None, @@ -89,11 +89,15 @@ def __init__(self, list_of_starlists, ref_index=0, iters=2, separately for each list and each iteration, you need to pass in a 2D array that has shape (N_lists, 2). - weights : str + trans_weights : str Either None (def), 'both,var', 'list,var', or 'ref,var' depending on whether you want to weight by the positional uncertainties (variances) in the individual starlists, or also with the uncertainties in the reference frame itself. Note weighting only works when there are positional uncertainties availabe. Other options include 'both,std', 'list,std', 'list,var'. + + vel_weights : str + Either 'var' (def) or 'std', depending on whether you want to weight the motion model + fits by the variance or standard deviation of the position data trans_input : array or list of transform objects def = None. If not None, then this should contain an array or list of transform @@ -186,10 +190,8 @@ def = None. If not None, then this should contain an array or list of transform self.init_order = init_order self.mag_trans = mag_trans self.mag_lim = mag_lim - self.weights = weights - self.weighting = 'var' - if self.weights is not None: - self.weighting=self.weights.split(',')[-1] + self.trans_weights = trans_weights + self.vel_weights = vel_weights self.trans_input = trans_input self.trans_class = trans_class self.calc_trans_inverse = calc_trans_inverse @@ -869,7 +871,7 @@ def update_ref_table_aggregates(self, keep_orig=None, n_boot=0): default_motion_model=self.default_motion_model, select_stars=fit_star_idxs, motion_model_dict=self.motion_model_dict, - weighting=self.weighting, + weighting=self.vel_weights, use_scipy=self.use_scipy, absolute_sigma=self.absolute_sigma) @@ -901,18 +903,18 @@ def get_weights_for_lists(self, ref_list, star_list): var_xlis = 0.0 var_ylis = 0.0 - if self.weights != None: - if self.weights == 'both,var': + if self.trans_weights != None: + if self.trans_weights == 'both,var': weight = 1.0 / (var_xref + var_xlis + var_yref + var_ylis) - if self.weights == 'both,std': + if self.trans_weights == 'both,std': weight = 1.0 / np.sqrt(var_xref + var_xlis + var_yref + var_ylis) - if self.weights == 'ref,var': + if self.trans_weights == 'ref,var': weight = 1.0 / (var_xref + var_yref) - if self.weights == 'ref,std': + if self.trans_weights == 'ref,std': weight = 1.0 / np.sqrt(var_xref + var_yref) - if self.weights == 'list,var': + if self.trans_weights == 'list,var': weight = 1.0 / (var_xlis + var_ylis) - if self.weights == 'list,std': + if self.trans_weights == 'list,std': weight = 1.0 / np.sqrt(var_xlis, var_ylis) else: weight = None @@ -1193,7 +1195,7 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot # Calculate weights based on weights keyword. If weights desired, will need to # make starlist objects for this - if self.weights != None: + if self.trans_weights != None: # In order for weights calculation to work, we need to apply a transformation # to the star_list_T so it is in the same units as ref_boot. So, we'll apply # the final transformation for the epoch to get close enough for the @@ -1354,7 +1356,7 @@ def __init__(self, ref_list, list_of_starlists, iters=2, trans_args=[{'order': 2}, {'order': 2}], init_order=1, mag_trans=True, mag_lim=None, ref_mag_lim=None, - weights=None, + trans_weights=None, vel_weights='var', trans_input=None, trans_class=transforms.PolyTransform, calc_trans_inverse=False, @@ -1428,11 +1430,15 @@ def __init__(self, ref_list, list_of_starlists, iters=2, If different from None, it indicates the minimum and maximum magnitude on the reference catalog for finding the transformations. - weights : str + trans_weights : str Either None (def), 'both,var', 'list,var', or 'ref,var' depending on whether you want to weight by the positional uncertainties (variances) in the individual starlists, or also with the uncertainties in the reference frame itself. Note weighting only works when there are positional uncertainties availabe. Other options include 'both,std', 'list,std', 'list,var'. + + vel_weights : str + Either 'var' (def) or 'std', depending on whether you want to weight the motion model + fits by the variance or standard deviation of the position data trans_input : array or list of transform objects def = None. If not None, then this should contain an array or list of transform @@ -1538,7 +1544,8 @@ def = None. If not None, then this should contain an array or list of transform dr_tol=dr_tol, dm_tol=dm_tol, outlier_tol=outlier_tol, trans_args=trans_args, init_order=init_order, - mag_trans=mag_trans, mag_lim=mag_lim, weights=weights, + mag_trans=mag_trans, mag_lim=mag_lim, + trans_weights=trans_weights, vel_weights=vel_weights, trans_input=trans_input, trans_class=trans_class, calc_trans_inverse=calc_trans_inverse, default_motion_model = default_motion_model, @@ -1606,7 +1613,8 @@ def fit(self): logger(_log, ' mag_trans = ' + str(self.mag_trans), self.verbose) logger(_log, ' mag_lim = ' + str(self.mag_lim), self.verbose) logger(_log, ' ref_mag_lim = ' + str(self.ref_mag_lim), self.verbose) - logger(_log, ' weights = ' + str(self.weights), self.verbose) + logger(_log, ' trans_weights = ' + str(self.trans_weights), self.verbose) + logger(_log, ' vel_weights = ' + str(self.vel_weights), self.verbose) logger(_log, ' trans_input = ' + str(self.trans_input), self.verbose) logger(_log, ' trans_class = ' + str(self.trans_class), self.verbose) logger(_log, ' calc_trans_inverse = ' + str(self.calc_trans_inverse), self.verbose) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 268f7da..ebf4c46 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -57,7 +57,7 @@ def get_weights(self, xe, ye, weighting='var'): def scale_errors(self, errs, weighting='var'): if weighting=='std': - return errs**2 + return np.array(errs)**2 elif weighting=='var': return errs else: diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index d94d34c..6a63a58 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -1073,7 +1073,7 @@ def test_MosaicToRef_hst_me(): use_ref_new=False, update_ref_orig=False, mag_trans=False, - weights='both,std', + trans_weights='both,std', init_guess_mode='miracle', verbose=False) msc.fit() tab = msc.ref_table @@ -1106,7 +1106,7 @@ def test_bootstrap(): outlier_tol = None mag_lim = None ref_mag_lim = None - weights = 'both,var' + trans_weights = 'both,var' mag_trans = False n_boot = 15 @@ -1120,7 +1120,7 @@ def test_bootstrap(): mag_trans=mag_trans, mag_lim=mag_lim, ref_mag_lim=ref_mag_lim, - weights=weights, + trans_weights=trans_weights, default_motion_model='Linear', use_ref_new=False, update_ref_orig=False, @@ -1154,7 +1154,7 @@ def test_bootstrap(): mag_trans=mag_trans, mag_lim=mag_lim, ref_mag_lim=ref_mag_lim, - weights=weights, + trans_weights=trans_weights, default_motion_model='Linear', use_ref_new=False, update_ref_orig=False, @@ -1218,7 +1218,7 @@ def test_calc_vel_in_bootstrap(): outlier_tol = None mag_lim = None ref_mag_lim = None - weights = 'both,var' + trans_weights = 'both,var' mag_trans = False n_boot = 15 @@ -1232,7 +1232,7 @@ def test_calc_vel_in_bootstrap(): mag_trans=mag_trans, mag_lim=mag_lim, ref_mag_lim=ref_mag_lim, - weights=weights, + trans_weights=trans_weights, default_motion_model='Linear', use_ref_new=False, update_ref_orig=False, @@ -1286,7 +1286,7 @@ def test_transform_xym(): outlier_tol = None mag_lim = None ref_mag_lim = None - weights = 'both,var' + trans_weights = 'both,var' n_boot = 15 mag_trans = False @@ -1299,7 +1299,7 @@ def test_transform_xym(): mag_trans=mag_trans, mag_lim=mag_lim, ref_mag_lim=ref_mag_lim, - weights=weights, + trans_weights=trans_weights, default_motion_model='Fixed', use_ref_new=False, update_ref_orig=False, @@ -1334,7 +1334,7 @@ def test_transform_xym(): mag_trans=mag_trans, mag_lim=mag_lim, ref_mag_lim=ref_mag_lim, - weights=weights, + trans_weights=trans_weights, default_motion_model='Fixed', use_ref_new=False, update_ref_orig=False, From bd7ac5ea06e5e7b0fbeed2c0026fdc0016896ee2 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Fri, 12 Sep 2025 18:49:34 -0700 Subject: [PATCH 105/124] debug motion model validation --- flystar/motion_model.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index ebf4c46..66acce6 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -462,7 +462,7 @@ def validate_motion_model_dict(motion_model_dict, startable, default_motion_mode all_motion_model_names.append(default_motion_model) if 'motion_model_input' in startable.columns: all_motion_model_names += np.unique(startable['motion_model_input']).tolist() - if 'motion_model_input' in startable.columns: + if 'motion_model_used' in startable.columns: all_motion_model_names += np.unique(startable['motion_model_used']).tolist() all_motion_model_names = np.unique(all_motion_model_names) From 4c85f80b7e9a74234ac3238bf75970f430709b4f Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 23 Oct 2025 14:32:45 -0700 Subject: [PATCH 106/124] catch up --- flystar/plots.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flystar/plots.py b/flystar/plots.py index be6f0fe..707d6e6 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -2336,7 +2336,7 @@ def plot_chi2_dist_per_filter(tab, Ndetect, motion_model_dict={}, xlim=40, n_bin return -def plot_chi2_dist_per_epoch(tab, Ndetect, motion_model_dict={}, mlim=[14,21], ylim = [-1, 1], target_idx = 0, boot_err=False): +def plot_chi2_dist_per_epoch(tab, Ndetect, mlim=[14,21], ylim = [-1, 1], target_idx = 0, motion_model_dict={}, boot_err=False): """ tab = flystar table Ndetect = Number of epochs star detected in From 010e6b1148d70b560fbba3f64106b3f2982b99fb Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Fri, 24 Oct 2025 08:08:38 -0700 Subject: [PATCH 107/124] decrease memory useage in bootstrap --- flystar/align.py | 82 +++++++++++++++++++++++++++++++----------------- 1 file changed, 53 insertions(+), 29 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 7b00ba0..03f557b 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -1127,15 +1127,15 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot else: idx_good = np.arange(0, len(ref_table), 1) idx_ref = np.where(ref_table['use_in_trans'] == True) - - # Initialize output arrays - x_trans_arr = np.ones((len(ref_table['x']), n_boot, n_epochs)) * -999 - y_trans_arr = np.ones((len(ref_table['x']), n_boot, n_epochs)) * -999 - m_trans_arr = np.ones((len(ref_table['x']), n_boot, n_epochs)) * -999 - xe_trans_arr = np.ones((len(ref_table['x']), n_boot, n_epochs)) * -999 - ye_trans_arr = np.ones((len(ref_table['x']), n_boot, n_epochs)) * -999 - me_trans_arr = np.ones((len(ref_table['x']), n_boot, n_epochs)) * -999 - + + # Initialize sums for output + x_boot_sum = np.zeros((len(ref_table['x']), n_epochs)) + x2_boot_sum = np.zeros((len(ref_table['x']), n_epochs)) + y_boot_sum = np.zeros((len(ref_table['x']), n_epochs)) + y2_boot_sum = np.zeros((len(ref_table['x']), n_epochs)) + m_boot_sum = np.zeros((len(ref_table['x']), n_epochs)) + m2_boot_sum = np.zeros((len(ref_table['x']), n_epochs)) + # Set up motion model parameters motion_model_list = ['Fixed', self.default_motion_model] if 'motion_model_used' in ref_table.keys(): @@ -1144,9 +1144,11 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot motion_model_list += ref_table['motion_model_input'].tolist() motion_col_list = motion_model.get_list_motion_model_param_names(np.unique(motion_model_list).tolist(), with_errors=False, with_fixed=False) if calc_vel_in_bootstrap: - motion_data = {} + motion_boot_sum = {} + motion2_boot_sum = {} for col in motion_col_list: - motion_data[col] = np.ones((len(ref_table['x']), n_boot)) * -999 + motion_boot_sum[col] = np.zeros((len(ref_table['x']))) + motion2_boot_sum[col] = np.zeros((len(ref_table['x']))) ### IF MEMORY PROBLEMS HERE: ### DEFINE MEAN, STD VARIABLES AND BUILD THEM RATHER THAN SAVING FULL ARRAY @@ -1158,6 +1160,15 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot # reference stars. Use a loop for each epoch here, so we # can handle case where different reference stars are used # in different epochs + + # Initialize data arrays + x_trans_arr = np.ones((len(ref_table['x']), n_epochs)) * -999 + y_trans_arr = np.ones((len(ref_table['x']), n_epochs)) * -999 + m_trans_arr = np.ones((len(ref_table['x']), n_epochs)) * -999 + xe_trans_arr = np.ones((len(ref_table['x']), n_epochs)) * -999 + ye_trans_arr = np.ones((len(ref_table['x']), n_epochs)) * -999 + me_trans_arr = np.ones((len(ref_table['x']), n_epochs)) * -999 + for jj in range(n_epochs): # Extract bootstrap sample of matched reference stars good = np.where(~np.isnan(ref_table['x_orig'][idx_ref][:,jj])) @@ -1236,13 +1247,20 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot starlist_T.transform_xy(trans) # Add output to pos arrays - x_trans_arr[:,ii,jj] = starlist_T['x'] - y_trans_arr[:,ii,jj] = starlist_T['y'] - m_trans_arr[:,ii,jj] = starlist_T['m'] - xe_trans_arr[:,ii,jj] = starlist_T['xe'] - ye_trans_arr[:,ii,jj] = starlist_T['ye'] - me_trans_arr[:,ii,jj] = starlist_T['me'] - + x_trans_arr[:,jj] = starlist_T['x'] + y_trans_arr[:,jj] = starlist_T['y'] + m_trans_arr[:,jj] = starlist_T['m'] + xe_trans_arr[:,jj] = starlist_T['xe'] + ye_trans_arr[:,jj] = starlist_T['ye'] + me_trans_arr[:,jj] = starlist_T['me'] + + x_boot_sum += x_trans_arr + x2_boot_sum += x_trans_arr**2 + y_boot_sum += y_trans_arr + y2_boot_sum += y_trans_arr**2 + m_boot_sum += m_trans_arr + m2_boot_sum += m_trans_arr**2 + t2 = time.time() #print('=================================================') #print('Time to do {0} epochs: {1}s'.format(n_epochs, t2-t1)) @@ -1258,12 +1276,12 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot t_boot = t_arr[boot_idx] star_table = StarTable(name=ref_table['name'], - x=x_trans_arr[:,ii,boot_idx], - y=y_trans_arr[:,ii,boot_idx], - m=m_trans_arr[:,ii,boot_idx], - xe=xe_trans_arr[:,ii,boot_idx], - ye=ye_trans_arr[:,ii,boot_idx], - me=me_trans_arr[:,ii,boot_idx], + x=x_trans_arr[:,boot_idx], + y=y_trans_arr[:,boot_idx], + m=m_trans_arr[:,boot_idx], + xe=xe_trans_arr[:,boot_idx], + ye=ye_trans_arr[:,boot_idx], + me=me_trans_arr[:,boot_idx], t=np.tile(t_boot, (len(ref_table),1))) # Now, do proper motion calculation, making sure to fix t0 to the @@ -1278,7 +1296,8 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot # Save proper motion fit results to output arrays for col in motion_col_list: - motion_data[col][:,ii] = star_table[col] + motion_boot_sum[col] += star_table[col] + motion2_boot_sum[col] += star_table[col]**2 # Quick check to make sure bootstrap calc was valid: output t0 should be # same as input t0_arr, since we used fixed_t0 option @@ -1290,15 +1309,20 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot #print('=================================================') # Calculate the bootstrap error values. - x_err_b = np.std(x_trans_arr, ddof=1, axis=1) - y_err_b = np.std(y_trans_arr, ddof=1, axis=1) - m_err_b = np.std(m_trans_arr, ddof=1, axis=1) + x_boot_mean = x_boot_sum/n_boot + x_err_b = np.sqrt((x2_boot_sum - 2*x_boot_mean*x_boot_sum + n_boot*x_boot_mean**2)/n_boot) + y_boot_mean = y_boot_sum/n_boot + y_err_b = np.sqrt((y2_boot_sum - 2*y_boot_mean*y_boot_sum + n_boot*y_boot_mean**2)/n_boot) + m_boot_mean = m_boot_sum/n_boot + m_err_b = np.sqrt((m2_boot_sum - 2*m_boot_mean*m_boot_sum + n_boot*m_boot_mean**2)/n_boot) #pdb.set_trace() motion_data_err = {} if calc_vel_in_bootstrap: for col in motion_col_list: - motion_data_err[col] = np.nanstd(motion_data[col], ddof=1,axis=1) + mot_boot_mean = motion_boot_sum[col]/n_boot + motion_data_err[col] = np.sqrt((motion2_boot_sum[col] - + 2*mot_boot_mean*motion_boot_sum[col] + n_boot*mot_boot_mean**2)/n_boot) else: for col in motion_col_list: motion_data_err[col] = np.nan From 6e50b6c247b44661d65a4a99c3f27af4d117d046 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Fri, 24 Oct 2025 09:15:15 -0700 Subject: [PATCH 108/124] debug bootstrap vel --- flystar/align.py | 11 ++++++++--- flystar/tests/test_align.py | 1 + 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 03f557b..f394879 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -1149,6 +1149,8 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot for col in motion_col_list: motion_boot_sum[col] = np.zeros((len(ref_table['x']))) motion2_boot_sum[col] = np.zeros((len(ref_table['x']))) + motion_boot_min_epochs = np.max([self.motion_model_dict[mod].n_pts_req + for mod in np.unique(motion_model_list)]) ### IF MEMORY PROBLEMS HERE: ### DEFINE MEAN, STD VARIABLES AND BUILD THEM RATHER THAN SAVING FULL ARRAY @@ -1270,9 +1272,10 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot # for each star, if desired. Draw a full-sample bootstrap over the epochs # for each star, and then run it through the startable fit_velocities machinery if calc_vel_in_bootstrap: - # TODO: consider confirming we reach some threshold of unique time values here? - # TODO: Like, grab n_pts needed for the default motion model maybe boot_idx = np.random.choice(np.arange(0, n_epochs, 1), size=n_epochs) + while len(np.unique(boot_idx)) < motion_boot_min_epochs: + boot_idx = np.random.choice(np.arange(0, n_epochs, 1), size=n_epochs) + print(boot_idx) t_boot = t_arr[boot_idx] star_table = StarTable(name=ref_table['name'], @@ -1298,6 +1301,8 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot for col in motion_col_list: motion_boot_sum[col] += star_table[col] motion2_boot_sum[col] += star_table[col]**2 + print(t_boot) + print(star_table[['vx','x0']]) # Quick check to make sure bootstrap calc was valid: output t0 should be # same as input t0_arr, since we used fixed_t0 option @@ -1315,7 +1320,7 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot y_err_b = np.sqrt((y2_boot_sum - 2*y_boot_mean*y_boot_sum + n_boot*y_boot_mean**2)/n_boot) m_boot_mean = m_boot_sum/n_boot m_err_b = np.sqrt((m2_boot_sum - 2*m_boot_mean*m_boot_sum + n_boot*m_boot_mean**2)/n_boot) - #pdb.set_trace() + pdb.set_trace() motion_data_err = {} if calc_vel_in_bootstrap: diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 6a63a58..9b65eb6 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -1141,6 +1141,7 @@ def test_bootstrap(): assert np.sum(np.isnan(match1.ref_table['ye_boot'])) == 0 assert np.sum(np.isnan(match1.ref_table['vx_err_boot'])) == 0 assert np.sum(np.isnan(match1.ref_table['vy_err_boot'])) == 0 + #pdb.set_trace() # Test 2: make sure boot_epochs_min is working # Eliminate some rows to list2, so some stars are only in 1 epoch. From 8d68cbf5a128594e86bd0b485bfec8637575a10f Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Fri, 24 Oct 2025 09:26:02 -0700 Subject: [PATCH 109/124] debug bootstrap vel --- flystar/align.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index f394879..87995e1 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -1260,8 +1260,9 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot x2_boot_sum += x_trans_arr**2 y_boot_sum += y_trans_arr y2_boot_sum += y_trans_arr**2 - m_boot_sum += m_trans_arr - m2_boot_sum += m_trans_arr**2 + if self.mag_trans: + m_boot_sum += m_trans_arr + m2_boot_sum += m_trans_arr**2 t2 = time.time() #print('=================================================') From b28f8a0e6dbe3b4e2292a159e9aa6ff661c877c0 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Fri, 24 Oct 2025 09:44:01 -0700 Subject: [PATCH 110/124] finalize bootstrap changes --- .gitignore | 3 +++ flystar/align.py | 4 ---- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index b56c81e..b291312 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,6 @@ +*.png +*random*.fits +*.DS_Store *.pyc .ipynb_checkpoints/ diff --git a/flystar/align.py b/flystar/align.py index 87995e1..f5f0742 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -1276,7 +1276,6 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot boot_idx = np.random.choice(np.arange(0, n_epochs, 1), size=n_epochs) while len(np.unique(boot_idx)) < motion_boot_min_epochs: boot_idx = np.random.choice(np.arange(0, n_epochs, 1), size=n_epochs) - print(boot_idx) t_boot = t_arr[boot_idx] star_table = StarTable(name=ref_table['name'], @@ -1302,8 +1301,6 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot for col in motion_col_list: motion_boot_sum[col] += star_table[col] motion2_boot_sum[col] += star_table[col]**2 - print(t_boot) - print(star_table[['vx','x0']]) # Quick check to make sure bootstrap calc was valid: output t0 should be # same as input t0_arr, since we used fixed_t0 option @@ -1321,7 +1318,6 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot y_err_b = np.sqrt((y2_boot_sum - 2*y_boot_mean*y_boot_sum + n_boot*y_boot_mean**2)/n_boot) m_boot_mean = m_boot_sum/n_boot m_err_b = np.sqrt((m2_boot_sum - 2*m_boot_mean*m_boot_sum + n_boot*m_boot_mean**2)/n_boot) - pdb.set_trace() motion_data_err = {} if calc_vel_in_bootstrap: From ce82de209494a270b4d5d72255d21aa8ca3a9963 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 3 Nov 2025 17:43:27 -0800 Subject: [PATCH 111/124] minor cleanup --- flystar/align.py | 6 ++++-- flystar/motion_model.py | 11 +++++------ flystar/parallax.py | 3 +++ 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index f5f0742..994a3b1 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -137,10 +137,12 @@ def = None. If not None, then this should contain an array or list of transform Dict of motion model name keys (strings) and corresponding MotionModel object values use_scipy : bool, optional - If True, use scipy.optimize.curve_fit for velocity fitting. If False, use linear algebra fitting, by default True. + If True, use scipy.optimize.curve_fit for velocity fitting. If False, use linear + algebra fitting of posible, by default True. absolute_sigma : bool, optional - If True, the velocity fit will use absolute errors in the data. If False, relative errors will be used, by default False. + If True, the velocity fit will use absolute errors in the data. If False, relative + errors will be used, by default False. save_path : str, optional Path to save the MosaicSelfRef object as a pickle file. diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 66acce6..e24067b 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -430,20 +430,19 @@ def run_fit(self, t, x, y, xe, ye, t0, weighting='var', params_guess=None, t_mjd = Time(t, format='decimalyear', scale='utc').mjd pvec = self.get_parallax_vector(t_mjd) x_wt, y_wt = self.get_weights(xe,ye, weighting=weighting) - def fit_func(t, x0,vx, y0,vy, pi): - use_t = t[:int(len(t)/2)] + def fit_func(use_t, x0,vx, y0,vy, pi): x_res = x0 + vx*(use_t-t0) + pi*pvec[0] y_res = y0 + vy*(use_t-t0) + pi*pvec[1] - return np.append(x_res, y_res) + return np.hstack([x_res, y_res]) # Initial guesses, x0,y0 as x,y averages; # vx,vy as average velocity if first and last points are perfectly measured; # pi for 10 pc disance if params_guess is None: idx_first, idx_last = np.argmin(t), np.argmax(t) params_guess = [x.mean(),(x[idx_last]-x[idx_first])/(t[idx_last]-t[idx_first]), - y.mean(),(y[idx_last]-y[idx_first])/(t[idx_last]-t[idx_first]), 1] - res = curve_fit(fit_func, np.append(t,t), np.append(x,y), - p0=params_guess, sigma = 1.0/np.append(x_wt,y_wt)) + y.mean(),(y[idx_last]-y[idx_first])/(t[idx_last]-t[idx_first]), 0.1] + res = curve_fit(fit_func, t, np.hstack([x,y]), + p0=params_guess, sigma = 1.0/np.hstack([x_wt,y_wt])) x0,vx,y0,vy,pi = res[0] x0_err,vx_err,y0_err,vy_err,pi_err = self.scale_errors(np.sqrt(np.diag(res[1])), weighting=weighting) diff --git a/flystar/parallax.py b/flystar/parallax.py index 27cd632..b4b3a1b 100755 --- a/flystar/parallax.py +++ b/flystar/parallax.py @@ -1,3 +1,6 @@ +# Parallax calculation module for motion models involving parallax +# Adapted from BAGLE's parallax.py + import math import numpy as np From 82585b478d9dd89d8db145a99d7189f357ec3c2d Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 18 Nov 2025 15:04:00 -0800 Subject: [PATCH 112/124] attempt to fix plot_stars_nfilt --- flystar/plots.py | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/flystar/plots.py b/flystar/plots.py index 707d6e6..7553a8d 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -3112,6 +3112,11 @@ def rs(x): x = tab['x0'] y = tab['y0'] r = np.hypot(x, y) + motion_model_dict = motion_model.validate_motion_model_dict(motion_model_dict, tab, None) + i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] + cont_times = np.arange(np.min(tab['t'][i_all_detected]), np.max(tab['t'][i_all_detected]), 0.01) + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], motion_model_dict, allow_alt_models=True) + xt_cont_all, yt_cont_all, xt_cont_err, yt_cont_err = tab.get_star_positions_at_time(cont_times, motion_model_dict, allow_alt_models=True) for i in range(Nstars): for ea, epoch_array in enumerate(epoch_array_list): @@ -3242,9 +3247,9 @@ def rs(x): ind = int((row-1)*Ncols + col) paxes = plt.subplot(Nrows, Ncols, ind) - plt.plot(time, fitLineX, 'b-') - plt.plot(time, fitLineX + fitSigX, 'b--') - plt.plot(time, fitLineX - fitSigX, 'b--') + plt.plot(cont_times, xt_cont_all[ii], 'b-') + plt.plot(cont_times, xt_cont_all[ii] + xt_cont_err[ii], 'b--') + plt.plot(cont_times, xt_cont_all[ii] - xt_cont_err[ii], 'b--') print(np.shape(xerr.reshape(len(xerr),))) if not color_time: plt.errorbar(rs(time), rs(x), yerr=rs(xerr), marker='.', color=color, ls='none') @@ -3275,9 +3280,9 @@ def rs(x): ind = int((row-1)*Ncols + col) paxes = plt.subplot(Nrows, Ncols, ind) - plt.plot(time, fitLineY, 'b-') - plt.plot(time, fitLineY + fitSigY, 'b--') - plt.plot(time, fitLineY - fitSigY, 'b--') + plt.plot(cont_times, yt_cont_all[ii], 'b-') + plt.plot(cont_times, yt_cont_all[ii] + yt_cont_err[ii], 'b--') + plt.plot(cont_times, yt_cont_all[ii] - yt_cont_err[ii], 'b--') if not color_time: plt.errorbar(rs(time), rs(y), yerr=rs(yerr), marker='.', color=color, ls='none') else: @@ -3338,8 +3343,8 @@ def rs(x): paxes = plt.subplot(Nrows, Ncols, ind) plt.plot(time, np.zeros(len(time)), 'b-') - plt.plot(time, fitSigX*1e3, 'b--') - plt.plot(time, -fitSigX*1e3, 'b--') + plt.plot(cont_times, xt_cont_err[ii]*1e3, 'b--') + plt.plot(cont_times, -xt_cont_err[ii]*1e3, 'b--') if not color_time: plt.errorbar(rs(time), rs(x - fitLineX)*1e3, yerr=rs(xerr)*1e3, marker='.', color=color, ls='none') else: @@ -3366,8 +3371,8 @@ def rs(x): paxes = plt.subplot(Nrows, Ncols, ind) plt.plot(time, np.zeros(len(time)), 'b-') - plt.plot(time, fitSigY*1e3, 'b--') - plt.plot(time, -fitSigY*1e3, 'b--') + plt.plot(cont_times, yt_cont_err[ii]*1e3, 'b--') + plt.plot(cont_times, -yt_cont_err[ii]*1e3, 'b--') if not color_time: plt.errorbar(rs(time), rs(y - fitLineY)*1e3, yerr=rs(yerr)*1e3, marker='.', color=color, ls='none') else: From 69af17bda6054274d3813fb6906c36ad931c7901 Mon Sep 17 00:00:00 2001 From: skterry Date: Sat, 22 Nov 2025 01:08:47 -0500 Subject: [PATCH 113/124] update startable_subset() with bootstrap errors --- flystar/analysis.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/flystar/analysis.py b/flystar/analysis.py index 81ab3f4..3121458 100644 --- a/flystar/analysis.py +++ b/flystar/analysis.py @@ -438,7 +438,8 @@ def startable_subset(tab, idx, mag_trans=True, mag_trans_orig=False): combined astrometry + uncombined photometry table. """ # Multiples: ['x', 'y', 'm', 'name_in_list', 'xe', 'ye', 'me', 't', - # 'x_orig', 'y_orig', 'm_orig', 'xe_orig', 'ye_orig', 'me_orig', 'used_in_trans'] + # 'x_orig', 'y_orig', 'm_orig', 'xe_orig', 'ye_orig', 'me_orig', 'used_in_trans', + # 'xe_boot','ye_boot','me_boot'] # Single: ['name', 'm0', 'm0_err', 'use_in_trans', 'ref_orig', 'n_detect', # 'x0', 'vx', 'y0', 'vy', 'x0_err', 'vx_err', 'y0_err', 'vy_err', 't0'] # Don't include n_vfit @@ -446,8 +447,8 @@ def startable_subset(tab, idx, mag_trans=True, mag_trans_orig=False): new_tab = copy.deepcopy(tab) #new_tab.remove_column('n_fit') new_tab.remove_column('n_detect') - for col in ['x','y','m','xe','ye','me','t','x_orig','y_orig','m_orig', - 'xe_orig','ye_orig','me_orig','used_in_trans']: + for col in ['x','y','m','name_in_list','xe','ye','me','t','x_orig','y_orig','m_orig', + 'xe_orig','ye_orig','me_orig','used_in_trans','xe_boot','ye_boot','me_boot']: new_tab[col] = tab[col][:,idx] new_tab.combine_lists('m', weights_col='me', sigma=3, ismag=True) From 2b0bccba67f93e025c38a0f3c49cdc18c7ddbfee Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Thu, 4 Dec 2025 11:56:35 -0800 Subject: [PATCH 114/124] Remove unecessary plx functions and add motion model documentation --- flystar/motion_model.py | 77 +++++++++++------ flystar/parallax.py | 182 ---------------------------------------- 2 files changed, 52 insertions(+), 207 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index e24067b..9ab80b7 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -26,27 +26,47 @@ class MotionModel(ABC): optional_param_names = [] def __init__(self, *args, **kwargs): - # TODO: do we need this? - '''for param in self.fitter_param_names: - param_var = getattr(self, param) - if not isinstance(param_var, (list, np.ndarray)): - setattr(self, param, np.array([param_var]))''' + """ + Make a motion model object. This object defines the fitter and fixed parameters, + and if needed stores metadata such as RA and Dec for Parallax, + for the given motion model and contains functions to fit these values to data + and apply the values to compute expected positions at given times. Each instance + corresponds to a given motion model, not an individual star, and thus the fit + values are only input/returned in functions and not stored in the object. + """ return def get_pos_at_time(self, params, t): + """ + Position calculator for a single star using a given motion model and input + model parameters and times. + """ #return x, y pass def get_batch_pos_at_time(self, t): + """ + Position calculator for a set of stars using a given motion model and input + model parameters and times. + """ #return x, y, x_err, y_err pass def run_fit(self, t, x, y, xe, ye, t0, weighting='var', use_scipy=True, absolute_sigma=True): + """ + Run a single fit of the data to the motion model and return the best parameters. + This function is used by the overall fit_motion_model function once for a basic fit + or several times for a bootstrap fit. + """ # Run a single fit (used both for overall fit + bootstrap iterations) pass def get_weights(self, xe, ye, weighting='var'): + """ + Get the weights for each data point for fitting. Options are 'var' (default) + and 'std'. + """ if weighting=='std': return 1./xe, 1./ye elif weighting=='var': @@ -56,6 +76,9 @@ def get_weights(self, xe, ye, weighting='var'): return 1./xe**2, 1./ye**2 def scale_errors(self, errs, weighting='var'): + """ + Rescale the fit result errors as needed, according to the weighting scheme used. + """ if weighting=='std': return np.array(errs)**2 elif weighting=='var': @@ -70,6 +93,7 @@ def fit_motion_model(self, t, x, y, xe, ye, t0, bootstrap=0, weighting='var', Fit the input positions on the sky and errors to determine new parameters for this motion model (MM). Best-fit parameters will be returned along with uncertainties. + Optionally, bootstrap error estimation can be performed. """ params, param_errs = self.run_fit(t, x, y, xe, ye, t0=t0, weighting=weighting, use_scipy=use_scipy, absolute_sigma=absolute_sigma) @@ -99,8 +123,7 @@ def fit_motion_model(self, t, x, y, xe, ye, t0, bootstrap=0, weighting='var', def get_chi2(self, fit_params, fixed_params, t, x, y, xe, ye, reduced=False): """ - Get the chi^2 value for the current MM and - the input data. + Get the chi^2 value for the input motion model parameters and data. """ x_pred, y_pred = self.get_pos_at_time(fit_params, fixed_params, t) chi2x = np.sum((x-x_pred)**2 / xe**2) @@ -345,8 +368,7 @@ class Parallax(MotionModel): """ Motion model for linear proper motion + parallax - Requires RA, Dec, and PA parameters (degrees) for parallax calculation. - RA, Dec in J2000 + Requires RA & Dec (J2000) for parallax calculation. Optional PA is counterclockwise offset of the image y-axis from North. Optional obs parameter describes observer location, default is 'earth'. """ @@ -450,11 +472,13 @@ def fit_func(use_t, x0,vx, y0,vy, pi): param_errors = [x0_err, vx_err, y0_err, vy_err, pi_err] return params, param_errors -""" -Check that everything is set up properly for motion models to run and their -required metadata. -""" + def validate_motion_model_dict(motion_model_dict, startable, default_motion_model): + """ + Check that everything is set up properly for motion models to run and their + required metadata. + """ + # Collect names of all motion models that might get used. all_motion_model_names = ['Fixed'] if default_motion_model is not None: @@ -478,11 +502,12 @@ def validate_motion_model_dict(motion_model_dict, startable, default_motion_mode return motion_model_dict -""" -Get all the motion model parameters for a given motion_model_name. -Optionally, include fixed and error parameters (included by default). -""" + def get_one_motion_model_param_names(motion_model_name, with_errors=True, with_fixed=True): + """ + Get all the motion model parameters for a given motion_model_name. + Optionally, include fixed and error parameters (included by default). + """ mod = eval(motion_model_name) list_of_parameters = [] list_of_parameters += getattr(mod, 'fitter_param_names') @@ -492,11 +517,12 @@ def get_one_motion_model_param_names(motion_model_name, with_errors=True, with_f list_of_parameters += [par+'_err' for par in getattr(mod, 'fitter_param_names')] return list_of_parameters -""" -Get all the motion model parameters for all models given in motion_model_list. -Optionally, include fixed and error parameters (included by default). -""" + def get_list_motion_model_param_names(motion_model_list, with_errors=True, with_fixed=True): + """ + Get all the motion model parameters for all models given in motion_model_list. + Optionally, include fixed and error parameters (included by default). + """ list_of_parameters = [] all_motion_models = [eval(mm) for mm in np.unique(motion_model_list).tolist()] for aa in range(len(all_motion_models)): @@ -512,11 +538,12 @@ def get_list_motion_model_param_names(motion_model_list, with_errors=True, with_ return np.unique(list_of_parameters).tolist() -""" -Get all the motion model parameters for all models defined in this module. -Optionally, include fixed and error parameters (included by default). -""" + def get_all_motion_model_param_names(with_errors=True, with_fixed=True): + """ + Get all the motion model parameters for all models defined in this module. + Optionally, include fixed and error parameters (included by default). + """ list_of_parameters = [] all_motion_models = MotionModel.__subclasses__() for aa in range(len(all_motion_models)): diff --git a/flystar/parallax.py b/flystar/parallax.py index b4b3a1b..4792ec6 100755 --- a/flystar/parallax.py +++ b/flystar/parallax.py @@ -64,39 +64,6 @@ def parallax_in_direction(RA, Dec, mjd, obsLocation='earth', PA=0): return pvec -def dparallax_dt_in_direction(RA, Dec, mjd, obsLocation='earth'): - """ - R.A. in degrees. (J2000) - Dec. in degrees. (J2000) - MJD - - Equations following MulensModel. - Time derivative --> units are yr^-1 - - """ - # print('parallax_in_direction: len(t) = ', len(mjd)) - # Munge inputs into astropy format. - times = Time(mjd + 2400000.5, format='jd', scale='tdb') - coord = SkyCoord(RA, Dec, unit=(units.deg, units.deg)) - - direction = coord.cartesian.xyz.value - north = np.array([0., 0., 1.]) - _east_projected = np.cross(north, direction) / np.linalg.norm(np.cross(north, direction)) - _north_projected = np.cross(direction, _east_projected) / np.linalg.norm(np.cross(direction, _east_projected)) - - obs_posvel = get_observer_barycentric(obsLocation, times, velocity=True)[1] - sun_posvel = get_body_barycentric_posvel('Sun', times)[1] - sun_obs_vel = sun_posvel - obs_posvel - vel = sun_obs_vel.xyz.T.to(units.au / units.year) - - e = np.dot(vel, _east_projected) - n = np.dot(vel, _north_projected) - - dpvec_dt = np.array([e.value, n.value]).T - - return dpvec_dt - - def get_observer_barycentric(body, times, min_ephem_step=1, velocity=False): """ Get the barycentric position of a satellite or other Solar System body @@ -180,152 +147,3 @@ def get_observer_barycentric(body, times, min_ephem_step=1, velocity=False): return obs_pos -def sun_position(mjd, radians=False): - """ - - NAME: - SUNPOS - - PURPOSE: - To compute the RA and Dec of the Sun at a given date. - - INPUTS: - mjd - The modified Julian date of the day (and time), scalar or vector - - OUTPUTS: - ra: - | The right ascension of the sun at that date in DEGREES - | double precision, same number of elements as jd - dec: - The declination of the sun at that date in DEGREES - elong: - Ecliptic longitude of the sun at that date in DEGREES. - obliquity: - the obliquity of the ecliptic, in DEGREES - - OPTIONAL INPUT KEYWORD: - RADIAN [def=False] - If this keyword is set to True, then all output variables - are given in Radians rather than Degrees - - NOTES: - Patrick Wallace (Rutherford Appleton Laboratory, UK) has tested the - accuracy of a C adaptation of the sunpos.pro code and found the - following results. From 1900-2100 SUNPOS gave 7.3 arcsec maximum - error, 2.6 arcsec RMS. Over the shorter interval 1950-2050 the figures - were 6.4 arcsec max, 2.2 arcsec RMS. - - The returned RA and Dec are in the given date's equinox. - - Procedure was extensively revised in May 1996, and the new calling - sequence is incompatible with the old one. - METHOD: - Uses a truncated version of Newcomb's Sun. Adapted from the IDL - routine SUN_POS by CD Pike, which was adapted from a FORTRAN routine - by B. Emerson (RGO). - EXAMPLE: - (1) Find the apparent RA and Dec of the Sun on May 1, 1982 - - | IDL> jdcnv, 1982, 5, 1,0 ,jd ;Find Julian date jd = 2445090.5 - | IDL> sunpos, jd, ra, dec - | IDL> print,adstring(ra,dec,2) - | 02 31 32.61 +14 54 34.9 - - The Astronomical Almanac gives 02 31 32.58 +14 54 34.9 so the error - in SUNPOS for this case is < 0.5". - - (2) Find the apparent RA and Dec of the Sun for every day in 1997 - - | IDL> jdcnv, 1997,1,1,0, jd ;Julian date on Jan 1, 1997 - | IDL> sunpos, jd+ dindgen(365), ra, dec ;RA and Dec for each day - - MODIFICATION HISTORY: - - * Written by Michael R. Greason, STX, 28 October 1988. - * Accept vector arguments, W. Landsman - April,1989 - * Eliminated negative right ascensions - MRG, Hughes STX, 6 May 1992. - * Rewritten using the 1993 Almanac. Keywords added. MRG, HSTX, 10 February 1994. - * Major rewrite, improved accuracy, always return values in degrees - W. Landsman May, 1996 - * Added /RADIAN keyword; W. Landsman; August, 1997 - * Converted to IDL V5.0; W. Landsman; September 1997 - * Converted to python; J. R. Lu; August 2016 - """ - # form time in Julian centuries from 1900.0 - t_obj = Time(mjd, format='mjd') - t = (t_obj.jd - 2415020.0) / 36525.0 - - # form sun's mean longitude - l = (279.696678 + ((36000.768925 * t) % 360.0)) * 3600.0 - - # allow for ellipticity of the orbit (equation of centre) - # using the Earth's mean anomaly ME - me = 358.475844 + ((35999.049750 * t) % 360.0) - ellcor = (6910.1 - 17.2 * t) * np.sin(np.radians(me)) + 72.3 * np.sin( - np.radians(2.0 * me)) - l = l + ellcor - - # allow for the Venus perturbations using the mean anomaly of Venus MV - mv = 212.603219 + ((58517.803875 * t) % 360.0) - vencorr = 4.8 * np.cos(np.radians(299.1017 + mv - me)) + \ - 5.5 * np.cos(np.radians(148.3133 + 2.0 * mv - 2.0 * me)) + \ - 2.5 * np.cos(np.radians(315.9433 + 2.0 * mv - 3.0 * me)) + \ - 1.6 * np.cos(np.radians(345.2533 + 3.0 * mv - 4.0 * me)) + \ - 1.0 * np.cos(np.radians(318.1500 + 3.0 * mv - 5.0 * me)) - l += vencorr - - # Allow for the Mars perturbations using the mean anomaly of Mars MM - mm = 319.529425 + ((19139.858500 * t) % 360.0) - marscorr = 2.0 * np.cos(np.radians(343.8883 - 2.0 * mm + 2.0 * me)) + \ - 1.8 * np.cos(np.radians(200.4017 - 2.0 * mm + me)) - l += marscorr - - # Allow for the Jupiter perturbations using the mean anomaly of Jupiter MJ - mj = 225.328328 + ((3034.6920239 * t) % 360.0) - jupcorr = 7.2 * np.cos(np.radians(179.5317 - mj + me)) + \ - 2.6 * np.cos(np.radians(263.2167 - mj)) + \ - 2.7 * np.cos(np.radians(87.1450 - 2.0 * mj + 2.0 * me)) + \ - 1.6 * np.cos(np.radians(109.4933 - 2.0 * mj + me)) - l += jupcorr - - # Allow for the Moons perturbations using the mean elongation of - # the Moon from the Sun D - d = 350.7376814 + ((445267.11422 * t) % 360.0) - mooncorr = 6.5 * np.sin(np.radians(d)) - l += mooncorr - - # Allow for long period terms - longterm = + 6.4 * np.sin(np.radians(231.19 + 20.20 * t)) - l += longterm - l = (l + 2592000.0) % 1296000.0 - longmed = l / 3600.0 - - # Allow for Aberration - l -= 20.5 - - # Allow for Nutation using the longitude of the Moons mean node OMEGA - omega = 259.183275 - ((1934.142008 * t) % 360.0) - l -= 17.2 * np.sin(np.radians(omega)) - - # Form the True Obliquity - oblt = 23.452294 - 0.0130125 * t + ( - 9.2 * np.cos(np.radians(omega))) / 3600.0 - - # Form Right Ascension and Declination - l = l / 3600.0 - l_rad = np.radians(l) - oblt_rad = np.radians(oblt) - ra = np.arctan2(np.sin(l_rad) * np.cos(oblt_rad), np.cos(l_rad)) - - if (len(ra) > 1): - neg = np.where(ra < 0.0)[0] - ra[neg] = ra[neg] + 2.0 * math.pi - - dec = np.arcsin(np.sin(l_rad) * np.sin(oblt_rad)) - - if radians: - oblt = oblt_rad - longmed = np.radians(longmed) - else: - ra = np.degrees(ra) - dec = np.degrees(dec) - - return ra, dec, longmed, oblt From 9aa4da73c0994f64f620cce515da38db6946f3d0 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Tue, 9 Dec 2025 14:36:33 -0800 Subject: [PATCH 115/124] missing tab fix --- flystar/motion_model.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/flystar/motion_model.py b/flystar/motion_model.py index 9ab80b7..0b86d07 100644 --- a/flystar/motion_model.py +++ b/flystar/motion_model.py @@ -26,14 +26,14 @@ class MotionModel(ABC): optional_param_names = [] def __init__(self, *args, **kwargs): - """ - Make a motion model object. This object defines the fitter and fixed parameters, - and if needed stores metadata such as RA and Dec for Parallax, - for the given motion model and contains functions to fit these values to data - and apply the values to compute expected positions at given times. Each instance - corresponds to a given motion model, not an individual star, and thus the fit - values are only input/returned in functions and not stored in the object. - """ + """ + Make a motion model object. This object defines the fitter and fixed parameters, + and if needed stores metadata such as RA and Dec for Parallax, + for the given motion model and contains functions to fit these values to data + and apply the values to compute expected positions at given times. Each instance + corresponds to a given motion model, not an individual star, and thus the fit + values are only input/returned in functions and not stored in the object. + """ return def get_pos_at_time(self, params, t): From 6de890b85ae0870668d49708330e9a266072d841 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 15 Dec 2025 17:28:05 -0800 Subject: [PATCH 116/124] test debugging --- flystar/startables.py | 15 +++++++++------ flystar/tests/test_align.py | 14 +++++++------- 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/flystar/startables.py b/flystar/startables.py index a0bf3e3..c12976e 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -129,7 +129,7 @@ def __init__(self, *args, ref_list=0, **kwargs): # We have to have special handling of meta-data (i.e. info that has # dimensions of n_lists). - meta_tab = ('LIST_TIMES', 'LIST_NAMES') + meta_tab = ('list_times', 'list_names') meta_type = ((float, int), str) for mm in range(len(meta_tab)): meta_test = meta_tab[mm] @@ -156,6 +156,9 @@ def __init__(self, *args, ref_list=0, **kwargs): if meta_arg in kwargs: self.meta[meta_arg] = kwargs[meta_arg] del kwargs[meta_arg] + elif meta_arg.upper() in kwargs: + self.meta[meta_arg] = kwargs[meta_arg.upper()] + del kwargs[meta_arg] for arg in kwargs: if arg in ['name', 'x', 'y', 'm']: @@ -568,8 +571,8 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b if weighting not in ['var', 'std']: raise ValueError(f"fit_velocities: Weighting must either be 'var' or 'std', not {weighting}!") - if ('t' not in self.colnames) and ('LIST_TIMES' not in self.meta): - raise KeyError("fit_velocities: Failed to access time values. No 't' column in table, no 'LIST_TIMES' in meta.") + if ('t' not in self.colnames) and ('list_times' not in self.meta): + raise KeyError("fit_velocities: Failed to access time values. No 't' column in table, no 'list_times' in meta.") # Check if we have the required columns if not all([_ in self.colnames for _ in ['x', 'y']]): @@ -624,7 +627,7 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b if 't' in self.colnames: self['t0'] = self['t'] else: - self['t0'] = self.meta['LIST_TIMES'][0] + self['t0'] = self.meta['list_times'][0] if 'xe' in self.colnames: self['x0_err'] = self['xe'] self['y0_err'] = self['ye'] @@ -639,7 +642,7 @@ def fit_velocities(self, weighting='var', use_scipy=True, absolute_sigma=True, b if 't' in self.colnames: self['t0'] = self['t'][:, 0] else: - self['t0'] = self.meta['LIST_TIMES'][0] + self['t0'] = self.meta['list_times'][0] if 'xe' in self.colnames: self['x0_err'] = self['xe'][:,0] self['y0_err'] = self['ye'][:,0] @@ -756,7 +759,7 @@ def fit_velocity_for_star(self, ss, motion_model_dict, weighting='var', use_scip if 't' in self.colnames: t = np.ma.masked_invalid(self['t'][ss, :].data) else: - t = np.ma.masked_invalid(self.meta['LIST_TIMES']) + t = np.ma.masked_invalid(self.meta['list_times']) if mask_val: t = np.ma.masked_values(t, mask_val) diff --git a/flystar/tests/test_align.py b/flystar/tests/test_align.py index 9b65eb6..2d6b0dc 100644 --- a/flystar/tests/test_align.py +++ b/flystar/tests/test_align.py @@ -326,8 +326,8 @@ def test_MosaicToRef_p0_vel(): # The velocities should be almost the same (but not as close as before) # as the input velocities since update_ref == True. assert (msc.ref_table['name']==ref_list['name']).all() - np.testing.assert_allclose(msc.ref_table['vx'], ref_list['vx'], rtol=1e-1) - np.testing.assert_allclose(msc.ref_table['vy'], ref_list['vy'], rtol=1e-1) + assert np.max(np.abs(msc.ref_table['vx']-ref_list['vx']))<3e-4 + assert np.max(np.abs(msc.ref_table['vy']-ref_list['vy']))<3e-4 # Also double check that they aren't exactly the same for the reference stars. #assert np.any(np.not_equal(msc.ref_table['vx'], ref_list['vx'])) @@ -392,8 +392,8 @@ def test_MosaicToRef_vel(): # The velocities should be almost the same (but not as close as before) # as the input velocities since update_ref == True. assert (msc.ref_table['name']==ref_list['name']).all() - np.testing.assert_allclose(msc.ref_table['vx'], ref_list['vx'], rtol=1e-1) - np.testing.assert_allclose(msc.ref_table['vy'], ref_list['vy'], rtol=1e-1) + np.testing.assert_allclose(msc.ref_table['vx'], ref_list['vx'], rtol=1e-1, atol=3e-4) + np.testing.assert_allclose(msc.ref_table['vy'], ref_list['vy'], rtol=1e-1, atol=3e-4) # Also double check that they aren't exactly the same for the reference stars. #assert np.any(np.not_equal(msc.ref_table['vx'], ref_list['vx'])) @@ -476,11 +476,11 @@ def test_MosaicToRef_acc(): if ~np.isnan(msc.ref_table['ax'][ix_fit]): i_orig.append(i) i_fit.append(ix_fit) - np.testing.assert_allclose(msc.ref_table['ax'][i_fit], ref_list['ax'][i_orig], rtol=1e-1) - np.testing.assert_allclose(msc.ref_table['ay'][i_fit], ref_list['ay'][i_orig], rtol=1e-1) + np.testing.assert_allclose(msc.ref_table['ax'][i_fit], ref_list['ax'][i_orig], rtol=1e-1, atol=3e-4) + np.testing.assert_allclose(msc.ref_table['ay'][i_fit], ref_list['ay'][i_orig], rtol=1e-1, atol=3e-4) # Also double check that they aren't exactly the same for the reference stars. - assert np.any(np.not_equal(msc.ref_table['ax'], ref_list['ax'])) + assert np.any(np.not_equal(msc.ref_table['ax'][:200], ref_list['ax'][:200])) return msc From 141be48ffefc4fc27640bc487daa12ff505a0502 Mon Sep 17 00:00:00 2001 From: Matt Hosek Date: Thu, 8 Jan 2026 14:27:08 -0800 Subject: [PATCH 117/124] calc_bootstrap_errors ref star selection bugfix, plus removing unnecessary loop --- flystar/align.py | 58 ++++++++++++++++++++++++++---------------------- 1 file changed, 32 insertions(+), 26 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 994a3b1..5d067fe 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -1128,7 +1128,8 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot t0_arr = t0_arr[idx_good] else: idx_good = np.arange(0, len(ref_table), 1) - idx_ref = np.where(ref_table['use_in_trans'] == True) + + #idx_ref = np.where(ref_table['use_in_trans'] == True) # Initialize sums for output x_boot_sum = np.zeros((len(ref_table['x']), n_epochs)) @@ -1174,40 +1175,45 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot me_trans_arr = np.ones((len(ref_table['x']), n_epochs)) * -999 for jj in range(n_epochs): - # Extract bootstrap sample of matched reference stars - good = np.where(~np.isnan(ref_table['x_orig'][idx_ref][:,jj])) + # Extract bootstrap sample of matched reference stars for this epoch + #good = np.where(~np.isnan(ref_table['x_orig'][idx_ref][:,jj])) + good = np.where(ref_table['used_in_trans'][:,jj] == True) samp_idx = np.random.choice(good[0], len(good[0]), replace=True) # Get reference star positions in particular epoch from ref_list. t_epoch = t_arr[jj] ref_orig = self.get_ref_list_from_table(t_epoch) - # Get idx of reference stars in bootstrap sample in the ref_orig. - # Then, use these to build reference starlist for the alignment - idx_tmp = [] - for ff in range(len(samp_idx)): - name_tmp = ref_table['name'][idx_ref][samp_idx[ff]] - foo = np.where(ref_orig['name'] == name_tmp)[0][0] - idx_tmp.append(foo) - - ref_boot = StarList(name=ref_orig['name'][idx_tmp], - x=ref_orig['x'][idx_tmp], - y=ref_orig['y'][idx_tmp], - m=ref_orig['m'][idx_tmp], - xe=ref_orig['xe'][idx_tmp], - ye=ref_orig['ye'][idx_tmp], - me=ref_orig['me'][idx_tmp]) + ## Get idx of reference stars in bootstrap sample in the ref_orig. + ## Then, use these to build reference starlist for the alignment + #idx_tmp = [] + #for ff in range(len(samp_idx)): + # name_tmp = ref_table['name'][idx_ref][samp_idx[ff]] + # foo = np.where(ref_orig['name'] == name_tmp)[0][0] + # idx_tmp.append(foo) + + ref_boot = StarList(name=ref_orig['name'][samp_idx], + x=ref_orig['x'][samp_idx], + y=ref_orig['y'][samp_idx], + m=ref_orig['m'][samp_idx], + xe=ref_orig['xe'][samp_idx], + ye=ref_orig['ye'][samp_idx], + me=ref_orig['me'][samp_idx]) # Now build star list with original positions of the reference stars # in the bootstrap sample - starlist_boot = StarList(name=ref_table['name'][idx_ref][samp_idx], - x=ref_table['x_orig'][:,jj][idx_ref][samp_idx], - y=ref_table['y_orig'][:,jj][idx_ref][samp_idx], - m=ref_table['m_orig'][:,jj][idx_ref][samp_idx], - xe=ref_table['xe_orig'][:,jj][idx_ref][samp_idx], - ye=ref_table['ye_orig'][:,jj][idx_ref][samp_idx], - me=ref_table['me_orig'][:,jj][idx_ref][samp_idx]) - + starlist_boot = StarList(name=ref_table['name'][samp_idx], + x=ref_table['x_orig'][:,jj][samp_idx], + y=ref_table['y_orig'][:,jj][samp_idx], + m=ref_table['m_orig'][:,jj][samp_idx], + xe=ref_table['xe_orig'][:,jj][samp_idx], + ye=ref_table['ye_orig'][:,jj][samp_idx], + me=ref_table['me_orig'][:,jj][samp_idx]) + + # Sanity check: makes sure names match between ref_boot and starlist_boot, + # since they need to line up + assert np.all(ref_boot['name'] == starlist_boot['name']) + # Calculate weights based on weights keyword. If weights desired, will need to # make starlist objects for this if self.trans_weights != None: From a34161da7e33827ce77bc02ce93391284e3e27e9 Mon Sep 17 00:00:00 2001 From: Matt Hosek Date: Thu, 8 Jan 2026 14:55:25 -0800 Subject: [PATCH 118/124] reintroducing requirement that ref star actually be matched in epoch --- flystar/align.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flystar/align.py b/flystar/align.py index 5d067fe..c62a2a0 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -1177,7 +1177,7 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot for jj in range(n_epochs): # Extract bootstrap sample of matched reference stars for this epoch #good = np.where(~np.isnan(ref_table['x_orig'][idx_ref][:,jj])) - good = np.where(ref_table['used_in_trans'][:,jj] == True) + good = np.where( (ref_table['used_in_trans'][:,jj] == True) & (~np.isnan(ref_table['x_orig'][:,jj])) ) samp_idx = np.random.choice(good[0], len(good[0]), replace=True) # Get reference star positions in particular epoch from ref_list. From 066309299b2e517e67b3c2c4f6854811f672b3c7 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Fri, 9 Jan 2026 10:43:52 -0800 Subject: [PATCH 119/124] minor debugs and new helper functions --- flystar/align.py | 2 + flystar/plots.py | 92 +++++++++++++++++++++++++++++++++++++++++-- flystar/startables.py | 35 ++++++++++++++++ 3 files changed, 125 insertions(+), 4 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 994a3b1..b87f44d 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -1288,6 +1288,8 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot ye=ye_trans_arr[:,boot_idx], me=me_trans_arr[:,boot_idx], t=np.tile(t_boot, (len(ref_table),1))) + if 'motion_model_used' in ref_table.columns: + star_table['motion_model_input'] = ref_table['motion_model_used'] # Now, do proper motion calculation, making sure to fix t0 to the # orig value (so we can get a reasonable error on x0, y0) diff --git a/flystar/plots.py b/flystar/plots.py index 7553a8d..d077571 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -2212,7 +2212,12 @@ def plot_chi2_dist(tab, Ndetect, motion_model_dict={}, xlim=40, n_bins=50, boot_ # Fitting position and velocity... so subtract 2 to get Ndof n_params = np.nanmean(tab['n_params'][idx]) Ndof = Ndetect - n_params - print(f"Ndof={Ndof}, Ndetect={Ndetect}, Nparams={n_params}") + if len(np.unique(tab['n_params'][idx]))>1: + print("** Warning: using average Ndof for multiple motion models. **") + print("** Consider using plot_chi2_reduced_dist. **") + print(f"Ndof={Ndof:.2f}, Ndetect={Ndetect}, Nparams={n_params:.2f}") + else: + print(f"Ndof={Ndof}, Ndetect={Ndetect}, Nparams={n_params}") chi2_xaxis = np.linspace(0, xlim, xlim*3) chi2_bins = np.linspace(0, xlim, n_bins) @@ -2221,8 +2226,8 @@ def plot_chi2_dist(tab, Ndetect, motion_model_dict={}, xlim=40, n_bins=50, boot_ plt.hist(x[idx], bins=chi2_bins, histtype='step', label='X', density=True) plt.hist(y[idx], bins=chi2_bins, histtype='step', label='Y', density=True) plt.plot(chi2_xaxis, chi2.pdf(chi2_xaxis, Ndof), 'r-', alpha=0.6, - label='$\chi^2$ ' + str(Ndof) + ' dof') - plt.title('$N_{epoch} = $' + str(Ndetect) + ', $N_{dof} = $' + str(Ndof)) + label='$\chi^2$ ' + str(round(Ndof,2)) + ' dof') + plt.title('$N_{epoch} = $' + str(Ndetect) + ', $N_{dof} = $' + str(round(Ndof,2))) plt.xlim(0, xlim) plt.legend() @@ -2244,6 +2249,85 @@ def plot_chi2_dist(tab, Ndetect, motion_model_dict={}, xlim=40, n_bins=50, boot_ return +def plot_chi2_reduced_dist(tab, Ndetect, motion_model_dict={}, xlim=8, n_bins=50, boot_err=False): + """ + tab = flystar table + Ndetect = Number of epochs star detected in + """ + chi2_x_list = [] + chi2_y_list = [] + fnd_list = [] # Number of non-NaN error measurements + + motion_model_dict = motion_model.validate_motion_model_dict(motion_model_dict, tab, None) + i_all_detected = np.where(~np.any(np.isnan(tab['t']),axis=1))[0][0] + xt_mod_all, yt_mod_all, xt_mod_err, yt_mod_err = tab.get_star_positions_at_time(tab['t'][i_all_detected], motion_model_dict, allow_alt_models=True) + + for ii in range(len(tab)): + # Ignore the NaNs + fnd = np.argwhere(~np.isnan(tab['xe'][ii,:])) + fnd_list.append(len(fnd)) + + x = tab['x'][ii, fnd] + y = tab['y'][ii, fnd] + if boot_err: + xerr = np.hypot(tab['xe_boot'][ii, fnd], tab['xe'][ii, fnd]) + yerr = np.hypot(tab['ye_boot'][ii, fnd], tab['ye'][ii, fnd]) + else: + xerr = tab['xe'][ii, fnd] + yerr = tab['ye'][ii, fnd] + + fitLineX = xt_mod_all[ii, fnd] + fitLineY = yt_mod_all[ii,fnd] + + diffX = x - fitLineX + diffY = y - fitLineY + sigX = diffX / xerr + sigY = diffY / yerr + + chi2_x = np.sum(sigX**2) + chi2_y = np.sum(sigY**2) + chi2_x_list.append(chi2_x) + chi2_y_list.append(chi2_y) + + x = np.array(chi2_x_list) + y = np.array(chi2_y_list) + fnd = np.array(fnd_list) + + idx = np.where(fnd == Ndetect)[0] + n_params = tab['n_params'] + Ndof = Ndetect - n_params + print("Reduced chi2 for Ndetect="+str(Ndetect)) + chi2_bins = np.linspace(0, xlim, n_bins) + + plt.figure(figsize=(6,4)) + plt.clf() + plt.hist(x[idx]/Ndof[idx], bins=chi2_bins, histtype='step', label='X', density=True, color='tab:blue') + plt.hist(y[idx]/Ndof[idx], bins=chi2_bins, histtype='step', label='Y', density=True, color='tab:orange') + plt.axvline(np.median(x[idx]/Ndof[idx]), color='tab:blue', linestyle='--', label='X median') + plt.axvline(np.median(y[idx]/Ndof[idx]), color='tab:orange', linestyle='--', label='Y median') + plt.title('Reduced chi2, $N_{epoch} = $' + str(Ndetect)) + plt.xlim(0, xlim) + plt.legend() + + chi2red_x = x / Ndof + chi2red_y = y / Ndof + chi2red_t = (x + y) / (2.0 * Ndof + 1*(tab['motion_model_used']=='Parallax')) + + print('Mean reduced chi^2: (Ndetect = {0:d} of {1:d})'.format(len(idx), len(tab))) + fmt = ' {0:s} = {1:.1f} for N_detect and {2:.1f} for all' + med_chi2red_x_f = np.median(chi2red_x[idx]) + med_chi2red_x_a = np.median(chi2red_x) + med_chi2red_y_f = np.median(chi2red_y[idx]) + med_chi2red_y_a = np.median(chi2red_y) + med_chi2red_t_f = np.median(chi2red_t[idx]) + med_chi2red_t_a = np.median(chi2red_t) + print(fmt.format(' X', med_chi2red_x_f, med_chi2red_x_a)) + print(fmt.format(' Y', med_chi2red_y_f, med_chi2red_y_a)) + print(fmt.format('Tot', med_chi2red_t_f, med_chi2red_t_a)) + + return + + def plot_chi2_dist_per_filter(tab, Ndetect, motion_model_dict={}, xlim=40, n_bins=50, filter=None, boot_err=False): """ tab = flystar table @@ -2756,7 +2840,7 @@ def rs(x): chi2_y = np.sum(sigY**2) chi2_m = np.sum(sigM**2) - dof = len(x) - 2 + dof = int(tab['n_fit'][ii]-tab['n_params'][ii]) dofM = len(m) - 1 chi2_red_x = chi2_x / dof diff --git a/flystar/startables.py b/flystar/startables.py index a0bf3e3..767799a 100644 --- a/flystar/startables.py +++ b/flystar/startables.py @@ -1086,3 +1086,38 @@ def shift_reference_frame(self, delta_vx=0.0, delta_vy=0.0, delta_pi=0.0, self['x'] += delta_pi*pvec[0] self['y'] += delta_pi*pvec[1] return + +def shift_reference_frame(table, delta_vx=0.0, delta_vy=0.0, delta_pi=0.0, + motion_model_dict={}): + """ + After completing an alignment, shift from your relative reference frame to + the absolute frame using either Gaia or a Galactic model. This modified the + motion model fit parameters as well as the time series astrometry, assuming + zero error on the shift values. + + Parameters + ---------- + delta_vx : float, optional + velocity shift in x-direction (as/yr) + delta_vy : float, optional + velocity shift in y-direction (as/yr) + delta_pi : float, optional + parallax shift (as) + """ + motion_model_dict = motion_model.validate_motion_model_dict(motion_model_dict, table, None) + if delta_vx==0.0 and delta_vy==0.0 and delta_pi==0.0: + print("No shifts input, reference frame unchanged.") + print("Specify delta_vx, delta_vy, and/or delta_pi to perform a reference frame shift.") + return + table['vx'] += delta_vx + table['x'] += delta_vx*(table['t']-table['t0'][:, np.newaxis]) + table['vy'] += delta_vy + table['y'] += delta_vy*(table['t']-table['t0'][:, np.newaxis]) + if delta_pi!=0.0: + t_all = table['t'][np.where(~np.any(np.isnan(table['t']), axis=1))[0][0]] + t_mjd = Time(t_all, format='decimalyear', scale='utc').mjd + pvec = motion_model_dict['Parallax'].get_parallax_vector(t_mjd) + table['pi'] += delta_pi + table['x'] += delta_pi*pvec[0] + table['y'] += delta_pi*pvec[1] + return table From 4a7e77c9a56667083d1bee700836d9e7836aeb20 Mon Sep 17 00:00:00 2001 From: Matt Hosek Date: Fri, 9 Jan 2026 12:07:46 -0800 Subject: [PATCH 120/124] commenting out --doctest-rst which crashes testing --- setup.cfg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.cfg b/setup.cfg index 0bf235e..d851345 100644 --- a/setup.cfg +++ b/setup.cfg @@ -37,7 +37,7 @@ testpaths = "flystar" "docs" astropy_header = true doctest_plus = enabled text_file_format = rst -addopts = --doctest-rst +#addopts = --doctest-rst [coverage:run] omit = From 5368750a4d57340707f3e8419cf573d801d459fd Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 12 Jan 2026 12:26:13 -0800 Subject: [PATCH 121/124] plotting fixes for multiple motion models --- flystar/plots.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/flystar/plots.py b/flystar/plots.py index d077571..2d65b2c 100755 --- a/flystar/plots.py +++ b/flystar/plots.py @@ -2301,10 +2301,10 @@ def plot_chi2_reduced_dist(tab, Ndetect, motion_model_dict={}, xlim=8, n_bins=50 plt.figure(figsize=(6,4)) plt.clf() - plt.hist(x[idx]/Ndof[idx], bins=chi2_bins, histtype='step', label='X', density=True, color='tab:blue') - plt.hist(y[idx]/Ndof[idx], bins=chi2_bins, histtype='step', label='Y', density=True, color='tab:orange') - plt.axvline(np.median(x[idx]/Ndof[idx]), color='tab:blue', linestyle='--', label='X median') - plt.axvline(np.median(y[idx]/Ndof[idx]), color='tab:orange', linestyle='--', label='Y median') + plt.hist(x[idx]/Ndof[idx], bins=chi2_bins, histtype='step', label='X', density=True) + plt.hist(y[idx]/Ndof[idx], bins=chi2_bins, histtype='step', label='Y', density=True) + plt.axvline(np.median(x[idx]/Ndof[idx]), color='C0', linestyle='--', label='X median') + plt.axvline(np.median(y[idx]/Ndof[idx]), color='C1', linestyle='--', label='Y median') plt.title('Reduced chi2, $N_{epoch} = $' + str(Ndetect)) plt.xlim(0, xlim) plt.legend() @@ -2840,7 +2840,7 @@ def rs(x): chi2_y = np.sum(sigY**2) chi2_m = np.sum(sigM**2) - dof = int(tab['n_fit'][ii]-tab['n_params'][ii]) + dof = (len(tab['x'][ii])-tab['n_params'][ii]).astype(int) dofM = len(m) - 1 chi2_red_x = chi2_x / dof @@ -3624,6 +3624,7 @@ def plot_plxs(star_tab, target_idx=0): ax[1].set_ylabel('N stars') ax[1].set_xlabel('Plx/Plx_err') plt.tight_layout() + ax[0].set_ylim(-5,5) def plot_sky(stars_tab, plot_errors=False, center_star=None, range=0.4, From 91eec87662ca460c037d0bfd28e3ca11835bcc2b Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 12 Jan 2026 14:02:00 -0800 Subject: [PATCH 122/124] debug bootstrap indexing --- flystar/align.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index a2e6c56..a0fff82 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -973,7 +973,7 @@ def match_lists(self, dr_tol, dm_tol): return - def get_ref_list_from_table(self, epoch): + def get_ref_list_from_table(self, epoch, select_idxs=None): """ Convert the averaged quantites in self.ref_table into a StarList object appropriate for the specified epoch. @@ -1030,6 +1030,9 @@ def get_ref_list_from_table(self, epoch): if me is not None: ref_list['me'] = me + if select_idxs is not None: + ref_list = ref_list[select_idxs] + return ref_list def reset_ref_values(self, exclude=None): @@ -1182,7 +1185,7 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot # Get reference star positions in particular epoch from ref_list. t_epoch = t_arr[jj] - ref_orig = self.get_ref_list_from_table(t_epoch) + ref_orig = self.get_ref_list_from_table(t_epoch, select_idxs=idx_good) ## Get idx of reference stars in bootstrap sample in the ref_orig. ## Then, use these to build reference starlist for the alignment From c8ac551a732365aab07832351638580516a9341a Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Mon, 12 Jan 2026 14:09:33 -0800 Subject: [PATCH 123/124] simplify bug fix --- flystar/align.py | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index a0fff82..7e4e82f 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -973,7 +973,7 @@ def match_lists(self, dr_tol, dm_tol): return - def get_ref_list_from_table(self, epoch, select_idxs=None): + def get_ref_list_from_table(self, epoch): """ Convert the averaged quantites in self.ref_table into a StarList object appropriate for the specified epoch. @@ -1030,9 +1030,6 @@ def get_ref_list_from_table(self, epoch, select_idxs=None): if me is not None: ref_list['me'] = me - if select_idxs is not None: - ref_list = ref_list[select_idxs] - return ref_list def reset_ref_values(self, exclude=None): @@ -1185,7 +1182,7 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot # Get reference star positions in particular epoch from ref_list. t_epoch = t_arr[jj] - ref_orig = self.get_ref_list_from_table(t_epoch, select_idxs=idx_good) + ref_orig = self.get_ref_list_from_table(t_epoch)[idx_good] ## Get idx of reference stars in bootstrap sample in the ref_orig. ## Then, use these to build reference starlist for the alignment From 93afbb675358843b049be8f25e69a4510ef5fc13 Mon Sep 17 00:00:00 2001 From: Macy Huston Date: Wed, 14 Jan 2026 16:21:45 -0800 Subject: [PATCH 124/124] allow bootstrap to optionally update positional errors --- flystar/align.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/flystar/align.py b/flystar/align.py index 7e4e82f..db37954 100755 --- a/flystar/align.py +++ b/flystar/align.py @@ -1050,7 +1050,7 @@ def reset_ref_values(self, exclude=None): return - def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_bootstrap=True, weighting='var', use_scipy=True, absolute_sigma=False, show_progress=True): + def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_bootstrap=True, weighting='var', use_scipy=True, absolute_sigma=False, show_progress=True, update_errors=False): """ Function to calculate bootstrap errors for the transformations as well as the proper motions. For each iteration, this will: @@ -1098,10 +1098,12 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot absolute_sigma: boolean If True, use the absolute sigma in the velocity fitting. If False, use the relative sigma, by default False. + update_errors: boolean + If True, save the starlist errors as xe_list, bootstrap errors as xe_boot, and their quad sum as xe (and likewise for ye and me). If False (default), leave the starlist errors in place as xe and bootstrap errors as xe_boot. Output: ------ - Seven new columns will be added to self.ref_table: + New columns will be added to self.ref_table: 'xe_boot', 2D column: bootstrap x pos uncertainties due to transformation for each epoch 'ye_boot', 2D column: bootstrap y pos uncertainties due to transformation for each epoch 'me_boot', 2D column: bootstrap mag uncertainties due to transformation for each epoch @@ -1382,6 +1384,17 @@ def calc_bootstrap_errors(self, n_boot=100, boot_epochs_min=-1, calc_vel_in_boot print('Done with bootstrap') print('===============================') + if update_errors: + self.ref_table['xe_list'] = self.ref_table['xe'] + self.ref_table['ye_list'] = self.ref_table['ye'] + self.ref_table['me_list'] = self.ref_table['me'] + self.ref_table['xe'] = np.hypot(self.ref_table['xe_list'], self.ref_table['xe_boot']) + self.ref_table['ye'] = np.hypot(self.ref_table['ye_list'], self.ref_table['ye_boot']) + self.ref_table['me'] = np.hypot(self.ref_table['me_list'], self.ref_table['me_boot']) + print("Saved starlist errors to xe_list and added xe_boot to xe in quadrature.") + print("The same was done for ye and me.") + + return